paradiseo/eo/tutorial/Templates/eoMyStruct.tmpl
evomarc 7bbdd17307 Added many template files, and totally modified the comments in most other.
This was when preparing Evonet Summer School - though it finally was not used there!
2001-09-04 08:35:22 +00:00

78 lines
1.9 KiB
C++

/** -*- mode: c++; c-indent-level: 4; c++-member-init-indent: 8; comment-column: 35; -*-
The above line is usefulin Emacs-like editors
*/
/*
Template for creating a new representation in EO
================================================
*/
#ifndef _eoMyStruct_h
#define _eoMyStruct_h
/**
* Always write a comment in this format before class definition
* if you want the class to be documented by Doxygen
* Note that you MUST derive your structure from EO<fitT>
* but you MAY use some other already prepared class in the hierarchy
* like eoVector for instance, if you handle a vector of something....
* If you create a structure from scratch,
* the only thing you need to provide are
* a default constructor
* IO routines printOn and readFrom
*
* Note that operator<< and operator>> are defined at EO level
* using these routines
*/
template< class FitT>
class eoMyStruct: public EO<FitT> {
public:
/** Ctor: you MUST provide a default ctor.
* though such individuals will generally be processed
* by some eoInit object
*/
eoMyStruct()
{
// START Code of default Ctor of an eoMyStruct object
// END Code of default Ctor of an eoMyStruct object
}
/** printing... */
void printOn(ostream& os) const
{
// START Code of default output
/** HINTS
* in EO we systematically write the sizes of things before the things
* so readFrom is easier to code (see below)
*/
// END Code of default output
}
/** reading...
* of course, your readFrom must be able to read what printOn writes!!!
*/
void readFrom(istream& is)
{
// START Code of input
/** HINTS
* remember the eoMyStruct object will come from the default ctor
* this is why having the sizes written out is useful
*/
// END Code of input
}
private: // put all data here
// START Private data of an eoMyStruct object
// END Private data of an eoMyStruct object
};
#endif