- Timestamp:
- 11/15/17 12:14:34 (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
XIOS/dev/branch_openmp/src/transformation/Functions/reduction.hpp
r1155 r1328 25 25 //static std::map<StdString,EReductionType> ReductionOperations; 26 26 static std::map<StdString,EReductionType> *ReductionOperations_ptr; 27 #pragma omp threadprivate(ReductionOperations_ptr)28 27 29 28 public: 30 CReductionAlgorithm() { 29 CReductionAlgorithm() {} 31 30 32 31 /*! … … 43 42 \param [in/out] dataOut Array contains local data 44 43 \param [in/out] flagInitial vector of boolean to mark the local index already initialized. True means there is a need for initialization 44 \param [in] firstPass indicate if it is the first time the apply funtion is called for a same transformation, in order to make a clean initialization 45 45 */ 46 46 virtual void apply(const std::vector<std::pair<int,double> >& localIndex, … … 48 48 CArray<double,1>& dataOut, 49 49 std::vector<bool>& flagInitial, 50 bool ignoreMissingValue ) = 0;50 bool ignoreMissingValue, bool firstPass) = 0; 51 51 /*! 52 52 Update local data … … 62 62 typedef std::map<EReductionType, CreateOperationCallBack> CallBackMap; 63 63 static CallBackMap* reductionCreationCallBacks_; 64 #pragma omp threadprivate(reductionCreationCallBacks_)65 64 66 65 static bool registerOperation(EReductionType reduceType, CreateOperationCallBack createFn); … … 71 70 static bool initReductionOperation(); 72 71 static bool _dummyInit; 73 #pragma omp threadprivate(_dummyInit)74 72 }; 75 73
Note: See TracChangeset
for help on using the changeset viewer.