5 #ifndef __XIOS_SCALAR_ALGORITHM_REDUCE_SCALAR_HPP__
6 #define __XIOS_SCALAR_ALGORITHM_REDUCE_SCALAR_HPP__
14 class CReduceScalarToScalar;
15 class CReductionAlgorithm;
26 virtual void apply(
const std::vector<std::pair<int,double> >& localIndex,
27 const double* dataInput,
29 std::vector<bool>& flagInitial,
30 bool ignoreMissingValue,
bool firstPass);
47 int elementPositionInGrid,
48 std::map<int, int>& elementPositionInGridSrc2ScalarPosition,
49 std::map<int, int>& elementPositionInGridSrc2AxisPosition,
50 std::map<int, int>& elementPositionInGridSrc2DomainPosition,
51 std::map<int, int>& elementPositionInGridDst2ScalarPosition,
52 std::map<int, int>& elementPositionInGridDst2AxisPosition,
53 std::map<int, int>& elementPositionInGridDst2DomainPosition);
57 #endif // __XIOS_SCALAR_ALGORITHM_REDUCE_SCALAR_HPP__
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 operation on local data.
void computeIndexSourceMapping_(const std::vector< CArray< double, 1 > * > &dataAuxInputs)
static bool registerTrans()
virtual void updateData(CArray< double, 1 > &dataOut)
Update whole dataOut (on necessary).
CScalarAlgorithmReduceScalar(CScalar *scalarDestination, CScalar *scalarSource, CReduceScalarToScalar *algo)
CReductionAlgorithm * reduction_
static CGenericAlgorithmTransformation * create(CGrid *gridDst, CGrid *gridSrc, CTransformation< CScalar > *transformation, int elementPositionInGrid, std::map< int, int > &elementPositionInGridSrc2ScalarPosition, std::map< int, int > &elementPositionInGridSrc2AxisPosition, std::map< int, int > &elementPositionInGridSrc2DomainPosition, std::map< int, int > &elementPositionInGridDst2ScalarPosition, std::map< int, int > &elementPositionInGridDst2AxisPosition, std::map< int, int > &elementPositionInGridDst2DomainPosition)
Reducing an scalar to a scalar.
virtual ~CScalarAlgorithmReduceScalar()
Interface for all reduction alogrithms.