source: XIOS/dev/dev_ym/XIOS_COUPLING/src/transformation/scalar_algorithm/scalar_algorithm_reduce_scalar.hpp @ 2011

Last change on this file since 2011 was 2011, checked in by ymipsl, 3 years ago
  • bug fix when createing mask on server side when overlapping grid
  • implement axis interpolation on pressure coordinate
  • big cleaning in transformation

YM

  • Property svn:executable set to *
File size: 1.7 KB
Line 
1/*!
2   \file scalar_algorithm_reduce_scalar.hpp
3   \brief Algorithm for reduce an scalar to a scalar
4 */
5#ifndef __XIOS_SCALAR_ALGORITHM_REDUCE_SCALAR_HPP__
6#define __XIOS_SCALAR_ALGORITHM_REDUCE_SCALAR_HPP__
7
8#include "algorithm_transformation_reduce.hpp"
9#include "transformation.hpp"
10
11namespace xios {
12
13class CScalar;
14class CReduceScalarToScalar;
15class CReductionAlgorithm;
16
17/*!
18  \class CScalarAlgorithmReduceScalar
19  Reducing an scalar to a scalar
20*/
21class CScalarAlgorithmReduceScalar : public CAlgorithmTransformationReduce
22{
23public:
24  CScalarAlgorithmReduceScalar(bool isSource, CScalar* scalarDestination, CScalar* scalarSource, CReduceScalarToScalar* algo);
25
26  virtual ~CScalarAlgorithmReduceScalar();
27
28  static bool registerTrans();
29protected:
30 
31
32public:
33  static CGenericAlgorithmTransformation* create(bool isSource, CGrid* gridDst, CGrid* gridSrc,
34                                                CTransformation<CScalar>* transformation,
35                                                int elementPositionInGrid,
36                                                std::map<int, int>& elementPositionInGridSrc2ScalarPosition,
37                                                std::map<int, int>& elementPositionInGridSrc2AxisPosition,
38                                                std::map<int, int>& elementPositionInGridSrc2DomainPosition,
39                                                std::map<int, int>& elementPositionInGridDst2ScalarPosition,
40                                                std::map<int, int>& elementPositionInGridDst2AxisPosition,
41                                                std::map<int, int>& elementPositionInGridDst2DomainPosition);
42  static bool dummyRegistered_;
43};
44
45}
46#endif // __XIOS_SCALAR_ALGORITHM_REDUCE_SCALAR_HPP__
Note: See TracBrowser for help on using the repository browser.