Ignore:
Timestamp:
03/22/18 10:43:20 (6 years ago)
Author:
yushan
Message:

branch_openmp merged with XIOS_DEV_CMIP6@1459

File:
1 edited

Legend:

Unmodified
Added
Removed
  • XIOS/dev/branch_openmp/src/filter/spatial_transform_filter.hpp

    r1334 r1460  
    33 
    44#include "filter.hpp" 
     5 
    56namespace xios 
    67{ 
     
    4849      double outputDefaultValue; 
    4950  }; // class CSpatialTransformFilter 
     51 
     52 
     53 /*! 
     54   * A specific spatial filter for the temporal_splitting transformation scalar -> axis. An incoming flux will be stored in an aditional dimension given by the destination axis. 
     55   * At each flux received, the storing index (record) is increased. When it reach the size of the axis (nrecords) a new flux is generated and the record is reset to 0 
     56   */ 
     57 
     58 class CSpatialTemporalFilter : public CSpatialTransformFilter 
     59  { 
     60    public: 
     61      /*! 
     62       * Constructs a filter wrapping the specified spatial transformation. 
     63       * 
     64       * \param gc the associated garbage collector 
     65       * \param engine the engine defining the spatial transformation 
     66       * \param [in] gridTransformation the associated transformations 
     67       * \param outputValue default value of output pin 
     68       * \param [in] inputSlotsCount number of input, by default there is only one for field src 
     69       */ 
     70      CSpatialTemporalFilter(CGarbageCollector& gc, CSpatialTransformFilterEngine* engine, CGridTransformation* gridTransformation, double outputValue, size_t inputSlotsCount = 1); 
     71 
     72 
     73    protected: 
     74      /*! 
     75        Overriding this function to process transformations with auxillary inputs 
     76      */ 
     77      void virtual onInputReady(std::vector<CDataPacketPtr> data); 
     78      //! Current record in the filter 
     79      int record ; 
     80      //! Maximum number of records 
     81      int nrecords; 
     82      //! Temporary storage for output flux 
     83      CArray<double, 1> tmpData;  
     84 
     85 
     86  }; // class CSpatialTemporalFilter 
     87 
    5088 
    5189  /*! 
Note: See TracChangeset for help on using the changeset viewer.