#include <D:/Temp/vs/gal/source/PopulationOperations.h>
Inherits Common::GaOperation.
Inherited by Population::CouplingOperations::GaBestAlwaysCoupling, Population::CouplingOperations::GaCrossCoupling, Population::CouplingOperations::GaInverseCoupling, Population::CouplingOperations::GaRandomCoupling, and Population::CouplingOperations::GaSimpleCoupling.
Public Member Functions | |
virtual void GACALL | operator() (const GaPopulation &population, GaCouplingResultSet &output, const GaCouplingParams ¶meters, int workerId, int numberOfWorkers) const =0 |
operator () performs coupling operation. Because this operation is parallelized, caller must specify ID its working thread, and total number of working threads which are used. |
This class has no built-in synchronizator, so LOCK_OBJECT
and LOCK_THIS_OBJECT
macros cannot be used with instances of this class. No public or private methods are thread-safe.
virtual void GACALL Population::GaCouplingOperation::operator() | ( | const GaPopulation & | population, | |
GaCouplingResultSet & | output, | |||
const GaCouplingParams & | parameters, | |||
int | workerId, | |||
int | numberOfWorkers | |||
) | const [pure virtual] |
operator ()
performs coupling operation. Because this operation is parallelized, caller must specify ID its working thread, and total number of working threads which are used.
population | reference to population which hosts selected chromosomes. | |
output | reference to coupling result set which will store produced offspring. | |
parameters | reference to parameters of replacement operation. | |
workerId | ID of the worker (working thread) which called this operator. | |
numberOfWorkers | number of workers (working threads). |
Implemented in Population::CouplingOperations::GaSimpleCoupling, Population::CouplingOperations::GaCrossCoupling, Population::CouplingOperations::GaInverseCoupling, Population::CouplingOperations::GaRandomCoupling, and Population::CouplingOperations::GaBestAlwaysCoupling.