XIOS  1.0
Xml I/O Server
 Tout Classes Espaces de nommage Fichiers Fonctions Variables Définitions de type Énumérations Valeurs énumérées Amis Macros
average_reduction.hpp
Aller à la documentation de ce fichier.
1 
9 #ifndef __XIOS_REDUCTION_AVERAGE_ALGORITHM_HPP__
10 #define __XIOS_REDUCTION_AVERAGE_ALGORITHM_HPP__
11 
12 #include "reduction.hpp"
13 
14 namespace xios {
15 
21 {
22 public:
24 
25  virtual void apply(const std::vector<std::pair<int,double> >& localIndex,
26  const double* dataInput,
27  CArray<double,1>& dataOut,
28  std::vector<bool>& flagInitial,
29  bool ignoreMissingValue, bool firstPass);
30 
31  virtual void updateData(CArray<double,1>& dataOut);
32 
34 
35 protected:
38 
39 public:
40  static bool registerTrans();
41 
42 protected:
43  static CReductionAlgorithm* create();
44 };
45 
46 }
47 #endif // __XIOS_REDUCTION_AVERAGE_ALGORITHM_HPP__
Parent class for all reduction.
#define xios(arg)
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 dat...
Interface for all reduction alogrithms.
static CReductionAlgorithm * create()
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.
Interface for all reduction alogrithms.
Definition: reduction.hpp:22