source: XIOS/dev/dev_ym/XIOS_COUPLING/src/transformation/algorithm_transformation_weight.hpp @ 2335

Last change on this file since 2335 was 2313, checked in by ymipsl, 2 years ago

Take into account detect_missing_value and renormalize attribute for interpolate class transformation.

YM

  • Property svn:executable set to *
File size: 1.4 KB
RevLine 
[1997]1#ifndef __XIOS_ALGORITHM_TRANSFORMATION_WEIGHT_HPP__
2#define __XIOS_ALGORITHM_TRANSFORMATION_WEIGHT_HPP__
3
4#include "generic_algorithm_transformation.hpp"
5#include "array_new.hpp"
6#include "local_view.hpp"
7#include "transform_connector.hpp"
8#include "weight_transform_connector.hpp"
9
10namespace xios
11{
12
13  class CAlgorithmTransformationWeight : public CGenericAlgorithmTransformation
14  {
15    public:
16
[2313]17      CAlgorithmTransformationWeight(bool isSource) : CGenericAlgorithmTransformation(isSource) {} 
18                                                                                                 
[1997]19      virtual ~CAlgorithmTransformationWeight() {};
20      virtual void apply(int dimBefore, int dimAfter, const CArray<double,1>& dataIn, CArray<double,1>& dataOut);
[2267]21      virtual void computeRecvElement(shared_ptr<CLocalView> srcView, shared_ptr<CLocalView> dstView);
[1997]22    protected:
[2313]23      virtual void computeAlgorithm(shared_ptr<CLocalView> srcView, shared_ptr<CLocalView> dstView, bool detectMissingValue, bool renormalize) ;
[1997]24
25      //! Map between global index of destination element and source element
26      TransformationIndexMap transformationMapping_;
27      //! Weight corresponding of source to destination
28      TransformationWeightMap transformationWeight_;
[2267]29      shared_ptr<CWeightTransformConnector> weightTransformConnector_ ;
[1997]30     
31  };
32
33}
34#endif //__XIOS_ALGORITHM_TRANSFORMATION_WEIGHT_HPP__
Note: See TracBrowser for help on using the repository browser.