9 #ifndef FAIR_MQ_DEVICERUNNER_H 10 #define FAIR_MQ_DEVICERUNNER_H 12 #include <fairmq/EventManager.h> 13 #include <fairmq/PluginManager.h> 14 #include <FairMQDevice.h> 15 #include <FairMQLogger.h> 16 #include <options/FairMQProgOptions.h> 57 auto RunWithExceptionHandlers() -> int;
60 auto AddHook(std::function<
void(
DeviceRunner&)> hook) ->
void { fEvents.Subscribe<H>(
"runner", hook); }
62 auto RemoveHook() ->
void { fEvents.Unsubscribe<H>(
"runner"); }
64 std::vector<std::string> fRawCmdLineArgs;
65 std::shared_ptr<PluginManager> fPluginManager;
67 std::shared_ptr<FairMQDevice> fDevice;
Utility class to facilitate a convenient top-level device launch/shutdown.
Definition: DeviceRunner.h:51
Definition: EventManager.h:33
Definition: DeviceRunner.h:75
Manages event callbacks from different subscribers.
Definition: EventManager.h:53
Definition: FairMQProgOptions.h:41
Definition: DeviceRunner.h:77
Definition: DeviceRunner.h:78
Definition: DeviceRunner.h:76
Definition: DeviceRunner.h:23