Ignore:
Timestamp:
09/22/16 10:58:32 (4 years ago)
Author:
mhnguyen
Message:

Improving transformation selection. Instead of modifying directly grid_transformation
we only need to register a new transformation with the framework

+) Update all transformations with this new method

Test
+) On Curie
+) Basic tests pass

File:
1 edited

Legend:

Unmodified
Added
Removed
  • XIOS/trunk/src/transformation/axis_algorithm_zoom.hpp

    r827 r933  
    1111 
    1212#include "axis_algorithm_transformation.hpp" 
    13 #include "axis.hpp" 
    14 #include "zoom_axis.hpp" 
     13#include "transformation.hpp" 
    1514 
    1615namespace xios { 
     16class CAxis; 
     17class CZoomAxis; 
     18 
    1719/*! 
    1820  \class CAxisAlgorithmZoom 
    1921  Implementing zoom on axis 
    20   A zoomed region can be considered as region that isnt masked. 
     22  A zoomed region can be considered as region that isn't masked. 
    2123  Only this zoomed region is extracted to write on Netcdf. 
    2224*/ 
     
    2830  virtual ~CAxisAlgorithmZoom() {} 
    2931 
     32  static bool registerTrans(); 
    3033protected: 
    3134  void computeIndexSourceMapping_(const std::vector<CArray<double,1>* >& dataAuxInputs); 
     
    4447  //! Global zoom size on axis 
    4548  StdSize zoomSize_; 
     49 
     50private: 
     51 
     52  static CGenericAlgorithmTransformation* create(CGrid* gridDst, CGrid* gridSrc, 
     53                                                CTransformation<CAxis>* transformation, 
     54                                                int elementPositionInGrid, 
     55                                                std::map<int, int>& elementPositionInGridSrc2ScalarPosition, 
     56                                                std::map<int, int>& elementPositionInGridSrc2AxisPosition, 
     57                                                std::map<int, int>& elementPositionInGridSrc2DomainPosition, 
     58                                                std::map<int, int>& elementPositionInGridDst2ScalarPosition, 
     59                                                std::map<int, int>& elementPositionInGridDst2AxisPosition, 
     60                                                std::map<int, int>& elementPositionInGridDst2DomainPosition); 
    4661}; 
    4762 
Note: See TracChangeset for help on using the changeset viewer.