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

Last change on this file since 2119 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
RevLine 
[1985]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
[2011]8#include "algorithm_transformation_reduce.hpp"
[1985]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*/
[2011]21class CScalarAlgorithmReduceScalar : public CAlgorithmTransformationReduce
[1985]22{
23public:
[1988]24  CScalarAlgorithmReduceScalar(bool isSource, CScalar* scalarDestination, CScalar* scalarSource, CReduceScalarToScalar* algo);
[1985]25
26  virtual ~CScalarAlgorithmReduceScalar();
27
28  static bool registerTrans();
29protected:
[2011]30 
[1985]31
[2011]32public:
[1985]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.