Ignore:
Timestamp:
12/06/17 08:34:41 (6 years ago)
Author:
rlacroix
Message:

Support reentrant workflows and workflows with temporal integration for fields read from files.

Location:
XIOS/dev/XIOS_DEV_CMIP6/src/filter
Files:
13 edited

Legend:

Unmodified
Added
Removed
  • XIOS/dev/XIOS_DEV_CMIP6/src/filter/file_server_writer_filter.cpp

    r1158 r1358  
    1919  } 
    2020 
     21  bool CFileServerWriterFilter::mustAutoTrigger() const 
     22  { 
     23    return true; 
     24  } 
     25 
    2126  bool CFileServerWriterFilter::isDataExpected(const CDate& date) const 
    2227  { 
  • XIOS/dev/XIOS_DEV_CMIP6/src/filter/file_server_writer_filter.hpp

    r1158 r1358  
    2323      CFileServerWriterFilter(CGarbageCollector& gc, CField* field); 
    2424 
     25      /*! 
     26       * Tests if the filter must auto-trigger. 
     27       * 
     28       * \return true if the filter must auto-trigger 
     29       */ 
     30      bool virtual mustAutoTrigger() const; 
     31 
     32      /*! 
     33       * Tests whether data is expected for the specified date. 
     34       * 
     35       * \param date the date associated to the data 
     36       */ 
    2537      bool virtual isDataExpected(const CDate& date) const; 
     38 
    2639    protected: 
    2740      /*! 
  • XIOS/dev/XIOS_DEV_CMIP6/src/filter/file_writer_filter.cpp

    r1251 r1358  
    3737  } 
    3838 
     39  bool CFileWriterFilter::mustAutoTrigger() const 
     40  { 
     41    return true; 
     42  } 
     43 
    3944  bool CFileWriterFilter::isDataExpected(const CDate& date) const 
    4045  { 
  • XIOS/dev/XIOS_DEV_CMIP6/src/filter/file_writer_filter.hpp

    r1158 r1358  
    2424 
    2525      /*! 
     26       * Tests if the filter must auto-trigger. 
     27       * 
     28       * \return true if the filter must auto-trigger 
     29       */ 
     30      bool virtual mustAutoTrigger() const; 
     31 
     32      /*! 
    2633       * Tests whether data is expected for the specified date. 
    2734       * 
  • XIOS/dev/XIOS_DEV_CMIP6/src/filter/filter.cpp

    r1158 r1358  
    4141  } 
    4242 
     43  bool CFilter::mustAutoTrigger() const 
     44  { 
     45    return COutputPin::mustAutoTrigger(); 
     46  } 
     47 
    4348  bool CFilter::isDataExpected(const CDate& date) const 
    4449  { 
  • XIOS/dev/XIOS_DEV_CMIP6/src/filter/filter.hpp

    r1158 r1358  
    4949 
    5050      /*! 
     51       * Tests if the filter must auto-trigger. 
     52       * 
     53       * \return true if the filter must auto-trigger 
     54       */ 
     55      bool virtual mustAutoTrigger() const; 
     56 
     57      /*! 
    5158       * Tests whether data is expected for the specified date. 
    5259       * 
  • XIOS/dev/XIOS_DEV_CMIP6/src/filter/input_pin.hpp

    r1158 r1358  
    6060 
    6161      /*! 
     62       * Tests if the pin must auto-trigger. 
     63       * 
     64       * \return true if the pin must auto-trigger 
     65       */ 
     66      bool virtual mustAutoTrigger() const = 0; 
     67 
     68      /*! 
    6269       * Tests whether data is expected for the specified date. 
    6370       * 
  • XIOS/dev/XIOS_DEV_CMIP6/src/filter/output_pin.cpp

    r1158 r1358  
    6666  } 
    6767 
     68  bool COutputPin::mustAutoTrigger() const 
     69  { 
     70    std::vector<std::pair<boost::shared_ptr<CInputPin>, size_t> >::const_iterator it, itEnd; 
     71    for (it = outputs.begin(), itEnd = outputs.end(); it != itEnd; ++it) 
     72    { 
     73      if (it->first->mustAutoTrigger()) 
     74        return true; 
     75    } 
     76 
     77    return false; 
     78  } 
     79 
    6880  void COutputPin::setOutputTriggers() 
    6981  { 
  • XIOS/dev/XIOS_DEV_CMIP6/src/filter/output_pin.hpp

    r1158 r1358  
    4444       */ 
    4545      bool virtual canBeTriggered() const; 
     46 
     47      /*! 
     48       * Tests if the pin must auto-trigger. 
     49       * 
     50       * \return true if the pin must auto-trigger 
     51       */ 
     52      bool virtual mustAutoTrigger() const; 
    4653 
    4754      /*! 
  • XIOS/dev/XIOS_DEV_CMIP6/src/filter/store_filter.cpp

    r1252 r1358  
    111111  } 
    112112 
     113  bool CStoreFilter::mustAutoTrigger() const 
     114  { 
     115    return false; 
     116  } 
     117 
    113118  bool CStoreFilter::isDataExpected(const CDate& date) const 
    114119  { 
  • XIOS/dev/XIOS_DEV_CMIP6/src/filter/store_filter.hpp

    r1201 r1358  
    5353 
    5454      /*! 
     55       * Tests if the filter must auto-trigger. 
     56       * 
     57       * \return true if the filter must auto-trigger 
     58       */ 
     59      bool virtual mustAutoTrigger() const; 
     60 
     61      /*! 
    5562       * Tests whether data is expected for the specified date. 
    5663       * 
  • XIOS/dev/XIOS_DEV_CMIP6/src/filter/temporal_filter.cpp

    r1302 r1358  
    8484  } 
    8585 
     86  bool CTemporalFilter::mustAutoTrigger() const 
     87  { 
     88    return true; 
     89  } 
     90 
    8691  bool CTemporalFilter::isDataExpected(const CDate& date) const 
    8792  { 
  • XIOS/dev/XIOS_DEV_CMIP6/src/filter/temporal_filter.hpp

    r1302 r1358  
    4141 
    4242      /*! 
     43       * Tests if the filter must auto-trigger. 
     44       * 
     45       * \return true if the filter must auto-trigger 
     46       */ 
     47      bool virtual mustAutoTrigger() const; 
     48 
     49      /*! 
    4350       * Tests whether data is expected for the specified date. 
    4451       * 
Note: See TracChangeset for help on using the changeset viewer.