2#include <boost/shared_ptr.hpp>
3#include <boost/container/deque.hpp>
4#include "AbsControlModule.h"
5#include "enum_macros.h"
11 #define Status_ENUM(DO,C) \
19 DO(PL_TERMINATING,C) \
void pause()
Definition PipeLine.cpp:182
const char * getStatus()
Definition PipeLine.cpp:300
Status
Definition PipeLine.h:22
@ Status_ENUM
Definition PipeLine.h:23
PipeLine(std::string name)
Definition PipeLine.h:37
void step()
Definition PipeLine.cpp:212
void stop()
Definition PipeLine.cpp:230
void wait_for_all(bool ignoreStatus=false)
Definition PipeLine.cpp:251
container_type modules
Definition PipeLine.h:33
boost::shared_ptr< Module > controlModule
Definition PipeLine.h:30
Status myStatus
Definition PipeLine.h:27
bool mPlay
Definition PipeLine.h:26
~PipeLine()
Definition PipeLine.cpp:7
void play()
Definition PipeLine.cpp:195
void interrupt_wait_for_all()
Definition PipeLine.cpp:272
void run_all_threaded_withpause()
Definition PipeLine.cpp:175
bool checkCyclicDependency()
Definition PipeLine.cpp:45
boost::shared_ptr< Module > item_type
Definition PipeLine.h:28
void term()
Definition PipeLine.cpp:146
bool appendModule(boost::shared_ptr< Module > pModule)
Definition PipeLine.cpp:12
bool init()
Definition PipeLine.cpp:103
bool addControlModule(boost::shared_ptr< AbsControlModule >cModule)
Definition PipeLine.cpp:35
bool validate()
Definition PipeLine.cpp:88
boost::container::deque< item_type > container_type
Definition PipeLine.h:29
std::string mName
Definition PipeLine.h:32
void run_all_threaded()
Definition PipeLine.cpp:157
std::string getName()
Definition PipeLine.h:39
void flushAllQueues(bool flushControlModuleQ=false)
Definition PipeLine.cpp:308