diff --git a/eo/src/do/make_algo_easea.h b/eo/src/do/make_algo_easea.h index 84818e6c4..a6522ef9f 100644 --- a/eo/src/do/make_algo_easea.h +++ b/eo/src/do/make_algo_easea.h @@ -68,8 +68,10 @@ * * This is why the template is the complete EOT even though only the fitness * is actually templatized here + * + * + * @ingroup Builders */ - template eoAlgo & do_make_algo_scalar(eoParser& _parser, eoState& _state, eoPopEvalFunc& _popeval, eoContinue& _continue, eoGenOp& _op) { diff --git a/eo/src/do/make_algo_scalar.h b/eo/src/do/make_algo_scalar.h index 7dfebe3a0..1a207626f 100644 --- a/eo/src/do/make_algo_scalar.h +++ b/eo/src/do/make_algo_scalar.h @@ -73,9 +73,9 @@ * * This is why the template is the complete EOT even though only the fitness * is actually templatized here + * + * @ingroup Builders */ - - template eoAlgo & do_make_algo_scalar(eoParser& _parser, eoState& _state, eoEvalFunc& _eval, eoContinue& _continue, eoGenOp& _op, eoDistance * _dist = NULL) { diff --git a/eo/src/do/make_checkpoint.h b/eo/src/do/make_checkpoint.h index 99aca2bf1..37cf5d0a4 100644 --- a/eo/src/do/make_checkpoint.h +++ b/eo/src/do/make_checkpoint.h @@ -69,6 +69,8 @@ bool testDirRes(std::string _dirName, bool _erase); * * CHANGE (March 2008): now receiving an eoValueParam instead of an eoEvalFuncCounter. This function is just interested * in the value of the parameter calculated on the evaluation function, not in the actual function itself!! + * + * @ingroup Builders */ template eoCheckPoint& do_make_checkpoint(eoParser& _parser, eoState& _state, eoValueParam& _eval, eoContinue& _continue) diff --git a/eo/src/do/make_checkpoint_FDC.h b/eo/src/do/make_checkpoint_FDC.h index 80686c936..1c2ec493c 100644 --- a/eo/src/do/make_checkpoint_FDC.h +++ b/eo/src/do/make_checkpoint_FDC.h @@ -41,6 +41,9 @@ bool testDirRes(std::string _dirName, bool _erase); /////////////////// The checkpoint and other I/O ////////////// +/** + * @ingroup Builders + */ template eoCheckPoint& do_make_checkpoint(eoParser& _parser, eoState& _state, eoEvalFuncCounter& _eval, eoContinue& _continue) { diff --git a/eo/src/do/make_checkpoint_assembled.h b/eo/src/do/make_checkpoint_assembled.h index 96518f610..656b13769 100644 --- a/eo/src/do/make_checkpoint_assembled.h +++ b/eo/src/do/make_checkpoint_assembled.h @@ -49,7 +49,11 @@ bool testDirRes(std::string _dirName, bool _erase); /////////////////// The checkpoint and other I/O ////////////// -/** Of course, Fitness needs to be an eoScalarFitnessAssembled!!! */ +/** Of course, Fitness needs to be an eoScalarFitnessAssembled!!! + * + * + * @ingroup Builders + * */ template eoCheckPoint& do_make_checkpoint_assembled(eoParser& _parser, eoState& _state, eoEvalFuncCounter& _eval, eoContinue& _continue) { diff --git a/eo/src/do/make_continue.h b/eo/src/do/make_continue.h index a45dcd0a7..628624386 100644 --- a/eo/src/do/make_continue.h +++ b/eo/src/do/make_continue.h @@ -49,6 +49,9 @@ It can then be instantiated, and compiled on its own for a given EOType /////////////////// the stopping criterion //////////////// + /** + * @ingroup Builders + */ template eoCombinedContinue * make_combinedContinue(eoCombinedContinue *_combined, eoContinue *_cont) { @@ -59,7 +62,10 @@ eoCombinedContinue * make_combinedContinue(eoCombinedContinue *_comb return _combined; } - +/** + * + * @ingroup Builders + */ template eoContinue & do_make_continue(eoParser& _parser, eoState& _state, eoEvalFuncCounter & _eval) { diff --git a/eo/src/do/make_general_replacement.h b/eo/src/do/make_general_replacement.h index dfefb649b..4f1f52e86 100644 --- a/eo/src/do/make_general_replacement.h +++ b/eo/src/do/make_general_replacement.h @@ -39,6 +39,8 @@ /** a helper function that decodes a parameter read by the parser into an * eoReduce & (allocates the pointer and stores it into an eoState) + * + * @ingroup Builders */ template eoReduce & decode_reduce(eoParamParamType & _ppReduce, eoState & _state) @@ -129,8 +131,9 @@ eoReduce & decode_reduce(eoParamParamType & _ppReduce, eoState & _state) * eoHowMany _surviveOffspring number of offspring after offspring recuction * eoParamParamType & _reduceOffspringType how the offspring are reduced * eoParamParamType & _reduceFinalType how the final population is reduced to initial population size + * + * @ingroup Builders */ - template eoReplacement & make_general_replacement( eoParser& _parser, eoState& _state, diff --git a/eo/src/do/make_pop.h b/eo/src/do/make_pop.h index 0fe927a56..76242cab1 100644 --- a/eo/src/do/make_pop.h +++ b/eo/src/do/make_pop.h @@ -34,17 +34,25 @@ #include #include +/** @defgroup Builders Automatic builders + * + * Automatic builders are functions that automagically builds most commons instances for you. + * + * All the options you needs are set in the command-line parser. + * Those functions all start with the "do_make_" prefix. + * + * @ingroup Utilities + */ -///////////////////////////////// INIT POP /////////////////////////////// /** * Templatized version of parser-based construct of the population * + other initializations that are NOT representation-dependent. * * It must then be instantiated, and compiled on its own for a given EOType * (see e.g. ga.h and ga.pp in dir ga) + * + * @ingroup Builders */ - - template eoPop& do_make_pop(eoParser & _parser, eoState& _state, eoInit & _init) { diff --git a/eo/src/do/make_run.h b/eo/src/do/make_run.h index 64e3fa333..7e1e2889e 100644 --- a/eo/src/do/make_run.h +++ b/eo/src/do/make_run.h @@ -34,8 +34,9 @@ * A trivial function - only here to allow instanciation with a give EOType * and separate compilation - see in ga dir, make_run_ga * + * + * @ingroup Builders */ - template void do_run(eoAlgo& _algo, eoPop& _pop) { diff --git a/eo/src/eoScalarFitnessAssembled.h b/eo/src/eoScalarFitnessAssembled.h index 9eb42a6c2..c0d69f5ab 100644 --- a/eo/src/eoScalarFitnessAssembled.h +++ b/eo/src/eoScalarFitnessAssembled.h @@ -36,6 +36,10 @@ #include #include +/** @addtogroup Evaluation + * @{ + */ + //! Defines properties of eoScalarFitnessAssembled. /*! Properties that are hold in this traits class: - std::vector to hold descriptions of the different fitness terms @@ -270,7 +274,6 @@ std::istream& operator>>(std::istream& is, eoScalarFitnessAssembled /** -\ingroup EvolutionStrategies +\ingroup Real The most complex evolutionary strategy representation. Co-evolving mutation rates and correlated mutations. diff --git a/eo/src/es/eoEsGlobalXover.h b/eo/src/es/eoEsGlobalXover.h index eb2b43308..8261dd618 100644 --- a/eo/src/es/eoEsGlobalXover.h +++ b/eo/src/es/eoEsGlobalXover.h @@ -36,9 +36,12 @@ // needs a selector - here random #include -/** Gloabl crossover operator for ES genotypes. +/** Global crossover operator for ES genotypes. * Uses some Atom crossovers to handle both the object variables * and the mutation strategy parameters + * + * @ingroup Real + * @ingroup Variators */ template class eoEsGlobalXover: public eoGenOp diff --git a/eo/src/es/eoEsMutate.h b/eo/src/es/eoEsMutate.h index 180b0f8ae..6ae09ef2c 100644 --- a/eo/src/es/eoEsMutate.h +++ b/eo/src/es/eoEsMutate.h @@ -45,7 +45,8 @@ /** ES-style mutation in the large -@ingroup EvolutionStrategies +@ingroup Real +@ingroup Variators Obviously, valid only for eoES*. It is currently valid for three types of ES chromosomes: diff --git a/eo/src/es/eoEsMutationInit.h b/eo/src/es/eoEsMutationInit.h index 43240362f..0d4db55e2 100644 --- a/eo/src/es/eoEsMutationInit.h +++ b/eo/src/es/eoEsMutationInit.h @@ -31,7 +31,8 @@ /** Initialize Mutation operator -@ingroup EvolutionStrategies +@ingroup Real +@ingroup Variators Proxy class that is used for initializing the mutation operator. It provides an interface between eoEsMutate and the abstract parameterLoader. It also provides diff --git a/eo/src/es/eoEsSimple.h b/eo/src/es/eoEsSimple.h index 60c62c53d..ac93ab4b6 100644 --- a/eo/src/es/eoEsSimple.h +++ b/eo/src/es/eoEsSimple.h @@ -30,7 +30,7 @@ Contact: http://eodev.sourceforge.net /** Simple Evolution Strategy -@ingroup EvolutionStrategies +@ingroup Real One of the more simple evolution strategies, sporting just a single stdeviation for the entire chromosome. For more advanced versions see also eoEsStdev diff --git a/eo/src/es/eoEsStandardXover.h b/eo/src/es/eoEsStandardXover.h index b4cc11533..56d59be8b 100644 --- a/eo/src/es/eoEsStandardXover.h +++ b/eo/src/es/eoEsStandardXover.h @@ -41,6 +41,9 @@ * and the mutation strategy parameters * It is an eoBinOp and has to be wrapped into an eoGenOp before being used * like the global version + * + * @ingroup Real + * @ingroup Variators */ template class eoEsStandardXover: public eoBinOp diff --git a/eo/src/es/eoEsStdev.h b/eo/src/es/eoEsStdev.h index 1fdd39c8a..b8910512c 100644 --- a/eo/src/es/eoEsStdev.h +++ b/eo/src/es/eoEsStdev.h @@ -28,10 +28,10 @@ Contact: http://eodev.sourceforge.net /** Evolutionary Strategy with a standard deviation per parameter -@ingroup EvolutionStrategies - Evolutionary strategie style representation, supporting co-evolving standard deviations. + +@ingroup Real */ template class eoEsStdev : public eoVector diff --git a/eo/src/es/eoNormalMutation.h b/eo/src/es/eoNormalMutation.h index ba807b24b..b547bece9 100644 --- a/eo/src/es/eoNormalMutation.h +++ b/eo/src/es/eoNormalMutation.h @@ -43,8 +43,10 @@ * As for the bounds, the values are here folded back into the bounds. * The other possiblity would be to iterate until we fall inside the bounds - * but this sometimes takes a long time!!! + * + * @ingroup Real + * @ingroup Variators */ - template class eoNormalVecMutation: public eoMonOp { public: @@ -111,8 +113,10 @@ private: * As for the bounds, the values are here folded back into the bounds. * The other possiblity would be to iterate until we fall inside the bounds - * but this sometimes takes a long time!!! + * + * @ingroup Real + * @ingroup Variators */ - template class eoNormalMutation : public eoMonOp { @@ -172,8 +176,10 @@ private: * and write the update() method! * here the 1 fifth rule: count the proportion of successful mutations, and * increase sigma if more than threshold (1/5 !) + * + * @ingroup Real + * @ingroup Variators */ - template class eoOneFifthMutation : public eoNormalMutation, public eoUpdatable { diff --git a/eo/src/es/eoReal.h b/eo/src/es/eoReal.h index 516395f15..5674e8aef 100644 --- a/eo/src/es/eoReal.h +++ b/eo/src/es/eoReal.h @@ -33,6 +33,8 @@ /** eoReal: implementation of simple real-valued chromosome. * based on eoVector class + * + * @ingroup Real */ template class eoReal: public eoVector { diff --git a/eo/src/es/eoRealAtomXover.h b/eo/src/es/eoRealAtomXover.h index 9380b443a..c55287349 100644 --- a/eo/src/es/eoRealAtomXover.h +++ b/eo/src/es/eoRealAtomXover.h @@ -37,6 +37,9 @@ /** Discrete crossover == exchange of values + * + * @ingroup Real + * @ingroup Variators */ class eoDoubleExchange: public eoBinOp { @@ -67,6 +70,9 @@ public: /** Intermediate crossover == linear combination + * + * @ingroup Real + * @ingroup Variators */ class eoDoubleIntermediate: public eoBinOp { diff --git a/eo/src/es/eoRealInitBounded.h b/eo/src/es/eoRealInitBounded.h index b0f98ba6f..d74c76980 100644 --- a/eo/src/es/eoRealInitBounded.h +++ b/eo/src/es/eoRealInitBounded.h @@ -35,6 +35,9 @@ /** Simple initialization for any EOT that derives from std::vector * uniformly in some bounds + * + * @ingroup Real + * @ingroup Variators */ template class eoRealInitBounded : public eoInit diff --git a/eo/src/es/eoRealOp.h b/eo/src/es/eoRealOp.h index 6fabf2f2a..891633839 100644 --- a/eo/src/es/eoRealOp.h +++ b/eo/src/es/eoRealOp.h @@ -39,7 +39,9 @@ by uniform choice with range epsilon with probability p_change per variable \class eoUniformMutation eoRealOp.h Tutorial/eoRealOp.h -\ingroup parameteric + * + * @ingroup Real + * @ingroup Variators */ template class eoUniformMutation: public eoMonOp @@ -138,7 +140,9 @@ private: /** eoDetUniformMutation --> changes exactly k values of the std::vector by uniform choice with range epsilon \class eoDetUniformMutation eoRealOp.h Tutorial/eoRealOp.h -\ingroup parameteric + * + * @ingroup Real + * @ingroup Variators */ template class eoDetUniformMutation: public eoMonOp @@ -241,7 +245,9 @@ private: /** eoSegmentCrossover --> uniform choice in segment == arithmetical with same value along all coordinates \class eoSegmentCrossover eoRealOp.h Tutorial/eoRealOp.h -\ingroup parameteric + * + * @ingroup Real + * @ingroup Variators */ template class eoSegmentCrossover: public eoQuadOp @@ -331,9 +337,10 @@ protected: /** eoHypercubeCrossover --> uniform choice in hypercube == arithmetical with different values for each coordinate \class eoArithmeticCrossover eoRealOp.h Tutorial/eoRealOp.h -\ingroup parameteric + * + * @ingroup Real + * @ingroup Variators */ - template class eoHypercubeCrossover: public eoQuadOp { public: @@ -451,7 +458,9 @@ protected: /** eoRealUxOver --> Uniform crossover, also termed intermediate crossover \class eoRealUxOver eoRealOp.h Tutorial/eoRealOp.h -\ingroup parameteric + * + * @ingroup Real + * @ingroup Variators */ template class eoRealUXover: public eoQuadOp diff --git a/eo/src/es/eoSBXcross.h b/eo/src/es/eoSBXcross.h index 34fa47944..5498edaf4 100644 --- a/eo/src/es/eoSBXcross.h +++ b/eo/src/es/eoSBXcross.h @@ -32,6 +32,10 @@ +/** +* @ingroup Real +* @ingroup Variators +*/ template class eoSBXCrossover: public eoQuadOp { public: diff --git a/eo/src/es/make_es.h b/eo/src/es/make_es.h index 3212f3916..94fea64a9 100644 --- a/eo/src/es/make_es.h +++ b/eo/src/es/make_es.h @@ -62,6 +62,14 @@ // without self-adaptation #include +/** @addtogroup Builders + * @{ + */ + +/** @addtogroup Real + * @{ + */ + //Representation dependent - rewrite everything anew for each representation ////////////////////////// // the genotypes @@ -143,4 +151,6 @@ void run_ea(eoAlgo >& _ga, eoPop & do_make_genotype(eoParser& _parser, eoState& _state, EOT) return *init; } +/** @} */ #endif // EO_make_genotype_h diff --git a/eo/src/es/make_op.h b/eo/src/es/make_op.h index a19dc4b00..0bcda4f73 100644 --- a/eo/src/es/make_op.h +++ b/eo/src/es/make_op.h @@ -45,6 +45,10 @@ #include +/** @addtogroup Builders + * @{ + */ + /* * This function builds the operators that will be applied to the eoReal * @@ -291,4 +295,5 @@ eoGenOp & do_make_op(eoParameterLoader& _parser, eoState& _state, eoInit +/** @addtogroup Builders + * @{ + */ + /* * This function builds the operators that will be applied to the eoReal * @@ -187,6 +191,7 @@ eoGenOp & do_make_op(eoParser& _parser, eoState& _state, eoRealInitBounded< #endif // EO_make_op_h +/** @} */ // Local Variables: // coding: iso-8859-1 diff --git a/eo/src/es/make_op_real.h b/eo/src/es/make_op_real.h index 64f378837..2792e6380 100644 --- a/eo/src/es/make_op_real.h +++ b/eo/src/es/make_op_real.h @@ -45,6 +45,10 @@ #include +/** @addtogroup Builders + * @{ + */ + /* * This function builds the operators that will be applied to the eoReal * @@ -281,4 +285,5 @@ eoGenOp & do_make_op(eoParser& _parser, eoState& _state, eoRealInitBounded< // that's it! return op; } +/** @} */ #endif diff --git a/eo/src/es/make_real.h b/eo/src/es/make_real.h index 594934ddf..bb356fc71 100644 --- a/eo/src/es/make_real.h +++ b/eo/src/es/make_real.h @@ -60,6 +60,10 @@ //Representation dependent - rewrite everything anew for each representation ////////////////////////// + +/** @addtogroup Builders + * @{ + */ // the genotypes eoRealInitBounded > & make_genotype(eoParser& _parser, eoState& _state, eoReal _eo); eoRealInitBounded > & make_genotype(eoParser& _parser, eoState& _state, eoReal _eo); @@ -99,4 +103,5 @@ void run_ea(eoAlgo >& _ga, eoPop +/** @ingroup Utilities + */ class lower_triangular_matrix { unsigned n; @@ -21,6 +23,8 @@ class lower_triangular_matrix { std::vector::const_iterator operator[](unsigned i) const { return data.begin() + i*(i+1)/2; } }; +/** @ingroup Utilities + */ class square_matrix { unsigned n; std::vector data; diff --git a/eo/src/ga/eoBitOp.h b/eo/src/ga/eoBitOp.h index ee597e640..a1484ff19 100644 --- a/eo/src/ga/eoBitOp.h +++ b/eo/src/ga/eoBitOp.h @@ -39,6 +39,8 @@ /** eoBitFlip --> changes 1 bit \class eoBitBitFlip eoBitOp.h ga/eoBitOp.h \ingroup bitstring + +@ingroup Variators */ template class eoOneBitFlip: public eoMonOp diff --git a/eo/src/ga/eoBitOpFactory.h b/eo/src/ga/eoBitOpFactory.h index 27394aef6..b16900e75 100644 --- a/eo/src/ga/eoBitOpFactory.h +++ b/eo/src/ga/eoBitOpFactory.h @@ -34,7 +34,10 @@ /** EO Factory. An instance of the factory class to create operators that act on bitstring chromosomes. Only those chromosomes can instantiate the operators that are created here -@see eoSelect*/ +@see eoSelect + +@ingroup Variators +*/ template< class EOT> class eoBitOpFactory: public eoFactory { diff --git a/eo/src/ga/eoBoolFlip.h b/eo/src/ga/eoBoolFlip.h index cf226ebac..be9d252b1 100644 --- a/eo/src/ga/eoBoolFlip.h +++ b/eo/src/ga/eoBoolFlip.h @@ -28,6 +28,9 @@ #include /** a simple boolean mutation - to be used in generic eoOp's + * + @ingroup bitstring + @ingroup Variators */ class eoBoolFlip : public eoMonOp { public: diff --git a/eo/src/ga/eoPBILAdditive.h b/eo/src/ga/eoPBILAdditive.h index bea4c5062..dd360337b 100644 --- a/eo/src/ga/eoPBILAdditive.h +++ b/eo/src/ga/eoPBILAdditive.h @@ -41,7 +41,6 @@ * here the same formula is applied, with some of the best individuals * and for some of the worst individuals (with different learning rates) */ - template class eoPBILAdditive : public eoDistribUpdater { diff --git a/eo/src/ga/make_ga.h b/eo/src/ga/make_ga.h index ee75b8134..6ce8a07ad 100644 --- a/eo/src/ga/make_ga.h +++ b/eo/src/ga/make_ga.h @@ -52,6 +52,10 @@ //Representation dependent - rewrite everything anew for each representation ////////////////////////// +/** @addtogroup Builders + * @{ + */ + // the genotypes eoInit > & make_genotype(eoParser& _parser, eoState& _state, eoBit _eo); eoInit > & make_genotype(eoParser& _parser, eoState& _state, eoBit _eo); @@ -91,4 +95,5 @@ void run_ea(eoAlgo >& _ga, eoPop eoInit & do_make_genotype(eoParser& _parser, eoState& _state, EOT) { diff --git a/eo/src/ga/make_op.h b/eo/src/ga/make_op.h index 85af41ffb..338557b58 100644 --- a/eo/src/ga/make_op.h +++ b/eo/src/ga/make_op.h @@ -63,6 +63,9 @@ * EOT myEO; * _init(myEO); * and myEO is then an ACTUAL object + * + * @ingroup bitstring + * @ingroup Builders */ template diff --git a/eo/src/other/eoExternalEO.h b/eo/src/other/eoExternalEO.h index 9be61020b..219cf716d 100644 --- a/eo/src/other/eoExternalEO.h +++ b/eo/src/other/eoExternalEO.h @@ -33,8 +33,9 @@ * to be inserted in EO. This struct or class can be of any * form, the only thing this class does is attach a fitness * value to it and makes it the appropriate type (derives it from EO). + * + * @ingroup Utilities */ - template class eoExternalEO : public EO, virtual public External { @@ -74,7 +75,9 @@ public : }; -/// To remove ambiguities between EO and External, streaming operators are defined yet again +/** To remove ambiguities between EO and External, streaming operators are defined yet again + * @ingroup Utilities + */ template std::ostream& operator<<(std::ostream& os, const eoExternalEO& eo) { @@ -82,7 +85,9 @@ std::ostream& operator<<(std::ostream& os, const eoExternalEO& eo) return os; } -/// To remove ambiguities between EO and External, streaming operators are defined yet again +/** To remove ambiguities between EO and External, streaming operators are defined yet again + * @ingroup Utilities + */ template std::istream& operator>>(std::istream& is, eoExternalEO& eo) { diff --git a/eo/src/other/eoExternalOpFunctions.h b/eo/src/other/eoExternalOpFunctions.h index a96991e71..d86b49c45 100644 --- a/eo/src/other/eoExternalOpFunctions.h +++ b/eo/src/other/eoExternalOpFunctions.h @@ -40,6 +40,8 @@ External func(); Where External is the user defined struct or class + + @ingroup Utilities */ template > class eoExternalInit : public eoInit @@ -68,6 +70,8 @@ private : Fit func(External&); Where External is the user defined struct or class and Fit the fitness type + +@ingroup Utilities */ template > class eoExternalEvalFunc : public eoEvalFunc @@ -96,6 +100,8 @@ class eoExternalEvalFunc : public eoEvalFunc Where External is the user defined struct or class. The function should return true when it changed something, false otherwise + + @ingroup Utilities */ template > @@ -123,6 +129,8 @@ class eoExternalMonOp : public eoMonOp Where External is the user defined struct or class The function should return true when it changed something, false otherwise + + @ingroup Utilities */ template > class eoExternalBinOp : public eoBinOp @@ -149,6 +157,8 @@ class eoExternalBinOp : public eoBinOp Where External is the user defined struct or class The function should return true when it changed something, false otherwise + + @ingroup Utilities */ template > class eoExternalQuadOp : public eoQuadOp diff --git a/eo/src/other/eoString.h b/eo/src/other/eoString.h index e2aee7584..bc1cf88d4 100644 --- a/eo/src/other/eoString.h +++ b/eo/src/other/eoString.h @@ -37,7 +37,11 @@ // eoString //----------------------------------------------------------------------------- -/** Adaptor that turns an STL std::string into an EO */ +/** Adaptor that turns an STL std::string into an EO + + @ingroup Representations + @ingroup Utilities + */ template class eoString: public EO, public std::string { diff --git a/eo/src/utils/eoAssembledFitnessStat.h b/eo/src/utils/eoAssembledFitnessStat.h index 5dd96c674..44586932b 100644 --- a/eo/src/utils/eoAssembledFitnessStat.h +++ b/eo/src/utils/eoAssembledFitnessStat.h @@ -36,6 +36,10 @@ #include #include +/** @addtogroup Stats + * @{ + */ + /** Average fitness values of a population, where the fitness is of type eoScalarAssembledFitness. Specify in the constructor, @@ -109,4 +113,5 @@ private: unsigned whichFitnessTerm; }; +/** @} */ #endif diff --git a/eo/src/utils/eoCheckPoint.h b/eo/src/utils/eoCheckPoint.h index d2c1cadc4..775c00fbe 100644 --- a/eo/src/utils/eoCheckPoint.h +++ b/eo/src/utils/eoCheckPoint.h @@ -32,6 +32,21 @@ #include #include +/** @defgroup Checkpoints Checkpointing + * + * Checkpoints are supposed to be called perodically (for instance at each generation) and + * will call every functors you put in them. + * + * Use them with eoStats, eoUpdater and eoMonitor to get statistics at each generation. + * + * @see eoStats + * @see eoMonitor + * @see eoUpdater + * + * @ingroup Utilities + * + * @{ + */ /** eoCheckPoint is a container class. It contains std::vectors of (pointers to) @@ -161,4 +176,5 @@ std::string eoCheckPoint::allClassNames() const return s; } +/** @} */ #endif diff --git a/eo/src/utils/eoDistance.h b/eo/src/utils/eoDistance.h index 26ef0ea6f..1a7c9edd6 100644 --- a/eo/src/utils/eoDistance.h +++ b/eo/src/utils/eoDistance.h @@ -27,9 +27,14 @@ #define _eoDistance_H #include + +/** @addtogroup Stats + * @{ + * */ + /** This is a generic class for distance functors: - takes 2 things ane returns a double + takes 2 things and returns a double */ template< class EOT > class eoDistance : public eoBF @@ -94,5 +99,6 @@ public: }; +/** @} */ #endif diff --git a/eo/src/utils/eoFDCStat.h b/eo/src/utils/eoFDCStat.h index 0d2dda730..a604533f9 100644 --- a/eo/src/utils/eoFDCStat.h +++ b/eo/src/utils/eoFDCStat.h @@ -32,8 +32,12 @@ #include /** - The FDC computation - stores the values into eoValueParam + The Fitness Distance Correlation computation. + + Stores the values into eoValueParam so they can be snapshot by some eoGnuplotSnapshot ... + +@ingroup Stats */ template class eoFDCStat : public eoStat @@ -106,6 +110,8 @@ private: * As I failed to have FDC stat as an eoStat, this is the trick * to put the 2 eoParam > into a monitor * This class does nothing else. + +@ingroup Stats */ template class eoFDCFileSnapshot : public eoFileSnapshot // is an eoMonitor diff --git a/eo/src/utils/eoFeasibleRatioStat.h b/eo/src/utils/eoFeasibleRatioStat.h index 1092e9036..8d669dbec 100644 --- a/eo/src/utils/eoFeasibleRatioStat.h +++ b/eo/src/utils/eoFeasibleRatioStat.h @@ -34,7 +34,10 @@ Authors: #include "eoStat.h" -//! Ratio of the number of individuals with a feasible dual fitness in the population (@see eoDualFitness) +/** Ratio of the number of individuals with a feasible dual fitness in the population (@see eoDualFitness) + * + * @ingroup Stats + */ template class eoFeasibleRatioStat : public eoStat< EOT, double > { diff --git a/eo/src/utils/eoFileMonitor.h b/eo/src/utils/eoFileMonitor.h index 45d5b0fcd..9a4a0f1e5 100644 --- a/eo/src/utils/eoFileMonitor.h +++ b/eo/src/utils/eoFileMonitor.h @@ -34,12 +34,14 @@ #include "utils/eoMonitor.h" #include "eoObject.h" + /** Prints statistics to file Modified the default behavior, so that it erases existing files. Can be modified in the ctor. @version MS 25/11/00 +@ingroup Monitors */ class eoFileMonitor : public eoMonitor { diff --git a/eo/src/utils/eoFileSnapshot.h b/eo/src/utils/eoFileSnapshot.h index c9e58c746..b5d5142b7 100644 --- a/eo/src/utils/eoFileSnapshot.h +++ b/eo/src/utils/eoFileSnapshot.h @@ -48,8 +48,9 @@ so that you can pass e.g. an evalcounter (minor) I failed to templatize everything so that it can handle eoParam > for any type T, simply calling their getValue method ... -*/ +@ingroup Monitors +*/ class eoFileSnapshot : public eoMonitor { public : diff --git a/eo/src/utils/eoFuncPtrStat.h b/eo/src/utils/eoFuncPtrStat.h index 04675ac73..f1acc2f8d 100644 --- a/eo/src/utils/eoFuncPtrStat.h +++ b/eo/src/utils/eoFuncPtrStat.h @@ -1,9 +1,16 @@ + #ifndef eoFuncPtrStat_h #define eoFuncPtrStat_h #include #include +/** Wrapper to turn any stand-alone function and into an eoStat. + * + * The function should take an eoPop as argument. + * + * @ingroup Stats + */ template class eoFuncPtrStat : public eoStat { @@ -25,6 +32,9 @@ private: func_t func; }; +/** + * @ingroup Stats + */ template eoFuncPtrStat& makeFuncPtrStat( T (*func)(const eoPop&), eoFunctorStore& store, std::string description = "func") { return store.storeFunctor( diff --git a/eo/src/utils/eoGnuplot.h b/eo/src/utils/eoGnuplot.h index e057900a5..37e6419b7 100644 --- a/eo/src/utils/eoGnuplot.h +++ b/eo/src/utils/eoGnuplot.h @@ -34,6 +34,8 @@ calls to plots what is already written by some eoMonitor into a file @author Marc Schoenauer @version 0.0 (2001) + +@ingroup Monitors */ class eoGnuplot { diff --git a/eo/src/utils/eoGnuplot1DMonitor.h b/eo/src/utils/eoGnuplot1DMonitor.h index 523e875c5..e32e22275 100644 --- a/eo/src/utils/eoGnuplot1DMonitor.h +++ b/eo/src/utils/eoGnuplot1DMonitor.h @@ -43,6 +43,8 @@ eoGnuplot1DMonitor plots stats through gnuplot Assumes that the same file is appened every so and so, and replots it everytime + +@ingroup Monitors */ class eoGnuplot1DMonitor : public eoFileMonitor, public eoGnuplot { diff --git a/eo/src/utils/eoGnuplot1DSnapshot.h b/eo/src/utils/eoGnuplot1DSnapshot.h index f004a56e4..05015b642 100644 --- a/eo/src/utils/eoGnuplot1DSnapshot.h +++ b/eo/src/utils/eoGnuplot1DSnapshot.h @@ -47,6 +47,8 @@ This class plots through gnuplot the eoStat given as argument Assumes that the same file is re-written every so and so, and plots it from scratch everytime it's called + +@ingroup Monitors */ class eoGnuplot1DSnapshot: public eoFileSnapshot, public eoGnuplot { diff --git a/eo/src/utils/eoHowMany.h b/eo/src/utils/eoHowMany.h index ffa420d02..947a0013e 100644 --- a/eo/src/utils/eoHowMany.h +++ b/eo/src/utils/eoHowMany.h @@ -29,6 +29,11 @@ Contact: http://eodev.sourceforge.net #ifndef eoHowMany_h #define eoHowMany_h +#include + +#include + + /** A helper class, to determine a number of individuals from another one * Typically, is used in selection / replacement procedures, e.g. * the number of offspring from the number of parents, or @@ -65,12 +70,9 @@ Contact: http://eodev.sourceforge.net * eoG3Repalcement) * * It is an eoPersistent because we need to be able to use eoParamValue + * + * @ingroup Core */ - -#include - -#include - class eoHowMany : public eoPersistent { public: diff --git a/eo/src/utils/eoIntBounds.h b/eo/src/utils/eoIntBounds.h index 074c08363..6f801d9d2 100644 --- a/eo/src/utils/eoIntBounds.h +++ b/eo/src/utils/eoIntBounds.h @@ -31,14 +31,15 @@ #include /** -\defgroup EvolutionStrategies +\defgroup Real */ /** \class eoIntBounds eoIntBounds.h es/eoIntBounds.h -\ingroup EvolutionStrategies +\ingroup Real +\ingroup Bounds Defines bound classes for real numbers. @@ -149,6 +150,9 @@ public: }; /** A default class for unbounded variables + * + * @ingroup Real + * @ingroup Bounds */ class eoIntNoBounds : public eoIntBounds { @@ -221,11 +225,18 @@ public: }; -// one object for all - see eoIntBounds.cpp +/** one object for all - see eoIntBounds.cpp + * + * @ingroup Real + * @ingroup Bounds + */ extern eoIntNoBounds eoDummyIntNoBounds; /** * fully bounded eoIntBound == interval + * + * @ingroup Real + * @ingroup Bounds */ class eoIntInterval : public eoIntBounds { @@ -349,6 +360,9 @@ private : /** * an eoIntBound bounded from below only + * + * @ingroup Real + * @ingroup Bounds */ class eoIntBelowBound : public eoIntBounds { @@ -453,6 +467,9 @@ private : /** An eoIntBound bounded from above only + * + * @ingroup Real + * @ingroup Bounds */ class eoIntAboveBound : public eoIntBounds { @@ -560,6 +577,9 @@ private : /** A class that encapsulate all possible eoIntBounds. * Mandatory in order to read through the parser + * + * @ingroup Real + * @ingroup Bounds */ class eoGeneralIntBounds : public eoIntBounds { diff --git a/eo/src/utils/eoLogger.h b/eo/src/utils/eoLogger.h index c92616984..9789ee6b5 100644 --- a/eo/src/utils/eoLogger.h +++ b/eo/src/utils/eoLogger.h @@ -25,8 +25,12 @@ Caner Candan */ -/** Here's an example explaning how to use eoLogger: +/** @defgroup Logging Logging + Global logger for EO. + + Here's an example explaning how to use eoLogger: +\code #include #include #include @@ -77,7 +81,9 @@ Caner Candan return 0; } +\endcode +@{ */ #ifndef eoLogger_h @@ -249,4 +255,7 @@ namespace eo extern eoLogger log; } + +/** @} */ + #endif // !eoLogger_h diff --git a/eo/src/utils/eoMonitor.h b/eo/src/utils/eoMonitor.h index a41c9fd39..e02900f21 100644 --- a/eo/src/utils/eoMonitor.h +++ b/eo/src/utils/eoMonitor.h @@ -1,7 +1,5 @@ // -*- mode: c++; c-indent-level: 4; c++-member-init-indent: 8; comment-column: 35; -*- -//----------------------------------------------------------------------------- -// eoMonitor.h // (c) Marc Schoenauer, Maarten Keijzer and GeNeura Team, 2000 /* This library is free software; you can redistribute it and/or @@ -21,10 +19,7 @@ Contact: todos@geneura.ugr.es, http://geneura.ugr.es Marc.Schoenauer@polytechnique.fr mak@dhi.dk -CVS Info: $Date: 2010-03-18 12:44:45 $ $Header: /home/nojhan/dev/eodev/eodev_cvs/eo/src/utils/eoMonitor.h,v 1.13 2010-03-18 12:44:45 paradiseo Exp $ $Author: paradiseo $ - */ -//----------------------------------------------------------------------------- #ifndef _eoMonitor_h #define _eoMonitor_h @@ -34,6 +29,20 @@ CVS Info: $Date: 2010-03-18 12:44:45 $ $Header: /home/nojhan/dev/eodev/eodev_cvs #include #include +/** @defgroup Monitors Monitoring + * + * Monitors take a set of value parameters (eoValueParam) objects and + * output them on a given stream, file, pipe, etc. + * + * They can be called from within an eoCheckPoint, to print different values + * of parameters or of eoStat at each generation. + * + * @see eoCheckPoint + * @see eoStat + * @ingroup Utilities + */ + + class eoParam; template class eoCheckPoint; @@ -43,6 +52,8 @@ template class eoCheckPoint; Derived classes will then implement the operator()(void) which will stream or pipe the current values of the parameters to wherever you want it streamed or piped to. + + @ingroup Monitors */ class eoMonitor : public eoF { diff --git a/eo/src/utils/eoOStreamMonitor.h b/eo/src/utils/eoOStreamMonitor.h index 83e1d6040..70d85bf7d 100644 --- a/eo/src/utils/eoOStreamMonitor.h +++ b/eo/src/utils/eoOStreamMonitor.h @@ -25,8 +25,6 @@ Authors: Johann Dréo */ - - #ifndef _eoOStreamMonitor_h_ #define _eoOStreamMonitor_h_ @@ -39,6 +37,8 @@ Authors: /** Prints statistics to stdout + + @ingroup Monitors */ class eoOStreamMonitor : public eoMonitor { diff --git a/eo/src/utils/eoParam.h b/eo/src/utils/eoParam.h index de1e11c23..29608a18e 100644 --- a/eo/src/utils/eoParam.h +++ b/eo/src/utils/eoParam.h @@ -35,6 +35,15 @@ #include #include +/** @defgroup Parameters Parameters management + * + * A parameter is basically an object that stores a value and that can read/print it from/on streams. + * + * It is mainly used for command-line options (see eoParser) and eoStat. + * + * @ingroup Utilities + * @{ + */ /** eoParam: Base class for monitoring and parsing parameters @@ -126,8 +135,9 @@ private: /** eoValueParam: templatized derivation of eoParam. Can be used to contain - any scalar value type. It makes use of std::strstream to get and set values. This - should be changed to std::stringstream when that class is available in g++. + any scalar value type. It makes use of std::strstream to get and set values. + + @todo This should be changed to std::stringstream when that class is available in g++. Note also that there is a template specialization for std::pair and for std::vector. These stream their contents delimited with whitespace. @@ -458,4 +468,6 @@ public: std::ostream & operator<<(std::ostream & _os, const eoParamParamType & _rate); std::istream & operator>>(std::istream & _is, eoParamParamType & _rate); +/** @} */ #endif + diff --git a/eo/src/utils/eoParser.h b/eo/src/utils/eoParser.h index eabd32614..1c3415043 100644 --- a/eo/src/utils/eoParser.h +++ b/eo/src/utils/eoParser.h @@ -36,6 +36,8 @@ Contact: http://eodev.sourceforge.net eoParameterLoader is an abstract class that can be used as a base for your own parameter loading and saving. The command line parser eoParser is derived from this class. + +@ingroup Parameters */ class eoParameterLoader { @@ -96,6 +98,8 @@ private : eoParser: command line parser and configuration file reader This class is persistent, so it can be stored and reloaded to restore parameter settings. + + @ingroup Parameters */ class eoParser : public eoParameterLoader, public eoObject, public eoPersistent { diff --git a/eo/src/utils/eoParserLogger.h b/eo/src/utils/eoParserLogger.h index 55801105f..20f67652b 100644 --- a/eo/src/utils/eoParserLogger.h +++ b/eo/src/utils/eoParserLogger.h @@ -29,6 +29,9 @@ Authors: /** * A parser that use the advanced logging system (@see eoLogger) + * + * @ingroup Parameters + * @ingroup Logging */ class eoParserLogger : public eoParser { diff --git a/eo/src/utils/eoPopStat.h b/eo/src/utils/eoPopStat.h index 65bdf44e6..86c5dc047 100644 --- a/eo/src/utils/eoPopStat.h +++ b/eo/src/utils/eoPopStat.h @@ -46,6 +46,8 @@ This is the plain version - see eoPopString for the Sorted version Note: this Stat should probably be used only within eoStdOutMonitor, and not inside an eoFileMonitor, as the eoState construct will work much better there. + +@ingroup Stats */ template class eoPopStat : public eoStat @@ -91,6 +93,8 @@ This is the Sorted version - see eoPopString for the plain version Note: this Stat should probably be used only within eoStdOutMonitor, and not inside an eoFileMonitor, as the eoState construct will work much better there. + +@ingroup Stats */ template class eoSortedPopStat : public eoSortedStat diff --git a/eo/src/utils/eoRNG.h b/eo/src/utils/eoRNG.h index 99de37298..ad1e3aa18 100644 --- a/eo/src/utils/eoRNG.h +++ b/eo/src/utils/eoRNG.h @@ -25,14 +25,18 @@ Old contact information: todos@geneura.ugr.es, http://geneura.ugr.es #ifndef EO_RANDOM_NUMBER_GENERATOR #define EO_RANDOM_NUMBER_GENERATOR -// uint32_t is an unsigned integer type capable of holding 32 bits. -// -// In the applicatione here exactly 32 are used. -// 64 bits might be better on an Alpha or other 64 bit systems with GCC at high -// optimization levels so feel free to try your options and see what's best for -// you. +/** @addtogroup Random + * @{ + * */ # if (defined _MSC_VER) +/** uint32_t is an unsigned integer type capable of holding 32 bits. + + In the applicatione here exactly 32 are used. + 64 bits might be better on an Alpha or other 64 bit systems with GCC at high + optimization levels so feel free to try your options and see what's best for + you. +*/ typedef unsigned long uint32_t; #else #if (! defined __sun) @@ -444,6 +448,7 @@ namespace eo } using eo::rng; +/** @} */ diff --git a/eo/src/utils/eoRealBounds.h b/eo/src/utils/eoRealBounds.h index 83a6489a0..0f0b230db 100644 --- a/eo/src/utils/eoRealBounds.h +++ b/eo/src/utils/eoRealBounds.h @@ -31,7 +31,7 @@ #include /** -\defgroup EvolutionStrategies Continuous vector +\defgroup Real Continuous vector @ingroup Representations @@ -40,7 +40,7 @@ /** \class eoRealBounds eoRealBounds.h es/eoRealBounds.h -\ingroup EvolutionStrategies +\ingroup Real Defines bound classes for real numbers. @@ -73,6 +73,8 @@ eoRealAboveBound the half-bounded interval (-infinity, max] THis file also contains the declaration of *the* global object that is the unbounded bound + +@ingroup Bounds */ class eoRealBounds : public eoPersistent { @@ -131,6 +133,8 @@ public: }; /** A default class for unbounded variables + +@ingroup Bounds */ class eoRealNoBounds : public eoRealBounds { @@ -196,11 +200,15 @@ public: }; -// one object for all - see eoRealBounds.cpp +/** one object for all - see eoRealBounds.cpp +@ingroup Bounds +*/ extern eoRealNoBounds eoDummyRealNoBounds; /** * fully bounded eoRealBound == interval + +@ingroup Bounds */ class eoRealInterval : public eoRealBounds { @@ -319,6 +327,8 @@ private : /** * an eoRealBound bounded from below only + +@ingroup Bounds */ class eoRealBelowBound : public eoRealBounds { @@ -518,6 +528,8 @@ private : /** A class that encapsulate all possible eoIntBounds. * Mandatory in order to read through the parser + +@ingroup Bounds */ class eoGeneralRealBounds : public eoRealBounds { diff --git a/eo/src/utils/eoRealVectorBounds.h b/eo/src/utils/eoRealVectorBounds.h index 7cdbcb613..56c194194 100644 --- a/eo/src/utils/eoRealVectorBounds.h +++ b/eo/src/utils/eoRealVectorBounds.h @@ -32,7 +32,7 @@ #include /** -\defgroup EvolutionStrategies +\defgroup Real */ @@ -54,6 +54,8 @@ eoRealBaseVectorBounds, base class that handles all useful functions eoRealVectorBounds which derives from the preceding *and* eoPersistent and also has a mechanism for memory handling of the pointers it has to allocate + +@ingroup Bounds */ class eoRealBaseVectorBounds : public std::vector { @@ -226,6 +228,8 @@ public: //////////////////////////////////////////////////////////////////// /** Now a derived class, for parser reading * It holds some of the bounds (and destroy them when dying) + +@ingroup Bounds */ class eoRealVectorBounds : public eoRealBaseVectorBounds, public eoPersistent { @@ -350,6 +354,8 @@ private:// WARNING: there is no reason for both std::vector below /** the dummy unbounded eoRealVectorBounds: usefull if you don't need bounds! * everything is inlined. * Warning: we do need this class, and not only a std::vector + +@ingroup Bounds */ class eoRealVectorNoBounds: public eoRealVectorBounds { @@ -422,6 +428,8 @@ public: -// one object for all - see eoRealBounds.cpp +/** one object for all - see eoRealBounds.cpp +@ingroup Bounds +*/ extern eoRealVectorNoBounds eoDummyVectorNoBounds; #endif diff --git a/eo/src/utils/eoRndGenerators.h b/eo/src/utils/eoRndGenerators.h index e851bb027..96ec9c0c7 100644 --- a/eo/src/utils/eoRndGenerators.h +++ b/eo/src/utils/eoRndGenerators.h @@ -33,6 +33,12 @@ #include #include +/** @defgroup Random Random number generation + * + * @ingroup Utilities + * @{ + */ + using eo::rng; /** @@ -146,4 +152,5 @@ template class eoNegExpGenerator : public eoRndGenerator eoRng& negexp; }; +/** @} */ #endif diff --git a/eo/src/utils/eoScalarFitnessStat.h b/eo/src/utils/eoScalarFitnessStat.h index b7c820d33..f472722a9 100644 --- a/eo/src/utils/eoScalarFitnessStat.h +++ b/eo/src/utils/eoScalarFitnessStat.h @@ -32,6 +32,8 @@ /** The fitnesses of a whole population, as a std::vector + + @ingroup Stats */ template class eoScalarFitnessStat : public eoSortedStat > diff --git a/eo/src/utils/eoStat.h b/eo/src/utils/eoStat.h index 6897bfb54..70dafa2e3 100644 --- a/eo/src/utils/eoStat.h +++ b/eo/src/utils/eoStat.h @@ -41,6 +41,22 @@ Contact: http://eodev.sourceforge.net #include #include +/** @defgroup Stats Statistic computation + * + * Compute various statistics on a population. + * + * Objects of those classes are generally called by an eoCheckPoint + * to compute statistics about the population at a given generation. + * As they inherit from eoValueParam, they can be printed drectly, + * for instance by an eoMonitor. + * + * @see eoCheckPoint + * @see eoMonitor + * + * @ingroup Utilities + * @{ + */ + /** Base class for all statistics that need to be calculated over the (unsorted) population @@ -485,4 +501,6 @@ public: virtual std::string className(void) const { return "eoInterquartileRangeStat"; } }; +/** @} */ #endif + diff --git a/eo/src/utils/eoState.h b/eo/src/utils/eoState.h index 42fb30006..a32dfefe8 100644 --- a/eo/src/utils/eoState.h +++ b/eo/src/utils/eoState.h @@ -50,6 +50,7 @@ class eoPersistent; derived classes are not saved or loaded. To govern the creation of functors, command-line parameters (which can be stored) are needed. + @ingroup Utilities */ class eoState : public eoFunctorStore { diff --git a/eo/src/utils/eoStdoutMonitor.h b/eo/src/utils/eoStdoutMonitor.h index 76ac1391f..91fcc11cc 100644 --- a/eo/src/utils/eoStdoutMonitor.h +++ b/eo/src/utils/eoStdoutMonitor.h @@ -37,6 +37,8 @@ Authors: /** Prints statistics to stdout + + @ingroup Monitors */ class eoStdoutMonitor : public eoOStreamMonitor { diff --git a/eo/src/utils/eoTimeCounter.h b/eo/src/utils/eoTimeCounter.h index bfd16c56e..27a103da4 100644 --- a/eo/src/utils/eoTimeCounter.h +++ b/eo/src/utils/eoTimeCounter.h @@ -34,6 +34,8 @@ /** An eoStat that simply gives the user time since first generation It has to be tempatized by EOT because it must be an eoStat + + @group Stats */ class eoTimeCounter : public eoUpdater, public eoValueParam { diff --git a/eo/src/utils/eoTimedMonitor.h b/eo/src/utils/eoTimedMonitor.h index 3c264c306..aa660a794 100644 --- a/eo/src/utils/eoTimedMonitor.h +++ b/eo/src/utils/eoTimedMonitor.h @@ -36,6 +36,8 @@ /** Holds a collection of monitors and only fires them when a time limit has been reached + + @ingroup Monitors */ class eoTimedMonitor : public eoMonitor { diff --git a/eo/src/utils/eoUniformInit.h b/eo/src/utils/eoUniformInit.h index 7960339f7..005b7f7ec 100644 --- a/eo/src/utils/eoUniformInit.h +++ b/eo/src/utils/eoUniformInit.h @@ -44,6 +44,11 @@ #include "eoRealBounds.h" #include + +/** @addtogroup Initializators + * @{ + */ + using eo::rng; /** @@ -58,6 +63,7 @@ using eo::rng; either in [0, _max) if only 1 value (_max) is given (or none, as _max defaults to 1.0) or in [_min,_max) if 2 values are given (_min, _max) + */ template class eoUniformInit : public eoInit { @@ -152,4 +158,5 @@ template class eoNegExpInit : public eoInit eoRng& negexp; }; +/** @} */ #endif diff --git a/eo/src/utils/eoUpdatable.h b/eo/src/utils/eoUpdatable.h index 7c53143ca..4c029c540 100644 --- a/eo/src/utils/eoUpdatable.h +++ b/eo/src/utils/eoUpdatable.h @@ -32,6 +32,8 @@ /** eoUpdatable is a generic class for adding updatation to an existing class Just says it has an update() method + + @ingroup Utilities */ class eoUpdatable { @@ -47,6 +49,8 @@ public: /** A base class to actually update an eoUpdatable object + + @ingroup Utilities */ class eoDynUpdater : public eoUpdater {public : @@ -63,6 +67,8 @@ private: /** An eoUpdater to update an eoUpdatable object every given time interval + + @ingroup Utilities */ class eoTimedDynUpdate : public eoDynUpdater { @@ -89,6 +95,8 @@ private : /** An eoUpdater to update an eoUpdatable object every given tic + + @ingroup Utilities */ class eoCountedDynUpdate : public eoDynUpdater { diff --git a/eo/src/utils/eoUpdater.h b/eo/src/utils/eoUpdater.h index 23374475a..ab8ae4250 100644 --- a/eo/src/utils/eoUpdater.h +++ b/eo/src/utils/eoUpdater.h @@ -37,6 +37,8 @@ template class eoCheckPoint; /** eoUpdater is a generic procudere for updating whatever you want. Yet again an empty name + + @ingroup Utilities */ class eoUpdater : public eoF { @@ -50,6 +52,8 @@ public: /** an eoUpdater that simply increments a counter + + @ingroup Utilities */ template class eoIncrementor : public eoUpdater @@ -71,6 +75,8 @@ private: /** an eoUpdater that is an eoValueParam (and thus OWNS its counter) * Mandatory for generation counter in make_checkpoint + + @ingroup Utilities */ template class eoIncrementorParam : public eoUpdater, public eoValueParam @@ -105,6 +111,8 @@ private: /** an eoUpdater that saves a state every given time interval + + @ingroup Utilities */ class eoTimedStateSaver : public eoUpdater { @@ -128,6 +136,8 @@ private : /** an eoUpdater that saves a state every given generations + + @ingroup Utilities */ class eoCountedStateSaver : public eoUpdater { diff --git a/eo/src/utils/rnd_generators.h b/eo/src/utils/rnd_generators.h index a85283211..d71caf803 100644 --- a/eo/src/utils/rnd_generators.h +++ b/eo/src/utils/rnd_generators.h @@ -34,6 +34,10 @@ #include "eoRNG.h" #include +/** @addtogroup Random + * @{ + */ + /** The class uniform_generator can be used in the STL generate function to easily generate random floats and doubles @@ -165,4 +169,5 @@ template class negexp_generator eoRng& negexp; }; +/** @} */ #endif diff --git a/eo/src/utils/selectors.h b/eo/src/utils/selectors.h index e2ab6cf69..d1765b999 100644 --- a/eo/src/utils/selectors.h +++ b/eo/src/utils/selectors.h @@ -43,7 +43,8 @@ #include "eoRNG.h" #include /** -\defgroup selectors +@addtogroup Selectors +@{ */ template @@ -334,5 +335,6 @@ EOT& inverse_stochastic_tournament(eoPop& _pop, double _t_rate, eoRng& _gen return *inverse_stochastic_tournament(_pop.begin(), _pop.end(), _t_rate, _gen); } +/** @} */ #endif