1 #ifndef _ots_DataManager_h_
2 #define _ots_DataManager_h_
4 #include "otsdaq/Configurable/Configurable.h"
5 #include "otsdaq/DataManager/CircularBuffer.h"
6 #include "otsdaq/FiniteStateMachine/VStateMachine.h"
7 #include "otsdaq/Macros/CoutMacros.h"
8 #include "otsdaq/MessageFacility/MessageFacility.h"
18 class DataProducerBase;
20 class CircularBufferBase;
29 const std::string& supervisorConfigurationPath);
34 virtual void halt(
void);
35 virtual void pause(
void);
36 virtual void resume(
void);
37 virtual void start(std::string runNumber);
38 virtual void stop(
void);
40 template<
class D,
class H>
41 void configureBuffer(
const std::string& bufferUID)
44 buffers_[bufferUID].status_ = Initialized;
48 const std::string& bufferUID,
52 const std::string& bufferUID,
57 const std::string& feProducerID);
63 void dumpStatus(std::ostream* out = (std::ostream*)&(std::cout))
const;
70 void configureAllBuffers(
void);
71 void startAllBuffers(
const std::string& runNumber);
72 void stopAllBuffers(
void);
73 void resumeAllBuffers(
void);
74 void pauseAllBuffers(
void);
76 void configureBuffer(
const std::string& bufferUID);
77 void startBuffer(
const std::string& bufferUID, std::string runNumber);
78 void stopBuffer(
const std::string& bufferUID);
79 void resumeBuffer(
const std::string& bufferUID);
80 void pauseBuffer(
const std::string& bufferUID);
91 std::vector<DataProducerBase*> producers_;
92 std::vector<DataConsumer*> consumers_;
95 std::map<std::string ,
104 const std::map<std::string ,
Buffer>& getBuffers(
void)
const
void unregisterFEProducer(const std::string &bufferID, const std::string &feProducerID)
void registerProducer(const std::string &bufferUID, DataProducerBase *producer)
The data manager becomes the owner of the producer object!
bool parentSupervisorHasFrontends_
void dumpStatus(std::ostream *out=(std::ostream *)&(std::cout)) const
void registerConsumer(const std::string &bufferUID, DataConsumer *consumer)
The data manager becomes the owner of the consumer object!
void destroyBuffers(void)
!!!!!Delete all Buffers and all the pointers of the producers and consumers
virtual void configure(void)
State Machine Methods.
defines used also by OtsConfigurationWizardSupervisor