$treeview $search $mathjax $extrastylesheet
otsdaq
v2_03_00
$projectbrief
|
$projectbrief
|
$searchbox |
00001 #ifndef _ots_EventBuilderApp_h_ 00002 #define _ots_EventBuilderApp_h_ 00003 00004 #include "otsdaq-core/CoreSupervisors/CoreSupervisorBase.h" 00005 //#include "otsdaq-core/SupervisorInfo/AllSupervisorInfo.h" 00006 // 00007 //#include "otsdaq-core/FiniteStateMachine/RunControlStateMachine.h" 00008 //#include "otsdaq-core/SOAPUtilities/SOAPMessenger.h" 00009 //#include "otsdaq-core/WorkLoopManager/WorkLoopManager.h" 00010 00011 #include "artdaq/Application/EventBuilderApp.hh" 00012 // 00013 //#pragma GCC diagnostic push 00014 //#pragma GCC diagnostic ignored "-Wdeprecated-declarations" 00015 //#include <xdaq/Application.h> 00016 //#pragma GCC diagnostic pop 00017 //#include <xgi/Method.h> 00018 //#include "otsdaq-core/Macros/XDAQApplicationMacros.h" 00019 // 00020 //#include <map> 00021 //#include <string> 00022 // 00023 //#include <memory> 00024 00025 namespace ots 00026 { 00027 // class ConfigurationManager; 00028 // class TableGroupKey; 00029 00033 // EventBuilderApp 00034 // This class provides the otsdaq interface to a single artdaq Event Builder, 00035 class EventBuilderApp : public CoreSupervisorBase 00036 // public xdaq::Application, 00037 // public SOAPMessenger, 00038 // public RunControlStateMachine 00039 { 00040 public: 00041 XDAQ_INSTANTIATOR(); 00042 00043 EventBuilderApp(xdaq::ApplicationStub* s); 00044 virtual ~EventBuilderApp(void); 00045 00046 void init(void); 00047 void destroy(void); 00048 00049 // void Default(xgi::Input* in, xgi::Output* out); 00050 // 00051 // // State Machine requests handlers 00052 // void stateMachineXgiHandler(xgi::Input* in, xgi::Output* out); 00053 // void stateMachineResultXgiHandler(xgi::Input* in, xgi::Output* 00054 // out); xoap::MessageReference stateMachineXoapHandler(xoap::MessageReference 00055 // message); xoap::MessageReference 00056 // stateMachineResultXoapHandler(xoap::MessageReference message); bool 00057 // stateMachineThread(toolbox::task::WorkLoop* workLoop); 00058 // 00059 // xoap::MessageReference stateMachineStateRequest(xoap::MessageReference message); 00060 // xoap::MessageReference stateMachineErrorMessageRequest( 00061 // xoap::MessageReference message); 00062 // 00063 // void stateInitial(toolbox::fsm::FiniteStateMachine& fsm); 00064 // void statePaused(toolbox::fsm::FiniteStateMachine& fsm); 00065 // void stateRunning(toolbox::fsm::FiniteStateMachine& fsm); 00066 // void stateHalted(toolbox::fsm::FiniteStateMachine& fsm); 00067 // void stateConfigured(toolbox::fsm::FiniteStateMachine& fsm); 00068 // void inError(toolbox::fsm::FiniteStateMachine& fsm); 00069 // 00070 00071 virtual void transitionConfiguring(toolbox::Event::Reference e) override; 00072 virtual void transitionHalting(toolbox::Event::Reference e) override; 00073 virtual void transitionInitializing(toolbox::Event::Reference e) override; 00074 virtual void transitionPausing(toolbox::Event::Reference e) override; 00075 virtual void transitionResuming(toolbox::Event::Reference e) override; 00076 virtual void transitionStarting(toolbox::Event::Reference e) override; 00077 virtual void transitionStopping(toolbox::Event::Reference e) override; 00078 // void enteringError(toolbox::Event::Reference e); 00079 00080 private: 00081 // WorkLoopManager stateMachineWorkLoopManager_; 00082 // toolbox::BSem stateMachineSemaphore_; 00083 // 00084 // AllSupervisorInfo allSupervisorInfo_; 00085 // ConfigurationManager* theConfigurationManager_; 00086 // const std::string XDAQContextTableName_; 00087 // std::string supervisorConfigurationPath_; 00088 // std::string supervisorContextUID_; 00089 // std::string supervisorApplicationUID_; 00090 00091 std::unique_ptr<artdaq::EventBuilderApp> theARTDAQEventBuilderInterface_; 00092 }; 00093 00094 } // namespace ots 00095 00096 #endif