17 #include <TApplication.h>
19 #include "boost/program_options.hpp"
21 #include "FairMQLogger.h"
22 #include "FairMQParser.h"
23 #include "FairMQProgOptions.h"
26 #include "FairMQTransportFactoryNN.h"
28 #include "FairMQTransportFactoryZMQ.h"
33 int main(
int argc,
char** argv)
38 FairMQProgOptions config;
42 config.ParseAll(argc, argv);
44 std::string
filename = config.GetValue<std::string>(
"config-json-file");
45 std::string
id = config.GetValue<std::string>(
"id");
47 config.UserParser<FairMQParser::JSON>(
filename, id);
49 sink.fChannels = config.GetFairMQMap();
51 LOG(INFO) <<
"PID: " << getpid();
54 FairMQTransportFactory* transportFactory =
new FairMQTransportFactoryNN();
56 FairMQTransportFactory* transportFactory =
new FairMQTransportFactoryZMQ();
59 sink.SetTransport(transportFactory);
61 sink.SetProperty(PndMQTopix4Sink::Id,
id);
63 sink.ChangeState(
"INIT_DEVICE");
64 sink.WaitForEndOfState(
"INIT_DEVICE");
66 sink.ChangeState(
"INIT_TASK");
67 sink.WaitForEndOfState(
"INIT_TASK");
69 sink.ChangeState(
"RUN");
70 sink.InteractiveStateLoop();
72 catch (std::exception& e)
74 LOG(ERROR) << e.what();
75 LOG(INFO) <<
"Command line options are the following: ";
int main(int argc, char **argv)