XIOS
1.0
Xml I/O Server
|
Interface for all reduction alogrithms. Plus de détails...
#include <average_reduction.hpp>
Fonctions membres publiques | |
CAverageReductionAlgorithm () | |
virtual void | apply (const std::vector< std::pair< int, double > > &localIndex, const double *dataInput, CArray< double, 1 > &dataOut, std::vector< bool > &flagInitial, bool ignoreMissingValue, bool firstPass) |
Apply a reduction operation on local data. Plus de détails... | |
virtual void | updateData (CArray< double, 1 > &dataOut) |
Update local data In some case (e.g average) we need global information (e.g weights) then update data with this information. Plus de détails... | |
virtual | ~CAverageReductionAlgorithm () |
![]() | |
CReductionAlgorithm () | |
virtual | ~CReductionAlgorithm () |
Fonctions membres publiques statiques | |
static bool | registerTrans () |
![]() | |
static CReductionAlgorithm * | createOperation (EReductionType reduceType) |
Create an operation (sum, max, min) based on type. Plus de détails... | |
Fonctions membres protégées statiques | |
static CReductionAlgorithm * | create () |
![]() | |
static bool | registerOperation (EReductionType reduceType, CreateOperationCallBack createFn) |
static bool | unregisterOperation (EReductionType reduceType) |
static bool | initReductionOperation (std::map< StdString, EReductionType > &m) |
Attributs protégés | |
CArray< double, 1 > | weights_ |
bool | resetWeight_ |
Additional Inherited Members | |
![]() | |
static std::map< StdString, EReductionType > | ReductionOperations = std::map<StdString,EReductionType>() |
![]() | |
typedef CReductionAlgorithm *(* | CreateOperationCallBack )() |
typedef std::map < EReductionType, CreateOperationCallBack > | CallBackMap |
![]() | |
static CallBackMap * | reductionCreationCallBacks_ = 0 |
static bool | _dummyInit = CReductionAlgorithm::initReductionOperation(CReductionAlgorithm::ReductionOperations) |
Interface for all reduction alogrithms.
Définition à la ligne 20 du fichier average_reduction.hpp.
xios::CAverageReductionAlgorithm::CAverageReductionAlgorithm | ( | ) |
Définition à la ligne 14 du fichier average_reduction.cpp.
Référencé par create().
|
inlinevirtual |
Définition à la ligne 33 du fichier average_reduction.hpp.
|
virtual |
Apply a reduction operation on local data.
[in] | localIndex | vector contains local index of local data output and the corresponding weight |
[in] | dataInput | Pointer to the first element of data input array (in form of buffer) |
[in/out] | dataOut Array contains local data | |
[in/out] | flagInitial vector of boolean to mark the local index already initialized. True means there is a need for initialization | |
[in] | firstPass | indicate if it is the first time the apply funtion is called for a same transformation, in order to make a clean initialization |
Implémente xios::CReductionAlgorithm.
Définition à la ligne 29 du fichier average_reduction.cpp.
Références resetWeight_, xios::CArray< ValueType, NumDims, Allocator >::resize(), xios::CArray< ValueType, NumDims, Allocator >::size(), et weights_.
|
staticprotected |
Définition à la ligne 19 du fichier average_reduction.cpp.
Références CAverageReductionAlgorithm().
Référencé par registerTrans().
|
static |
Définition à la ligne 24 du fichier average_reduction.cpp.
Références create(), xios::CReductionAlgorithm::registerOperation(), et xios::TRANS_REDUCE_AVERAGE.
Référencé par xios::CReductionAlgorithm::initReductionOperation().
|
virtual |
Update local data In some case (e.g average) we need global information (e.g weights) then update data with this information.
[in] | dataOut | local data output |
Réimplémentée à partir de xios::CReductionAlgorithm.
Définition à la ligne 88 du fichier average_reduction.cpp.
Références resetWeight_, et weights_.
|
protected |
Définition à la ligne 37 du fichier average_reduction.hpp.
Référencé par apply(), et updateData().
|
protected |
Définition à la ligne 36 du fichier average_reduction.hpp.
Référencé par apply(), et updateData().