#ifndef TSOFFTaskManager_h #define TSOFFTaskManager_h #include "ICOMETEvent.hxx" #include "ISOFFVTask.hxx" /// Container class for managing SOFF tasks. class ISOFFTaskManager{ public: ISOFFTaskManager(); virtual ~ISOFFTaskManager(){} /// Add tasks to manager void AddTask(ISOFFVTask* task){ fTasks.push_back(task); }; /// Initialization of task (at start of first file) int Initialize(); /// Method to be run on every event. /// Must be implemented in any inherited class. int Process(COMET::ICOMETEvent& event); /// Finalization of task (at end of last file). int Finalize(); /// Set options for SOFF tasks. bool SetOption( std::string option, std::string value ); protected: std::vector fTasks; bool fInitialized; }; #endif