Ignore:
Timestamp:
11/19/18 15:52:54 (5 years ago)
Author:
yushan
Message:

branch_openmp merged with trunk r1597

File:
1 edited

Legend:

Unmodified
Added
Removed
  • XIOS/dev/dev_trunk_omp/src/transformation/Functions/reduction.cpp

    r979 r1601  
    99 
    1010CReductionAlgorithm::CallBackMap* CReductionAlgorithm::reductionCreationCallBacks_ = 0; 
    11 std::map<StdString,EReductionType> CReductionAlgorithm::ReductionOperations = std::map<StdString,EReductionType>(); 
     11std::map<StdString,EReductionType> *CReductionAlgorithm::ReductionOperations_ptr = 0; 
     12 
    1213bool CReductionAlgorithm::initReductionOperation(std::map<StdString,EReductionType>& m) 
    1314{ 
     
    2930} 
    3031 
    31 bool CReductionAlgorithm::_dummyInit = CReductionAlgorithm::initReductionOperation(CReductionAlgorithm::ReductionOperations); 
     32bool CReductionAlgorithm::initReductionOperation() 
     33{ 
     34  CReductionAlgorithm::ReductionOperations_ptr = new std::map<StdString,EReductionType>(); 
     35  // So so stupid way to intialize operation but it works ... 
     36  (*CReductionAlgorithm::ReductionOperations_ptr)["sum"] = TRANS_REDUCE_SUM; 
     37  CSumReductionAlgorithm::registerTrans(); 
     38 
     39  (*CReductionAlgorithm::ReductionOperations_ptr)["min"] = TRANS_REDUCE_MIN; 
     40  CMinReductionAlgorithm::registerTrans(); 
     41 
     42  (*CReductionAlgorithm::ReductionOperations_ptr)["max"] = TRANS_REDUCE_MAX; 
     43  CMaxReductionAlgorithm::registerTrans(); 
     44 
     45  (*CReductionAlgorithm::ReductionOperations_ptr)["extract"] = TRANS_REDUCE_EXTRACT; 
     46  CExtractReductionAlgorithm::registerTrans(); 
     47 
     48  (*CReductionAlgorithm::ReductionOperations_ptr)["average"] = TRANS_REDUCE_AVERAGE; 
     49  CAverageReductionAlgorithm::registerTrans(); 
     50} 
     51 
    3252 
    3353CReductionAlgorithm* CReductionAlgorithm::createOperation(EReductionType reduceType) 
Note: See TracChangeset for help on using the changeset viewer.