class CoreFactoryA

Creating objects within the Core package

Inheritance:


Public Methods

CoreFactoryA ( ConfigurationA const & iConfiguration, RandomA const & iRandom )
Creating a factory for the Core package
TreeElementC* Right
This container element's left and right brother
TreeElementC* Parent
Its parent and first child

Public

Create functions
Creating objects in the Core package
virtual EvolutionaryAlgorithmA* CreateEvolutionaryAlgorithm ( StatisticsA & iStatistics, ProblemFactoryA const & iProblemFactory, ReproductionFactoryA const & iReproductionFactory, ProblemA const & iProblem )
Creating an EvolutionaryAlgorithm
virtual PopulationA* CreatePopulation ( StatisticsA & iStatistics, ProblemFactoryA const & iProblemFactory, ReproductionFactoryA const & iReproductionFactory, StopConditionA const & iStopCondition, ProblemA const & iProblem )
Creating a Population
virtual GenotypeA* CreateGenotype ( ProblemFactoryA const & iProblemFactory )
Creating a Genotype
virtual StopConditionA* CreateStopCondition ()
Creating a StopCondition
virtual InitializationA* CreateInitialization ( ProblemA const & iProblem )
Creating an Initialization
virtual PoolA* CreatePool ()
Creating a Pool

Documentation

This factory is used to spawn new objects in the Core package of the library. When it is inherited the Create memberfunctions will decide which class to use for each different object that can be spawned. Thus by changing the factory all the objects in the ibrary will use other objects.

CoreFactoryA( ConfigurationA const & iConfiguration, RandomA const & iRandom )
This factory is inherited and the child determines for every Create member which class is used to spawn an object.

Returns:
Nothing.
Parameters:
iConfiguration - The configuration used to determine settings for the algorithm and to provide a configuration to spawned objects within this class.
iRandom - A reference to this random object is stored and passed to classes who need it.
Author:
J.I. van Hemert
Version:
0.1

TreeElementC* Right
This container element's left and right brother

TreeElementC* Parent
Its parent and first child

Create functions

Examples:
GenotypeA * Genotype =
CoreFactory.CreateGenotype(ProblemFactory);
PoolA * Pool =
CoreFactory.CreatePool();
Parameters depend on the needs of the constructor of the object that is being created. See the appropriate class for details.

Returns:
An object of a class inherited from the appropriate abstract class.
Author:
J.I. van Hemert
Version:
0.1

virtual EvolutionaryAlgorithmA* CreateEvolutionaryAlgorithm( StatisticsA & iStatistics, ProblemFactoryA const & iProblemFactory, ReproductionFactoryA const & iReproductionFactory, ProblemA const & iProblem )
Creating an EvolutionaryAlgorithm

virtual PopulationA* CreatePopulation( StatisticsA & iStatistics, ProblemFactoryA const & iProblemFactory, ReproductionFactoryA const & iReproductionFactory, StopConditionA const & iStopCondition, ProblemA const & iProblem )
Creating a Population

virtual GenotypeA* CreateGenotype( ProblemFactoryA const & iProblemFactory )
Creating a Genotype

virtual StopConditionA* CreateStopCondition()
Creating a StopCondition

virtual InitializationA* CreateInitialization( ProblemA const & iProblem )
Creating an Initialization

virtual PoolA* CreatePool()
Creating a Pool


Direct child classes:
CoreFactoryC
Author:
J.I. van Hemert
Version:
0.1

alphabetic index hierarchy of classes


this page has been generated automatically by doc++

(c)opyright by Malte Zöckler, Roland Wunderling
contact: doc++@zib.de