42     FairMQProgOptions config;
 
   44     std::string outputFileName;
 
   46     options_description samplerOptions(
"Sampler options");
 
   47         samplerOptions.add_options()
 
   48                 (
"fileName", value<string>(&outputFileName)->default_value(
"FileSinkHits.root"), 
"Output file name");
 
   50         config.AddToCmdLineOptions(samplerOptions);
 
   54         config.ParseAll(argc, argv);
 
   56         std::string 
filename = config.GetValue<std::string>(
"config-json-file");
 
   57         std::string 
id = config.GetValue<std::string>(
"id");
 
   59         outputFileName = config.GetStringValue(
"fileName");
 
   61         LOG(INFO) << 
"OutputFileName: " << outputFileName;
 
   65         config.UserParser<FairMQParser::JSON>(
filename, id);
 
   67         sink.fChannels = config.GetFairMQMap();
 
   69         LOG(INFO) << 
"PID: " << getpid();
 
   72         FairMQTransportFactory* transportFactory = 
new FairMQTransportFactoryNN();
 
   74         FairMQTransportFactory* transportFactory = 
new FairMQTransportFactoryZMQ();
 
   77         sink.SetTransport(transportFactory);
 
   79         sink.SetProperty(FairMQDevice::Id, 
id);
 
   81         sink.ChangeState(
"INIT_DEVICE");
 
   82         sink.WaitForEndOfState(
"INIT_DEVICE");
 
   84         sink.ChangeState(
"INIT_TASK");
 
   85         sink.WaitForEndOfState(
"INIT_TASK");
 
   89         sink.ChangeState(
"RUN");
 
   90         sink.InteractiveStateLoop();
 
   92     catch (std::exception& e)
 
   94         LOG(ERROR) << e.what();
 
   95         LOG(INFO) << 
"Command line options are the following: ";
 
virtual void SetFileName(std::string fileName)
virtual void InitOutputFile(TString defaultId="100")