CbmRoot
Loading...
Searching...
No Matches
MainConfig.h
Go to the documentation of this file.
1/* Copyright (C) 2023 GSI Helmholtzzentrum fuer Schwerionenforschung, Darmstadt
2 SPDX-License-Identifier: GPL-3.0-only
3 Authors: Volker Friese [committer] */
4
5
6#ifndef ALGO_BASE_MAINCONFIG_H_
7#define ALGO_BASE_MAINCONFIG_H_
8
9#include "CbmDefs.h"
10
11#include <map>
12
13namespace cbm::algo
14{
15
21 class MainConfig {
22 public: // methods
24 MainConfig() = default;
25
27 ~MainConfig() = default;
28
30 void LoadYaml(const std::string& filename);
31
33 void SaveYaml(const std::string& filename);
34
35 public: // data members
36 // --- Digi trigger
38 double fTriggerWin = 0.; // Trigger window size [ns]
39 size_t fTriggerThreshold = 0; // Minimum number if digis in trigger window
40 double fTriggerDeadTime = 0.; // Minimal time between two trigger [ns]
41
42 // --- Event builder: (detector -> (tMin, tMax))
43 std::map<ECbmModuleId, std::pair<double, double>> fEvtbuildWindows = {};
44
45 // --- Event selector
49
50 // --- Branch persistence in output file
51 bool fStoreTimeslice = false;
52 bool fStoreTrigger = false;
53 bool fStoreEvents = false;
54
55 // --- QA publishing
57 };
58
59} /* namespace cbm::algo */
60
61#endif /* ALGO_BASE_MAINCONFIG_H_ */
ECbmModuleId
Definition CbmDefs.h:39
@ kNotExist
If not found.
Configuration of online data processing.
Definition MainConfig.h:21
void SaveYaml(const std::string &filename)
Save to YAML file.
ECbmModuleId fTriggerDet
Definition MainConfig.h:37
int32_t fHttpServerRefreshRate
Definition MainConfig.h:56
void LoadYaml(const std::string &filename)
Load from YAML file.
MainConfig()=default
Constructor.
~MainConfig()=default
Constructor.
std::map< ECbmModuleId, std::pair< double, double > > fEvtbuildWindows
Definition MainConfig.h:43