EvolvingObjects
|
The base class for General Operators Subclass this operator is you want to define an operator that falls outside of the eoMonOp, eoBinOp, eoQuadOp classification. More...
#include <eoGenOp.h>
Public Member Functions | |
eoGenOp () | |
Ctor that honors its superclass. | |
virtual unsigned | max_production (void)=0 |
Max production is used to reserve space for all elements that are used by the operator, not setting it properly can result in a crash. | |
virtual std::string | className () const =0 |
void | operator() (eoPopulator< EOT > &_pop) |
The pure virtual function that needs to be implemented by the subclass. | |
virtual void | apply (eoPopulator< EOT > &_pop)=0 |
the function that will do the work |
The base class for General Operators Subclass this operator is you want to define an operator that falls outside of the eoMonOp, eoBinOp, eoQuadOp classification.
The argument the operator will receive is an eoPopulator, which is a wrapper around the original population, is an instantiation of the next population and has often a selection function embedded in it to select new individuals.
Note that the actual work is performed in the apply function. AND that the apply function is responsible for invalidating the object if necessary