Last change
on this file since 2348 was
637,
checked in by rlacroix, 9 years ago
|
Add the base classes for the new filter framework.
|
File size:
814 bytes
|
Rev | Line | |
---|
[637] | 1 | #ifndef __XIOS_IFilterEngine__ |
---|
| 2 | #define __XIOS_IFilterEngine__ |
---|
| 3 | |
---|
| 4 | #include "data_packet.hpp" |
---|
| 5 | |
---|
| 6 | namespace xios |
---|
| 7 | { |
---|
| 8 | /*! |
---|
| 9 | * An engine filter processes the data handled by a filter. |
---|
| 10 | */ |
---|
| 11 | class IFilterEngine |
---|
| 12 | { |
---|
| 13 | public: |
---|
| 14 | /*! |
---|
| 15 | * Processes the data and returns a new packet if needed. |
---|
| 16 | * Temporal filter engines will not return a new packet |
---|
| 17 | * for every call being that they accumulate data. |
---|
| 18 | * The filter engine is not allowed to modify the data |
---|
| 19 | * in place. |
---|
| 20 | * |
---|
| 21 | * \param data a vector of packets corresponding to each slot |
---|
| 22 | * \return a new data packet or null if the engine is accumulating data |
---|
| 23 | */ |
---|
| 24 | CDataPacketPtr virtual apply(std::vector<CDataPacketPtr> data) = 0; |
---|
| 25 | }; // class IFilterEngine |
---|
| 26 | } // namespace xios |
---|
| 27 | |
---|
| 28 | #endif //__XIOS_IFilterEngine__ |
---|
Note: See
TracBrowser
for help on using the repository browser.