$treeview $search $mathjax $extrastylesheet
artdaq
v3_04_00
$projectbrief
|
$projectbrief
|
$searchbox |
00001 #ifndef artdaq_Application_MPI2_DispatcherApp_hh 00002 #define artdaq_Application_MPI2_DispatcherApp_hh 00003 00004 #include <future> 00005 00006 #include "artdaq/Application/DispatcherCore.hh" 00007 #include "artdaq/Application/Commandable.hh" 00008 00009 namespace artdaq 00010 { 00011 class DispatcherApp; 00012 } 00013 00017 class artdaq::DispatcherApp : public artdaq::Commandable 00018 { 00019 public: 00023 DispatcherApp(); 00024 00028 DispatcherApp(DispatcherApp const&) = delete; 00029 00033 virtual ~DispatcherApp() = default; 00034 00039 DispatcherApp& operator=(DispatcherApp const&) = delete; 00040 00041 // these methods provide the operations that are used by the state machine 00047 bool do_initialize(fhicl::ParameterSet const& pset, uint64_t, uint64_t) override; 00048 00054 bool do_start(art::RunID id, uint64_t, uint64_t) override; 00055 00060 bool do_stop(uint64_t, uint64_t) override; 00061 00066 bool do_pause(uint64_t, uint64_t) override; 00067 00072 bool do_resume(uint64_t, uint64_t) override; 00073 00078 bool do_shutdown(uint64_t) override; 00079 00084 bool do_soft_initialize(fhicl::ParameterSet const&, uint64_t, uint64_t) override; 00085 00090 bool do_reinitialize(fhicl::ParameterSet const&, uint64_t, uint64_t) override; 00091 00097 std::string report(std::string const& which) const override; 00098 00104 std::string register_monitor(fhicl::ParameterSet const& info) override; 00105 00111 std::string unregister_monitor(std::string const& label) override; 00112 00113 private: 00114 std::unique_ptr<DispatcherCore> Dispatcher_ptr_; 00115 }; 00116 00117 #endif