1 #ifndef _ots_FESupervisor_h_
2 #define _ots_FESupervisor_h_
4 #include "otsdaq/CoreSupervisors/CoreSupervisorBase.h"
15 class FEVInterfacesManager;
35 xoap::MessageReference frontEndCommunicationRequest(xoap::MessageReference message);
37 virtual xoap::MessageReference workLoopStatusRequest(
38 xoap::MessageReference message)
override;
40 virtual void transitionConfiguring(toolbox::Event::Reference event)
override;
53 void publishData(
const char* dataPtr,
size_t dataSize);
54 bool isPublishingData()
const {
return dp_isInitialized_; }
70 const std::string& topic =
"test");
79 extractFEInterfacesManager();
85 std::string interfaceID;
86 std::thread::id threadID;
87 std::string outputArgs;
93 std::mutex asyncMacroMutex_;
94 std::vector<std::shared_ptr<AsyncMacroTask>> asyncMacroTasks_;
95 uint64_t asyncMacroTaskIDCounter_ = 0;
98 zmq::context_t dp_context_;
99 zmq::socket_t dp_socket_;
100 std::string dp_endpoint_;
101 std::string dp_topic_;
102 bool dp_isInitialized_ =
false;
void publishData(const char *dataPtr, size_t dataSize)
virtual void transitionHalting(toolbox::Event::Reference event) override
void initDataPublishing(const std::string &endpoint, const std::string &topic="test")
void closeDataPublishing(bool alsoCloseContext=true)
xoap::MessageReference macroMakerSupervisorRequest(xoap::MessageReference message)
defines used also by OtsConfigurationWizardSupervisor