CbmRoot
Loading...
Searching...
No Matches
runDigiEventSink.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: Pierre-Alain Loizeau [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()("StoreFullTs", bpo::value<bool>()->default_value(false),
18 "Store digis vectors with full TS in addition to selected events if true");
19 options.add_options()("OutFileName", bpo::value<std::string>()->default_value("mcbm_digis_events.root"),
20 "Name (full or relative path) of the output .root file ");
21 options.add_options()("EvtNameIn", bpo::value<std::string>()->default_value("events"),
22 "MQ channel name for built events");
23
24 options.add_options()("BypassConsecutiveTs", bpo::value<bool>()->default_value(false),
25 "Do not wait for having consecutive TS in buffer before writing to file if true");
26 options.add_options()("WriteMissingTs", bpo::value<bool>()->default_value(false),
27 "Write empty TS to file for the missing ones if true (irrelevant if bypass ON)");
28
29 options.add_options()("DisableCompression", bpo::value<bool>()->default_value(false),
30 "Disable the root file compression if true");
31 options.add_options()("TreeFileMaxSize", bpo::value<int64_t>()->default_value(10000000000LL),
32 "Set the maximum output tree size (~file size) in bytes");
33
34 options.add_options()("DigiEventInput", bpo::value<bool>()->default_value(false),
35 "Enable the input of CbmDigiEvents instead of raw data + CbmEvents if true");
36 options.add_options()("ExclusiveTrdExtract", bpo::value<bool>()->default_value(true),
37 "Enable loop based extraction of TRD digis to handle different 1D/2D sel windows if true");
38
39 options.add_options()("FillHistos", bpo::value<bool>()->default_value(false),
40 "Fill histograms and send them to histo server if true");
41
42 options.add_options()("PubFreqTs", bpo::value<uint32_t>()->default_value(100), "Histo publishing frequency in TS");
43 options.add_options()("PubTimeMin", bpo::value<double_t>()->default_value(1.0),
44 "Minimal time between two publishing");
45 options.add_options()("PubTimeMax", bpo::value<double_t>()->default_value(10.0),
46 "Maximal time between two publishing");
47 options.add_options()("HistosSuffix", bpo::value<std::string>()->default_value(""),
48 "Suffix added to folders, histos and canvases names, e.g. for multiple nodes usages");
49 options.add_options()("ChNameIn", bpo::value<std::string>()->default_value("histogram-in"),
50 "MQ channel name for histos");
51}
52
53FairMQDevicePtr getDevice(const FairMQProgOptions& /*config*/) { return new CbmDeviceDigiEventSink(); }
Hash for CbmL1LinkKey.
FairMQDevicePtr getDevice(const FairMQProgOptions &)
void addCustomOptions(bpo::options_description &options)