CbmRoot
Loading...
Searching...
No Matches
CbmRichUnpackConfig.h
Go to the documentation of this file.
1/* Copyright (C) 2021 Goethe-University Frankfurt, Frankfurt
2 SPDX-License-Identifier: GPL-3.0-only
3 Authors: Pascal Raisig [committer] */
4
18#ifndef CbmRichUnpackConfig_H
19#define CbmRichUnpackConfig_H
20
21#include "CbmRecoUnpackConfig.tmpl"
22#include "CbmRichDigi.h"
25
26#include <Rtypes.h>
27#include <RtypesCore.h>
28
29#include <cstddef>
30#include <cstdint>
31#include <memory>
32#include <vector>
33
35{
36 v02,
37 v03
38};
39
41 public CbmRecoUnpackConfig<CbmRichUnpackAlgoBase, CbmRichDigi, std::nullptr_t, std::nullptr_t> {
42
43 public:
51 CbmRichUnpackConfig(std::string detGeoSetupTag, UInt_t runid = 0);
52
57 virtual ~CbmRichUnpackConfig();
58
61
64
65 // Getters
67 std::shared_ptr<CbmRichUnpackMonitor> GetMonitor() { return fMonitor; }
68
69
74 void InitAlgo();
75
76 // Setters
77 void MaskDiRICH(Int_t DiRICH) { fMaskedDiRICHes.push_back(DiRICH); }
78
80
82 void SetMonitor(std::shared_ptr<CbmRichUnpackMonitor> value) { fMonitor = value; }
83
85 void DoTotOffsetCorrection(Bool_t activate = true) { fbDoToTCorr = activate; }
86
87 protected:
93 virtual std::shared_ptr<CbmRichUnpackAlgoBase> chooseAlgo();
94
95 std::vector<Int_t> fMaskedDiRICHes = {};
96
98 std::shared_ptr<CbmRichUnpackMonitor> fMonitor = nullptr;
99
102
103 Bool_t fbDoToTCorr = true; // kTRUE activates ToT correction from Parameterfile
104
105 private:
106 ClassDef(CbmRichUnpackConfig, 3)
107};
108
109#endif // CbmRichUnpackConfig_H
CbmRichUnpackerVersion
Monitoring historgrams class for Rich unpacker.
CbmRichUnpackConfig & operator=(const CbmRichUnpackConfig &)=delete
Assignment operator - not implemented.
std::shared_ptr< CbmRichUnpackMonitor > GetMonitor()
Get the potentially added monitor.
void SetUnpackerVersion(CbmRichUnpackerVersion vers)
CbmRichUnpackerVersion fUnpackerVersion
Selector of Unpacker Version.
void MaskDiRICH(Int_t DiRICH)
virtual std::shared_ptr< CbmRichUnpackAlgoBase > chooseAlgo()
Choose the derived unpacker algorithm to be used for the DAQ output to Digi translation....
void DoTotOffsetCorrection(Bool_t activate=true)
(De-) Activate Tot offset correction of digis
std::shared_ptr< CbmRichUnpackMonitor > fMonitor
pointer to the monitor object
virtual ~CbmRichUnpackConfig()
Destroy the Cbm Trd Unpack Task object.
std::vector< Int_t > fMaskedDiRICHes
CbmRichUnpackConfig(std::string detGeoSetupTag, UInt_t runid=0)
Create the Cbm Trd Unpack Task object.
CbmRichUnpackConfig(const CbmRichUnpackConfig &)=delete
Copy constructor - not implemented.
void SetMonitor(std::shared_ptr< CbmRichUnpackMonitor > value)
Add a monitor to the unpacker.
void InitAlgo()
Initialize the algorithm, should include all steps needing te parameter objects to be present....