peoMultiStart< EntityType > Class Template Reference

Class allowing the launch of several algorithms. More...

#include <peoMultiStart.h>

Inheritance diagram for peoMultiStart< EntityType >:

Service Communicable List of all members.

Public Member Functions

template<typename AlgorithmType>
 peoMultiStart (AlgorithmType &externalAlgorithm)
 Constructor.
template<typename AlgorithmReturnType, typename AlgorithmDataType>
 peoMultiStart (AlgorithmReturnType(*externalAlgorithm)(AlgorithmDataType &))
 Constructor.
template<typename AlgorithmType, typename AggregationFunctionType>
 peoMultiStart (std::vector< AlgorithmType * > &externalAlgorithms, AggregationFunctionType &externalAggregationFunction)
 Constructor.
template<typename AlgorithmReturnType, typename AlgorithmDataType, typename AggregationFunctionType>
 peoMultiStart (std::vector< AlgorithmReturnType(*)(AlgorithmDataType &) > &externalAlgorithms, AggregationFunctionType &externalAggregationFunction)
 Constructor.
 ~peoMultiStart ()
 Destructor.
template<typename Type>
void operator() (Type &externalData)
 operator on the template type
template<typename Type>
void operator() (const Type &externalDataBegin, const Type &externalDataEnd)
 operator on the template type
void packData ()
 Function realizing packages of data.
void unpackData ()
 Function reconstituting packages of data.
void execute ()
 Function which executes the algorithm.
void packResult ()
 Function realizing packages of the result.
void unpackResult ()
 Function reconstituting packages of result.
void notifySendingData ()
 Function notifySendingData.
void notifySendingAllResourceRequests ()
 Function notifySendingAllResourceRequests.

Private Attributes

AbstractAlgorithm * singularAlgorithm
std::vector< AbstractAlgorithm * > algorithms
AbstractAggregationAlgorithm * aggregationFunction
EntityType entityTypeInstance
std::vector< AbstractDataType * > data
unsigned idx
unsigned num_term
unsigned dataIndex
unsigned functionIndex

Classes

struct  AbstractAggregationAlgorithm
struct  AbstractAlgorithm
struct  AbstractDataType
struct  AggregationAlgorithm
struct  Algorithm
struct  DataType
struct  FunctionAlgorithm
struct  NoAggregationFunction

Detailed Description

template<typename EntityType>
class peoMultiStart< EntityType >

Class allowing the launch of several algorithms.

See also:
Service
Version:
1.1
Date:
january 2008

Definition at line 49 of file peoMultiStart.h.


Constructor & Destructor Documentation

template<typename EntityType>
template<typename AlgorithmType>
peoMultiStart< EntityType >::peoMultiStart ( AlgorithmType &  externalAlgorithm  )  [inline]

Constructor.

Parameters:
AlgorithmType& externalAlgorithm

Definition at line 56 of file peoMultiStart.h.

References peoMultiStart< EntityType >::aggregationFunction, peoMultiStart< EntityType >::algorithms, and peoMultiStart< EntityType >::singularAlgorithm.

template<typename EntityType>
template<typename AlgorithmReturnType, typename AlgorithmDataType>
peoMultiStart< EntityType >::peoMultiStart ( AlgorithmReturnType(*)(AlgorithmDataType &)  externalAlgorithm  )  [inline]

Constructor.

Parameters:
AlgorithmReturnType (*externalAlgorithm)( AlgorithmDataType& )

Definition at line 65 of file peoMultiStart.h.

References peoMultiStart< EntityType >::aggregationFunction, peoMultiStart< EntityType >::algorithms, and peoMultiStart< EntityType >::singularAlgorithm.

template<typename EntityType>
template<typename AlgorithmType, typename AggregationFunctionType>
peoMultiStart< EntityType >::peoMultiStart ( std::vector< AlgorithmType * > &  externalAlgorithms,
AggregationFunctionType &  externalAggregationFunction 
) [inline]

Constructor.

Parameters:
std::vector< AlgorithmType* >& externalAlgorithms
AggregationFunctionType& externalAggregationFunction

Definition at line 75 of file peoMultiStart.h.

References peoMultiStart< EntityType >::aggregationFunction, and peoMultiStart< EntityType >::algorithms.

template<typename EntityType>
template<typename AlgorithmReturnType, typename AlgorithmDataType, typename AggregationFunctionType>
peoMultiStart< EntityType >::peoMultiStart ( std::vector< AlgorithmReturnType(*)(AlgorithmDataType &) > &  externalAlgorithms,
AggregationFunctionType &  externalAggregationFunction 
) [inline]

Constructor.

Parameters:
std::vector< AlgorithmReturnType (*)( AlgorithmDataType& ) >& externalAlgorithms
AggregationFunctionType& externalAggregationFunction

Definition at line 87 of file peoMultiStart.h.

References peoMultiStart< EntityType >::aggregationFunction, and peoMultiStart< EntityType >::algorithms.


Member Function Documentation

template<typename EntityType>
template<typename Type>
void peoMultiStart< EntityType >::operator() ( Type &  externalData  )  [inline]

operator on the template type

Parameters:
Type& externalData

Definition at line 106 of file peoMultiStart.h.

References peoMultiStart< EntityType >::algorithms, peoMultiStart< EntityType >::data, peoMultiStart< EntityType >::dataIndex, peoMultiStart< EntityType >::functionIndex, peoMultiStart< EntityType >::idx, peoMultiStart< EntityType >::num_term, Service::requestResourceRequest(), and Communicable::stop().

template<typename EntityType>
template<typename Type>
void peoMultiStart< EntityType >::operator() ( const Type &  externalDataBegin,
const Type &  externalDataEnd 
) [inline]

operator on the template type

Parameters:
Type& externalDataBegin
Type& externalDataEnd

Definition at line 120 of file peoMultiStart.h.

References peoMultiStart< EntityType >::algorithms, peoMultiStart< EntityType >::data, peoMultiStart< EntityType >::dataIndex, peoMultiStart< EntityType >::functionIndex, peoMultiStart< EntityType >::idx, peoMultiStart< EntityType >::num_term, Service::requestResourceRequest(), and Communicable::stop().


The documentation for this class was generated from the following file:
Generated on Thu Mar 13 15:55:06 2008 for ParadisEO-PEO-ParallelanddistributedEvolvingObjects by  doxygen 1.4.7