CbmRoot
Loading...
Searching...
No Matches
runBuildDigiEvents.cxx
Go to the documentation of this file.
1/* Copyright (C) 2021 Facility for Antiproton and Ion Research in Europe, Darmstadt
2 SPDX-License-Identifier: GPL-3.0-only
3 Authors: Dominik Smith [committer] */
4
6
7#include <iomanip>
8#include <string>
9
10#include "runFairMQDevice.h"
11
12namespace bpo = boost::program_options;
13using namespace std;
14
15void addCustomOptions(bpo::options_description& options)
16{
17 options.add_options()("FillHistos", bpo::value<bool>()->default_value(true),
18 "Fill histograms and send them to histo server if true");
19 options.add_options()("IgnTsOver", bpo::value<bool>()->default_value(false), "Ignore TS overlap if true");
20 options.add_options()("EvtOverMode", bpo::value<std::string>()->default_value("NoOverlap"),
21 "Set the event overlap mode, use string matching an EOverlapMode ");
22 options.add_options()("RefDet", bpo::value<std::string>()->default_value("kBmon"),
23 "Set the reference (seed) detector, use string matching an ECbmModuleId ");
24 options.add_options()("AddDet", bpo::value<std::vector<std::string>>()->multitoken()->composing(),
25 "Add a detector for digis selection, use string matching an ECbmModuleId ");
26 options.add_options()("DelDet", bpo::value<std::vector<std::string>>()->multitoken()->composing(),
27 "Remove a detector for digis selection, use string matching an "
28 "ECbmModuleId ");
29 options.add_options()("SetTrigWin", bpo::value<std::vector<std::string>>()->multitoken()->composing(),
30 "Set trigger window for selected detector, use string matching "
31 "ECbmModuleId,dWinBeg,dWinEnd e.g. kSts,-10.5,100.0");
32 options.add_options()("SetTrigMinNb", bpo::value<std::vector<std::string>>()->multitoken()->composing(),
33 "Set minimum number of digis for selected detector, use string matching "
34 "ECbmModuleId,uMinNb e.g. kTof,10");
35 options.add_options()("SetTrigMaxNb", bpo::value<std::vector<std::string>>()->multitoken()->composing(),
36 "Set maximum number of digis for selected detector, use string matching "
37 "ECbmModuleId,uMaxNb e.g. kTof,10");
38 options.add_options()("SetTrigMinLayersNb", bpo::value<std::vector<std::string>>()->multitoken()->composing(),
39 "Set minimum number of fired layers for selected detector, use string matching "
40 "ECbmModuleId,uMinLayersNb e.g. kTof,3");
41 options.add_options()("SetHistMaxDigiNb", bpo::value<std::vector<std::string>>()->multitoken()->composing(),
42 "Set max nb of digi in histograms for selected detector, use string matching "
43 "ECbmModuleId,dMaxDigiNb e.g. kTof,1000");
44 options.add_options()("DoNotSend", bpo::value<bool>()->default_value(false), "Disable the sending of data if true");
45 options.add_options()("DigiEventOutput", bpo::value<bool>()->default_value(false),
46 "Enable output of CbmDigiEvents instead of raw data + CbmEvents if true");
47 options.add_options()("TsNameIn", bpo::value<std::string>()->default_value("unpts_0"),
48 "MQ channel name for unpacked TS data");
49 options.add_options()("EvtNameOut", bpo::value<std::string>()->default_value("events"),
50 "MQ channel name for built events");
51 options.add_options()("ChNameIn", bpo::value<std::string>()->default_value("histogram-in"),
52 "MQ channel name for histos");
53 options.add_options()("ChNameHistCfg", bpo::value<std::string>()->default_value("histo-conf"),
54 "MQ channel name for histos config");
55 options.add_options()("ChNameCanvCfg", bpo::value<std::string>()->default_value("canvas-conf"),
56 "MQ channel name for canvases config");
57 options.add_options()("PubFreqTs", bpo::value<uint32_t>()->default_value(100), "Histo publishing frequency in TS");
58 options.add_options()("PubTimeMin", bpo::value<double_t>()->default_value(1.0),
59 "Minimal time between two publishing");
60 options.add_options()("PubTimeMax", bpo::value<double_t>()->default_value(10.0),
61 "Maximal time between two publishing");
62}
63
64FairMQDevicePtr getDevice(const FairMQProgOptions& /*config*/) { return new CbmDeviceBuildDigiEvents(); }
Hash for CbmL1LinkKey.
FairMQDevicePtr getDevice(const FairMQProgOptions &)
void addCustomOptions(bpo::options_description &options)