CbmRoot
CbmMcbm2018UnpackerAlgoRich.h
Go to the documentation of this file.
1 
7 #ifndef CbmMcbm2018UnpackerAlgoRich_H
8 #define CbmMcbm2018UnpackerAlgoRich_H
9 
10 #include "CbmStar2019Algo.h" // mother class
11 
12 // STD
13 #include <map>
14 #include <vector>
15 
16 // ROOT
17 #include <TArrayD.h>
18 #include <TH2D.h>
19 
20 // CbmRoot
22 #include "CbmRichDigi.h"
23 
25 class CbmMcbm2018RichPar;
26 
27 #define RISINGEDGEID 1
28 #define FALLINGEDGEID 0
29 
30 #define TOTMIN -20.
31 #define TOTMAX 100.
32 
34 
35 enum class RichErrorType {
36  mtsError,
37  tdcHeader,
38  tdcTrailer,
39  ctsHeader,
40  ctsTrailer,
42 };
43 
44 class CbmMcbm2018UnpackerAlgoRich : public CbmStar2019Algo<CbmRichDigi> {
45 public:
47 
49 
50  virtual Bool_t Init();
51 
52  virtual void Reset();
53 
54  virtual void Finish();
55 
56  virtual Bool_t InitContainers();
57 
58  virtual Bool_t ReInitContainers();
59 
60  virtual TList* GetParList();
61 
62  Bool_t InitParameters();
63 
67  void AddMsComponentToList(size_t component, UShort_t usDetectorId);
68 
69  virtual Bool_t ProcessTs(const fles::Timeslice& ts);
70 
71  virtual Bool_t ProcessTs(const fles::Timeslice& ts, size_t component);
72 
73  virtual Bool_t
74  ProcessMs(const fles::Timeslice& ts, size_t uMsCompIdx, size_t uMsIdx);
75 
76  Bool_t DebugMs(const fles::Timeslice& ts, size_t uMsCompIdx, size_t uMsIdx);
77 
78  void SetMonitorMode(Bool_t bFlagIn = kTRUE) { fbMonitorMode = bFlagIn; }
79 
80  inline void SetTimeOffsetNs(Double_t dOffsetIn = 0.0) {
81  fdTimeOffsetNs = dOffsetIn;
82  }
83 
84  inline void DoTotCorr(Bool_t bDoToTCorr = kTRUE) { fbDoToTCorr = bDoToTCorr; }
85 
86  void SetRawDataMode(Bool_t bDebug = kFALSE) { fRawDataMode = bDebug; }
87 
88  Int_t Debug(const uint8_t* ptr, const size_t size);
89 
90 private:
96  void InitStorage();
97 
98  void ProcessMicroslice(size_t const size, uint8_t const* const ptr);
99 
103  Int_t ProcessTRBevent(size_t const size, uint8_t const* const ptr);
104 
108  Int_t ProcessTRBeventHeader(size_t const size, uint8_t const* const ptr);
109 
114  Int_t ProcessSKIPsubevent(size_t const size, uint8_t const* const ptr);
115 
116  Int_t ProcessCTSsubevent(size_t const size, uint8_t const* const ptr);
117 
118  Int_t ProcessTRBsubevent(size_t const size, uint8_t const* const ptr);
119 
124  Int_t ProcessTRBsubsubevent(size_t const size,
125  uint8_t const* const ptr,
126  Int_t const hubOffset,
127  size_t const hubSize);
128 
132  Int_t
133  ProcessTDCword(uint8_t const* const ptr, Int_t const word, size_t const size);
134 
138  void ProcessTimestampWord(Int_t tdcData);
139 
143  void WriteOutputDigi(Int_t fpgaID,
144  Int_t channel,
145  Double_t time,
146  Double_t tot,
147  uint64_t MSidx);
148 
152  void FinalizeTs();
153 
157  void ErrorMsg(uint16_t errbits, RichErrorType type, uint16_t tdcAddr = 0);
158 
159  Int_t GetPixelUID(Int_t fpgaID, Int_t ch) const {
160  // First 16 bits are used for the FPGA ID, then
161  // 8 bits unused and then 8 bits are used for the channel
162  return ((fpgaID << 16) | (ch & 0x00FF));
163  }
164 
165  void findTDCAlignmentError(uint8_t const* const ptr, size_t const size);
166 
167 private: // data members
169  Bool_t
171 
172  Bool_t
174 
175  Bool_t fRawDataMode;
176 
177  Bool_t fError;
178 
179  TrbNetState fTrbState; // State of TrbNet (HEADER,TRAILER,...)
180 
181  uint32_t fErrorCorr; // Offset to correct a error in datastream
182 
184  Bool_t fbDoToTCorr;
185 
186  Bool_t fSkipMs;
188  Double_t fdTimeOffsetNs;
189 
190  size_t fDataSize = 0;
191 
192 
198 
203 
207  uint64_t fTScounter;
208 
212  Int_t fCurMSid;
213 
218  uint64_t fCurMSidx;
219 
223  Int_t fGwordCnt;
224 
228  Bool_t fInSubSubEvent;
229 
234 
238  Int_t fSubSubEvId;
239 
243  Bool_t fLastFeeOnHub = false;
244 
245  std::vector<Int_t> fTDCAlignmentErrorPositions;
246 
248 
250 
251  Int_t fSkipCnt = 0;
252 
253 private: // Stored timestamps
258 
263 
268 
273 
278 
283 
288 
293 
294 private: // digi building
295  void ProcessRisingEdge(Int_t subSubEvId, Int_t channel, Double_t time);
296 
297  void ProcessFallingEdge(Int_t subSubEvId, Int_t channel, Double_t time);
298 
305  std::vector<CbmMcbmRichEdge>
307 
311  std::vector<CbmMcbmRichEdge>
313 
314 public: // histograms
318  Bool_t CreateHistograms();
319 
323  // Bool_t FillHistograms();
324 
328  Bool_t ResetHistograms();
329 
330  TH1D* GetTotH1(Int_t fpgaID, Int_t channel);
331  TH2D* GetTotH2(Int_t fpgaID);
332  /*
333  TH2D* fhTDCch0re_minusCTSch0re; //!
334  TH2D* fhTDCch0re_minusCTSch2re; //!
335  TH2D* fhTDCch0re_minusCTSch2fe; //!
336  TH2D* fhTDCch0re_minusPrevCTSch0re; //!
337  TH2D* fhTDCch0re_minusPrevCTSch2re; //!
338  TH2D* fhTDCch0re_minusPrevCTSch2fe; //!
339 
340  std::vector<TH2D*> fhTDCre_minusTDCch0re; //!
341 
342  std::vector<TH2D*> fhTDCre_minusPrevTDCch0re; //!
343 */
344  std::vector<TH2D*> fhTDCre_corrected1;
345 
346  std::vector<TH2D*> fhTDCre_corrected2;
347 
348  std::vector<TCanvas*> fcTot2d;
349 
350  TH1* fhVectorSize = nullptr;
351  TH1* fhVectorCapacity = nullptr;
352 
353  //TH2* fhDigisInChnl = nullptr;
354  //TH2* fhDigisInDiRICH = nullptr;
355 
356  TH2D* fhTdcErrors = nullptr;
357  TH2D* fhEventErrors = nullptr;
358 
359  TH2D* fhDiRICHWords = nullptr;
360  TH2D* fhChnlWords = nullptr;
361 
362  TH1* fhEventSize = nullptr;
363  TH2* fhSubEventSize = nullptr;
364  TH2* fhSubSubEventSize = nullptr;
365  TH2* fhChnlSize = nullptr;
366 
367  std::array<unsigned int, 33> fChnlMsgCnt;
368 
369  bool fDebugPrint = 0;
370  std::map<uint16_t, uint16_t> fMapFEE;
371 
372  std::map<Int_t, std::map<Int_t, TH1D*>> fhTotMap;
373 
374  std::map<Int_t, TH2D*> fhTot2dMap;
375 
376  size_t fuTsMaxVectorSize = 0;
377  Double_t fdCapacityIncFactor = 1.1;
378 
379  inline void SetVectCapInc(Double_t dIncFact) {
380  fdCapacityIncFactor = dIncFact;
381  }
382 
384 };
385 
386 #endif // CbmMcbm2018UnpackerAlgoRich_H
CbmMcbm2018UnpackerAlgoRich::fTDCAlignmentErrorPositions
std::vector< Int_t > fTDCAlignmentErrorPositions
Definition: CbmMcbm2018UnpackerAlgoRich.h:245
CbmMcbm2018UnpackerAlgoRich::ProcessTRBevent
Int_t ProcessTRBevent(size_t const size, uint8_t const *const ptr)
Definition: CbmMcbm2018UnpackerAlgoRich.cxx:434
CbmMcbm2018UnpackerAlgoRich::fLastFeeOnHub
Bool_t fLastFeeOnHub
Definition: CbmMcbm2018UnpackerAlgoRich.h:243
CbmMcbm2018UnpackerAlgoRich::InitStorage
void InitStorage()
Definition: CbmMcbm2018UnpackerAlgoRich.cxx:160
CbmMcbm2018UnpackerAlgoRich::fhVectorSize
TH1 * fhVectorSize
Definition: CbmMcbm2018UnpackerAlgoRich.h:350
CbmMcbm2018UnpackerAlgoRich::fSubSubEvId
Int_t fSubSubEvId
Definition: CbmMcbm2018UnpackerAlgoRich.h:238
CbmMcbm2018UnpackerAlgoRich::fTdcWordCorrectionCnt
Int_t fTdcWordCorrectionCnt
Definition: CbmMcbm2018UnpackerAlgoRich.h:247
CbmMcbm2018UnpackerAlgoRich::InitParameters
Bool_t InitParameters()
Definition: CbmMcbm2018UnpackerAlgoRich.cxx:155
CbmMcbm2018UnpackerAlgoRich::fRisingEdgesBuf
std::vector< CbmMcbmRichEdge > fRisingEdgesBuf
Definition: CbmMcbm2018UnpackerAlgoRich.h:306
TrbNetState::IDLE
@ IDLE
CbmMcbm2018UnpackerAlgoRich::fTScounter
uint64_t fTScounter
Definition: CbmMcbm2018UnpackerAlgoRich.h:207
CbmMcbm2018UnpackerAlgoRich::fdTimeOffsetNs
Double_t fdTimeOffsetNs
User settings: Data correction parameters.
Definition: CbmMcbm2018UnpackerAlgoRich.h:188
CbmMcbm2018UnpackerAlgoRich::fhTotMap
std::map< Int_t, std::map< Int_t, TH1D * > > fhTotMap
Definition: CbmMcbm2018UnpackerAlgoRich.h:372
CbmMcbm2018UnpackerAlgoRich::fhChnlWords
TH2D * fhChnlWords
Definition: CbmMcbm2018UnpackerAlgoRich.h:360
TrbNetState::HEADER
@ HEADER
RichErrorType::ctsHeader
@ ctsHeader
CbmMcbm2018UnpackerAlgoRich::ProcessTs
virtual Bool_t ProcessTs(const fles::Timeslice &ts)
Definition: CbmMcbm2018UnpackerAlgoRich.cxx:193
CbmMcbm2018UnpackerAlgoRich::fcTot2d
std::vector< TCanvas * > fcTot2d
Definition: CbmMcbm2018UnpackerAlgoRich.h:348
CbmMcbm2018UnpackerAlgoRich::ClassDef
ClassDef(CbmMcbm2018UnpackerAlgoRich, 1)
CbmMcbm2018UnpackerAlgoRich::FinalizeTs
void FinalizeTs()
Definition: CbmMcbm2018UnpackerAlgoRich.cxx:1499
CbmMcbm2018UnpackerAlgoRich::ProcessMicroslice
void ProcessMicroslice(size_t const size, uint8_t const *const ptr)
CbmMcbm2018UnpackerAlgoRich::fSkipCnt
Int_t fSkipCnt
Definition: CbmMcbm2018UnpackerAlgoRich.h:251
CbmMcbm2018UnpackerAlgoRich::ErrorMsg
void ErrorMsg(uint16_t errbits, RichErrorType type, uint16_t tdcAddr=0)
Definition: CbmMcbm2018UnpackerAlgoRich.cxx:1821
TrbNetState
TrbNetState
Definition: CbmMcbm2018UnpackerAlgoRich.h:33
CbmMcbm2018RichPar
Definition: CbmMcbm2018RichPar.h:13
CbmMcbm2018UnpackerAlgoRich::fGwordCnt
Int_t fGwordCnt
Definition: CbmMcbm2018UnpackerAlgoRich.h:223
CbmMcbm2018UnpackerAlgoRich::fhTot2dMap
std::map< Int_t, TH2D * > fhTot2dMap
Definition: CbmMcbm2018UnpackerAlgoRich.h:374
CbmMcbm2018UnpackerAlgoRich::fhChnlSize
TH2 * fhChnlSize
Definition: CbmMcbm2018UnpackerAlgoRich.h:365
RichErrorType::subEventError
@ subEventError
CbmMcbm2018UnpackerAlgoRich::fMapFEE
std::map< uint16_t, uint16_t > fMapFEE
Definition: CbmMcbm2018UnpackerAlgoRich.h:370
CbmMcbm2018UnpackerAlgoRich::fCurEpochCounter
UInt_t fCurEpochCounter
Definition: CbmMcbm2018UnpackerAlgoRich.h:233
CbmMcbm2018UnpackerAlgoRich::AddMsComponentToList
void AddMsComponentToList(size_t component, UShort_t usDetectorId)
Definition: CbmMcbm2018UnpackerAlgoRich.cxx:171
CbmMcbm2018UnpackerAlgoRich::fbMonitorMode
Bool_t fbMonitorMode
Control flags.
Definition: CbmMcbm2018UnpackerAlgoRich.h:170
CbmMcbm2018UnpackerAlgoRich::InitContainers
virtual Bool_t InitContainers()
Definition: CbmMcbm2018UnpackerAlgoRich.cxx:128
CbmMcbm2018UnpackerAlgoRich::fhDiRICHWords
TH2D * fhDiRICHWords
Definition: CbmMcbm2018UnpackerAlgoRich.h:359
CbmRichDigi.h
CbmMcbm2018UnpackerAlgoRich::fPrevLastCh0_re_time
TArrayD fPrevLastCh0_re_time
Definition: CbmMcbm2018UnpackerAlgoRich.h:292
CbmMcbm2018UnpackerAlgoRich::GetParList
virtual TList * GetParList()
Definition: CbmMcbm2018UnpackerAlgoRich.cxx:147
CbmMcbm2018UnpackerAlgoRich::fbDoToTCorr
Bool_t fbDoToTCorr
User setting: kTRUE activates ToT correction from Parameterfile.
Definition: CbmMcbm2018UnpackerAlgoRich.h:184
CbmMcbm2018UnpackerAlgoRich::GetTotH2
TH2D * GetTotH2(Int_t fpgaID)
Definition: CbmMcbm2018UnpackerAlgoRich.cxx:1757
RichErrorType::tdcTrailer
@ tdcTrailer
RichErrorType::tdcHeader
@ tdcHeader
TrbNetState::TDC
@ TDC
TrbNetState::EPOCH
@ EPOCH
CbmMcbm2018UnpackerAlgoRich::ProcessTDCword
Int_t ProcessTDCword(uint8_t const *const ptr, Int_t const word, size_t const size)
Definition: CbmMcbm2018UnpackerAlgoRich.cxx:1073
TrbNetState::DEBUG
@ DEBUG
CbmStar2019Algo.h
CbmMcbm2018UnpackerAlgoRich::fRawDataMode
Bool_t fRawDataMode
Switch ON the filling of a additional set of histograms.
Definition: CbmMcbm2018UnpackerAlgoRich.h:175
CbmMcbm2018UnpackerAlgoRich::WriteOutputDigi
void WriteOutputDigi(Int_t fpgaID, Int_t channel, Double_t time, Double_t tot, uint64_t MSidx)
Definition: CbmMcbm2018UnpackerAlgoRich.cxx:1463
CbmMcbm2018UnpackerAlgoRich::DebugMs
Bool_t DebugMs(const fles::Timeslice &ts, size_t uMsCompIdx, size_t uMsIdx)
Definition: CbmMcbm2018UnpackerAlgoRich.cxx:1771
CbmMcbm2018UnpackerAlgoRich::GetTotH1
TH1D * GetTotH1(Int_t fpgaID, Int_t channel)
Definition: CbmMcbm2018UnpackerAlgoRich.cxx:1743
CbmMcbm2018UnpackerAlgoRich::fPrevLastCTSch0_re_time
Double_t fPrevLastCTSch0_re_time
Definition: CbmMcbm2018UnpackerAlgoRich.h:272
CbmStar2019Algo
Definition: CbmStar2019Algo.h:43
CbmMcbm2018UnpackerAlgoRich::SetVectCapInc
void SetVectCapInc(Double_t dIncFact)
Definition: CbmMcbm2018UnpackerAlgoRich.h:379
CbmMcbm2018UnpackerAlgoRich::fCurMSid
Int_t fCurMSid
Definition: CbmMcbm2018UnpackerAlgoRich.h:212
CbmMcbm2018UnpackerAlgoRich::Finish
virtual void Finish()
Definition: CbmMcbm2018UnpackerAlgoRich.cxx:126
CbmMcbm2018UnpackerAlgoRich::fLastCTSch0_re_time
Double_t fLastCTSch0_re_time
Definition: CbmMcbm2018UnpackerAlgoRich.h:257
CbmMcbm2018UnpackerAlgoRich::fhSubSubEventSize
TH2 * fhSubSubEventSize
Definition: CbmMcbm2018UnpackerAlgoRich.h:364
CbmMcbm2018UnpackerAlgoRich::fRICHcompIdx
Int_t fRICHcompIdx
Definition: CbmMcbm2018UnpackerAlgoRich.h:197
CbmMcbm2018UnpackerAlgoRich::ProcessSKIPsubevent
Int_t ProcessSKIPsubevent(size_t const size, uint8_t const *const ptr)
Definition: CbmMcbm2018UnpackerAlgoRich.cxx:701
TrbNetState::TRAILER
@ TRAILER
RichErrorType::mtsError
@ mtsError
CbmMcbm2018UnpackerAlgoRich::findTDCAlignmentError
void findTDCAlignmentError(uint8_t const *const ptr, size_t const size)
Definition: CbmMcbm2018UnpackerAlgoRich.cxx:1936
CbmMcbm2018UnpackerAlgoRich::fdCapacityIncFactor
Double_t fdCapacityIncFactor
Definition: CbmMcbm2018UnpackerAlgoRich.h:377
CbmMcbm2018UnpackerAlgoRich::fhEventSize
TH1 * fhEventSize
Definition: CbmMcbm2018UnpackerAlgoRich.h:362
CbmMcbm2018UnpackerAlgoRich::fuTsMaxVectorSize
size_t fuTsMaxVectorSize
Definition: CbmMcbm2018UnpackerAlgoRich.h:376
CbmMcbm2018UnpackerAlgoRich::fLastCTSch2_re_time
Double_t fLastCTSch2_re_time
Definition: CbmMcbm2018UnpackerAlgoRich.h:262
CbmMcbm2018UnpackerAlgoRich::Reset
virtual void Reset()
Definition: CbmMcbm2018UnpackerAlgoRich.cxx:124
CbmMcbm2018UnpackerAlgoRich::fPrevLastCTSch2_re_time
Double_t fPrevLastCTSch2_re_time
Definition: CbmMcbm2018UnpackerAlgoRich.h:277
CbmMcbm2018UnpackerAlgoRich::fPrevLastCTSch2_fe_time
Double_t fPrevLastCTSch2_fe_time
Definition: CbmMcbm2018UnpackerAlgoRich.h:282
CbmMcbm2018UnpackerAlgoRich::Debug
Int_t Debug(const uint8_t *ptr, const size_t size)
Definition: CbmMcbm2018UnpackerAlgoRich.cxx:1785
CbmMcbm2018UnpackerAlgoRich::ReInitContainers
virtual Bool_t ReInitContainers()
Definition: CbmMcbm2018UnpackerAlgoRich.cxx:135
CbmMcbm2018UnpackerAlgoRich::~CbmMcbm2018UnpackerAlgoRich
virtual ~CbmMcbm2018UnpackerAlgoRich()
Definition: CbmMcbm2018UnpackerAlgoRich.cxx:112
CbmMcbm2018UnpackerAlgoRich::SetTimeOffsetNs
void SetTimeOffsetNs(Double_t dOffsetIn=0.0)
Definition: CbmMcbm2018UnpackerAlgoRich.h:80
CbmMcbm2018UnpackerAlgoRich::Init
virtual Bool_t Init()
Definition: CbmMcbm2018UnpackerAlgoRich.cxx:117
CbmMcbm2018UnpackerAlgoRich::fhTDCre_corrected2
std::vector< TH2D * > fhTDCre_corrected2
Definition: CbmMcbm2018UnpackerAlgoRich.h:346
CbmMcbm2018UnpackerAlgoRich::SetRawDataMode
void SetRawDataMode(Bool_t bDebug=kFALSE)
Definition: CbmMcbm2018UnpackerAlgoRich.h:86
CbmMcbm2018UnpackerAlgoRich::CbmMcbm2018UnpackerAlgoRich
CbmMcbm2018UnpackerAlgoRich()
Definition: CbmMcbm2018UnpackerAlgoRich.cxx:73
CbmMcbm2018UnpackerAlgoRich::fbDebugMonitorMode
Bool_t fbDebugMonitorMode
Switch ON the filling of a minimal set of histograms.
Definition: CbmMcbm2018UnpackerAlgoRich.h:173
CbmMcbm2018UnpackerAlgoRich::SetMonitorMode
void SetMonitorMode(Bool_t bFlagIn=kTRUE)
Definition: CbmMcbm2018UnpackerAlgoRich.h:78
CbmMcbm2018UnpackerAlgoRich
Definition: CbmMcbm2018UnpackerAlgoRich.h:44
CbmMcbm2018UnpackerAlgoRich::ProcessRisingEdge
void ProcessRisingEdge(Int_t subSubEvId, Int_t channel, Double_t time)
Definition: CbmMcbm2018UnpackerAlgoRich.cxx:1388
CbmMcbm2018UnpackerAlgoRich::fDataSize
size_t fDataSize
Definition: CbmMcbm2018UnpackerAlgoRich.h:190
CbmMcbm2018UnpackerAlgoRich::fFallingEdgesBuf
std::vector< CbmMcbmRichEdge > fFallingEdgesBuf
Exclude from ROOT dictionnary due to missing empty constructor!!
Definition: CbmMcbm2018UnpackerAlgoRich.h:312
CbmMcbm2018UnpackerAlgoRich::fhTdcErrors
TH2D * fhTdcErrors
Definition: CbmMcbm2018UnpackerAlgoRich.h:356
CbmMcbm2018UnpackerAlgoRich::fhEventErrors
TH2D * fhEventErrors
Definition: CbmMcbm2018UnpackerAlgoRich.h:357
CbmMcbm2018UnpackerAlgoRich::fErrorCorr
uint32_t fErrorCorr
Definition: CbmMcbm2018UnpackerAlgoRich.h:181
CbmMcbm2018UnpackerAlgoRich::fTdcWordCorrectionGlobalCnt
Int_t fTdcWordCorrectionGlobalCnt
Definition: CbmMcbm2018UnpackerAlgoRich.h:249
CbmMcbm2018UnpackerAlgoRich::fUnpackPar
CbmMcbm2018RichPar * fUnpackPar
Definition: CbmMcbm2018UnpackerAlgoRich.h:202
CbmMcbm2018UnpackerAlgoRich::fSkipMs
Bool_t fSkipMs
Definition: CbmMcbm2018UnpackerAlgoRich.h:186
CbmMcbm2018UnpackerAlgoRich::fInSubSubEvent
Bool_t fInSubSubEvent
Definition: CbmMcbm2018UnpackerAlgoRich.h:228
CbmMcbm2018UnpackerAlgoRich::fCurMSidx
uint64_t fCurMSidx
Definition: CbmMcbm2018UnpackerAlgoRich.h:218
CbmMcbm2018UnpackerAlgoRich::DoTotCorr
void DoTotCorr(Bool_t bDoToTCorr=kTRUE)
Definition: CbmMcbm2018UnpackerAlgoRich.h:84
CbmMcbm2018UnpackerAlgoRich::ProcessFallingEdge
void ProcessFallingEdge(Int_t subSubEvId, Int_t channel, Double_t time)
Definition: CbmMcbm2018UnpackerAlgoRich.cxx:1403
RichErrorType::ctsTrailer
@ ctsTrailer
CbmMcbm2018UnpackerAlgoRich::fDebugPrint
bool fDebugPrint
Definition: CbmMcbm2018UnpackerAlgoRich.h:369
CbmMcbm2018UnpackerAlgoRich::fError
Bool_t fError
Definition: CbmMcbm2018UnpackerAlgoRich.h:177
CbmMcbm2018UnpackerAlgoRich::ProcessTRBsubevent
Int_t ProcessTRBsubevent(size_t const size, uint8_t const *const ptr)
Definition: CbmMcbm2018UnpackerAlgoRich.cxx:829
TrbNetState::CTS
@ CTS
RichErrorType
RichErrorType
Definition: CbmMcbm2018UnpackerAlgoRich.h:35
CbmMcbm2018UnpackerAlgoRich::ResetHistograms
Bool_t ResetHistograms()
Definition: CbmMcbm2018UnpackerAlgoRich.cxx:1931
CbmMcbm2018UnpackerUtilRich.h
CbmMcbm2018UnpackerAlgoRich::fChnlMsgCnt
std::array< unsigned int, 33 > fChnlMsgCnt
Definition: CbmMcbm2018UnpackerAlgoRich.h:367
CbmMcbm2018UnpackerAlgoRich::fLastCh0_re_time
TArrayD fLastCh0_re_time
Definition: CbmMcbm2018UnpackerAlgoRich.h:287
CbmMcbm2018UnpackerAlgoRich::fTrbState
TrbNetState fTrbState
flag for an error in the datastream
Definition: CbmMcbm2018UnpackerAlgoRich.h:179
CbmMcbm2018UnpackerAlgoRich::fhSubEventSize
TH2 * fhSubEventSize
Definition: CbmMcbm2018UnpackerAlgoRich.h:363
CbmMcbm2018UnpackerAlgoRich::ProcessTRBeventHeader
Int_t ProcessTRBeventHeader(size_t const size, uint8_t const *const ptr)
Definition: CbmMcbm2018UnpackerAlgoRich.cxx:608
CbmMcbm2018UnpackerAlgoRich::fhTDCre_corrected1
std::vector< TH2D * > fhTDCre_corrected1
Definition: CbmMcbm2018UnpackerAlgoRich.h:344
CbmMcbm2018UnpackerAlgoRich::ProcessTimestampWord
void ProcessTimestampWord(Int_t tdcData)
Definition: CbmMcbm2018UnpackerAlgoRich.cxx:1254
CbmMcbm2018UnpackerAlgoRich::CreateHistograms
Bool_t CreateHistograms()
Exclude from ROOT dictionnary due to missing empty constructor!!
Definition: CbmMcbm2018UnpackerAlgoRich.cxx:1537
CbmMcbm2018UnpackerAlgoRich::fLastCTSch2_fe_time
Double_t fLastCTSch2_fe_time
Definition: CbmMcbm2018UnpackerAlgoRich.h:267
CbmMcbm2018UnpackerAlgoRich::ProcessCTSsubevent
Int_t ProcessCTSsubevent(size_t const size, uint8_t const *const ptr)
Definition: CbmMcbm2018UnpackerAlgoRich.cxx:743
CbmMcbm2018UnpackerAlgoRich::fhVectorCapacity
TH1 * fhVectorCapacity
Definition: CbmMcbm2018UnpackerAlgoRich.h:351
CbmMcbm2018UnpackerAlgoRich::ProcessMs
virtual Bool_t ProcessMs(const fles::Timeslice &ts, size_t uMsCompIdx, size_t uMsIdx)
Definition: CbmMcbm2018UnpackerAlgoRich.cxx:308
CbmMcbm2018UnpackerAlgoRich::ProcessTRBsubsubevent
Int_t ProcessTRBsubsubevent(size_t const size, uint8_t const *const ptr, Int_t const hubOffset, size_t const hubSize)
Definition: CbmMcbm2018UnpackerAlgoRich.cxx:989
CbmMcbm2018UnpackerAlgoRich::GetPixelUID
Int_t GetPixelUID(Int_t fpgaID, Int_t ch) const
Definition: CbmMcbm2018UnpackerAlgoRich.h:159