source: XIOS/dev/dev_trunk_omp/src/filter/pass_through_filter.hpp @ 1681

Last change on this file since 1681 was 1681, checked in by yushan, 5 years ago

MARK: Dynamic workflow graph developement. Branch up to date with trunk @1676. Bug fixed

File size: 1.0 KB
Line 
1#ifndef __XIOS_CPassThroughFilter__
2#define __XIOS_CPassThroughFilter__
3
4#include "filter.hpp"
5
6namespace xios
7{
8  /*!
9   * A simple pass-through filter with one input slot.
10   * The pass-through filter is used to handle references on a field.
11   */
12  class CPassThroughFilter : public CFilter, public IFilterEngine
13  {
14    public:
15      /*!
16       * Constructs a pass-through filter with the one input slot.
17       *
18       * \param gc the associated garbage collector
19       */
20      CPassThroughFilter(CGarbageCollector& gc);
21
22      inline StdString GetName(void) {return StdString("Pass through filter");};
23
24    protected:
25      /*!
26       * Returns the input packet without making any modification to it.
27       *
28       * \param data a vector of packets corresponding to each slot
29       * \return the untouched source data packet
30       */
31      CDataPacketPtr virtual apply(std::vector<CDataPacketPtr> data);
32      void virtual buildGraph(std::vector<CDataPacketPtr> data);
33  }; // class CPassThroughFilter
34} // namespace xios
35
36#endif //__XIOS_CPassThroughFilter__
Note: See TracBrowser for help on using the repository browser.