CbmRoot
CbmMcbm2018MonitorAlgoT0.h
Go to the documentation of this file.
1 // -----------------------------------------------------------------------------
2 // ----- -----
3 // ----- CbmMcbm2018MonitorAlgoT0 -----
4 // ----- Created 10.02.2019 by P.-A. Loizeau -----
5 // ----- -----
6 // -----------------------------------------------------------------------------
7 
8 #ifndef CbmMcbm2018MonitorAlgoT0_H
9 #define CbmMcbm2018MonitorAlgoT0_H
10 
11 #include "CbmStar2019Algo.h"
12 
13 // Data
14 #include "CbmTofDigi.h"
15 #include "gDpbMessv100.h"
16 
17 // CbmRoot
18 
19 // C++11
20 #include <chrono>
21 
22 // C/C++
23 #include <map>
24 #include <vector>
25 
26 class CbmMcbm2018TofPar;
27 /*
28 class TCanvas;
29 class THttpServer;
30 */
31 class TH1;
32 class TH2;
33 class TProfile;
34 
35 class CbmMcbm2018MonitorAlgoT0 : public CbmStar2019Algo<CbmTofDigi> {
36 public:
39 
40  virtual Bool_t Init();
41  virtual void Reset();
42  virtual void Finish();
43 
44  Bool_t InitContainers();
45  Bool_t ReInitContainers();
46  TList* GetParList();
47 
48  Bool_t InitParameters();
49 
50  Bool_t ProcessTs(const fles::Timeslice& ts);
51  Bool_t ProcessTs(const fles::Timeslice& ts, size_t /*component*/) {
52  return ProcessTs(ts);
53  }
54  Bool_t ProcessMs(const fles::Timeslice& ts, size_t uMsCompIdx, size_t uMsIdx);
55 
56  void AddMsComponentToList(size_t component, UShort_t usDetectorId);
57 
58  Bool_t CreateHistograms();
59  Bool_t FillHistograms();
60  Bool_t ResetHistograms(Bool_t bResetTime = kTRUE);
61 
62  inline void SetMonitorMode(Bool_t bFlagIn = kTRUE) {
63  fbMonitorMode = bFlagIn;
64  }
65  inline void SetHistoryHistoSize(UInt_t inHistorySizeSec = 1800) {
66  fuHistoryHistoSize = inHistorySizeSec;
67  }
68  inline void SetPulserTotLimits(UInt_t uMin, UInt_t uMax) {
69  fuMinTotPulser = uMin;
70  fuMaxTotPulser = uMax;
71  }
72  inline void SetSpillThreshold(UInt_t uCntLimit) {
73  fuOffSpillCountLimit = uCntLimit;
74  }
75  inline void SetChannelMap(UInt_t uChan0,
76  UInt_t uChan1,
77  UInt_t uChan2,
78  UInt_t uChan3,
79  UInt_t uChan4,
80  UInt_t uChan5,
81  UInt_t uChan6,
82  UInt_t uChan7) {
83  fuDiamChanMap[0] = uChan0;
84  fuDiamChanMap[1] = uChan1;
85  fuDiamChanMap[2] = uChan2;
86  fuDiamChanMap[3] = uChan3;
87  fuDiamChanMap[4] = uChan4;
88  fuDiamChanMap[5] = uChan5;
89  fuDiamChanMap[6] = uChan6;
90  fuDiamChanMap[7] = uChan7;
91  }
92 
93 private:
95  Bool_t fbMonitorMode =
96  kFALSE;
98  kFALSE;
99  std::vector<Bool_t> fvbMaskedComponents = {};
100 
103  UInt_t fuNrOfGdpbs = 0;
105  std::map<UInt_t, UInt_t> fGdpbIdIndexMap = {};
106  UInt_t fuNrOfFeePerGdpb = 0;
107  UInt_t fuNrOfGet4PerFee = 0;
109  UInt_t fuNrOfChannelsPerFee = 0;
110  UInt_t fuNrOfGet4 = 0;
111  UInt_t fuNrOfGet4PerGdpb = 0;
113 
115  UInt_t fuMinTotPulser = 90;
116  UInt_t fuMaxTotPulser = 100;
117  UInt_t fuOffSpillCountLimit = 200;
118 
120  static const Int_t kiMaxNbFlibLinks = 32;
121  static const UInt_t kuBytesPerMessage = 8;
122  static const UInt_t kuNbChanDiamond = 8;
123 
126  ULong64_t fulCurrentTsIdx = 0;
127  ULong64_t fulCurrentMsIdx = 0;
128  Double_t fdTsStartTime =
129  -1.0;
130  Double_t fdTsStopTimeCore =
131  -1.0;
132  Double_t fdMsTime =
133  -1.0;
134  UInt_t fuMsIndex = 0;
135  std::map<gdpbv100::MessageTypes, UInt_t> fmMsgCounter = {};
138  0;
139  UInt_t fuCurrDpbId =
140  0;
141  UInt_t fuCurrDpbIdx =
142  0;
144  -1;
146  -1;
147  UInt_t fuGet4Id =
148  0;
149  UInt_t fuGet4Nr =
150  0;
151  std::vector<ULong64_t> fvulCurrentEpoch =
153  {};
154  std::vector<ULong64_t> fvulCurrentEpochCycle =
155  {};
156  std::vector<ULong64_t> fvulCurrentEpochFull = {};
157 
159  Double_t fdStartTime =
160  -1.0;
161  Double_t fdStartTimeMsSz =
162  0.0;
163  std::chrono::steady_clock::time_point ftStartTimeUnix =
164  std::chrono::steady_clock::
165  now();
167  std::vector<std::vector<gdpbv100::Message>> fvvmEpSupprBuffer = {};
169  std::vector<gdpbv100::FullMessage> fvmHitsInMs =
170  {};
171 
174  3600;
176  std::vector<UInt_t> fvuHitCntChanMs = std::vector<UInt_t>(kuNbChanDiamond, 0);
179  std::vector<UInt_t> fvuErrorCntChanMs =
180  std::vector<UInt_t>(kuNbChanDiamond, 0);
181  std::vector<UInt_t> fvuEvtLostCntChanMs =
182  std::vector<UInt_t>(kuNbChanDiamond, 0);
183  std::vector<TH1*> fvhMsgCntEvoChan =
184  std::vector<TH1*>(kuNbChanDiamond, nullptr);
185  std::vector<TH2*> fvhMsgCntPerMsEvoChan =
186  std::vector<TH2*>(kuNbChanDiamond, nullptr);
187  std::vector<TH1*> fvhHitCntEvoChan =
188  std::vector<TH1*>(kuNbChanDiamond, nullptr);
189  std::vector<TH2*> fvhHitCntPerMsEvoChan =
190  std::vector<TH2*>(kuNbChanDiamond, nullptr);
191  std::vector<TH1*> fvhErrorCntEvoChan =
192  std::vector<TH1*>(kuNbChanDiamond, nullptr);
193  std::vector<TH2*> fvhErrorCntPerMsEvoChan =
194  std::vector<TH2*>(kuNbChanDiamond, nullptr);
195  std::vector<TH1*> fvhEvtLostCntEvoChan =
196  std::vector<TH1*>(kuNbChanDiamond, nullptr);
197  std::vector<TH2*> fvhEvtLostCntPerMsEvoChan =
198  std::vector<TH2*>(kuNbChanDiamond, nullptr);
199  std::vector<TProfile*> fvhErrorFractEvoChan =
200  std::vector<TProfile*>(kuNbChanDiamond, nullptr);
201  std::vector<TH2*> fvhErrorFractPerMsEvoChan =
202  std::vector<TH2*>(kuNbChanDiamond, nullptr);
203  std::vector<TProfile*> fvhEvtLostFractEvoChan =
204  std::vector<TProfile*>(kuNbChanDiamond, nullptr);
205  std::vector<TH2*> fvhEvtLostFractPerMsEvoChan =
206  std::vector<TH2*>(kuNbChanDiamond, nullptr);
208  Bool_t fbSpillOn = kTRUE;
209  UInt_t fuCurrentSpillIdx = 0;
210  UInt_t fuCurrentSpillPlot = 0;
211  Double_t fdStartTimeSpill = -1.0;
212  Double_t fdLastSecondTime = -1.0;
213  UInt_t fuCountsLastSecond = 0;
214  static const UInt_t kuNbSpillPlots = 5;
215  // UInt_t kuDiamChanMap[ kuNbChanDiamond ] = { 2, 3, 4, 5, 0, 1, 6, 7 }; //! Map from electronics channel to Diamond strip
217  {0, 1, 2, 3, 4, 5, 6, 7};
218  TH1* fhDpbMap = nullptr;
219  TH1* fhChannelMap = nullptr;
220  TH2* fhHitMapEvo = nullptr;
221  TH2* fhHitTotEvo = nullptr;
222  TH2* fhChanHitMapEvo = nullptr;
223  std::vector<TH1*> fvhDpbMapSpill = {};
224  std::vector<TH1*> fvhChannelMapSpill = {};
225  TH1* fhHitsPerSpill = nullptr;
227  TH1* fhMsgCntEvo = nullptr;
228  TH1* fhHitCntEvo = nullptr;
229  TH1* fhErrorCntEvo = nullptr;
230  TH1* fhLostEvtCntEvo = nullptr;
231  TProfile* fhErrorFractEvo = nullptr;
232  TProfile* fhLostEvtFractEvo = nullptr;
233 
234  TH2* fhMsgCntPerMsEvo = nullptr;
235  TH2* fhHitCntPerMsEvo = nullptr;
236  TH2* fhErrorCntPerMsEvo = nullptr;
237  TH2* fhLostEvtCntPerMsEvo = nullptr;
238  TH2* fhErrorFractPerMsEvo = nullptr;
239  TH2* fhLostEvtFractPerMsEvo = nullptr;
240 
242  TH1* fhChannelMapPulser = nullptr;
243  TH2* fhHitMapEvoPulser = nullptr;
244 
246  TCanvas* fcSummary = nullptr;
247  TCanvas* fcHitMaps = nullptr;
248  TCanvas* fcGenCntsPerMs = nullptr;
249  TCanvas* fcSpillCounts = nullptr;
250  TCanvas* fcSpillCountsHori = nullptr;
251  TCanvas* fcSpillDpbCountsHori = nullptr;
252 
253  /*
254  void ProcessEpochCycle( uint64_t ulCycleData );
255  void ProcessEpoch( gdpbv100::Message mess );
256 
257  void ProcessEpSupprBuffer();
258 
259  void ProcessHit( gdpbv100::FullMessage mess );
260  void ProcessSysMess( gdpbv100::FullMessage mess );
261 
262  void ProcessError( gdpbv100::FullMessage mess );
263 
264  inline Int_t GetArrayIndex(Int_t gdpbId, Int_t get4Id)
265  {
266  return gdpbId * fuNrOfGet4PerGdpb + get4Id;
267  }
268 */
271 
272  ClassDef(CbmMcbm2018MonitorAlgoT0, 1)
273 };
274 
275 #endif
CbmMcbm2018MonitorAlgoT0::fuNrOfChannelsPerGet4
UInt_t fuNrOfChannelsPerGet4
Number of GET4s per FEE.
Definition: CbmMcbm2018MonitorAlgoT0.h:108
CbmMcbm2018MonitorAlgoT0::fcSpillDpbCountsHori
TCanvas * fcSpillDpbCountsHori
Definition: CbmMcbm2018MonitorAlgoT0.h:251
CbmMcbm2018MonitorAlgoT0::fvvmEpSupprBuffer
std::vector< std::vector< gdpbv100::Message > > fvvmEpSupprBuffer
Buffers.
Definition: CbmMcbm2018MonitorAlgoT0.h:168
CbmMcbm2018MonitorAlgoT0::fhLostEvtCntEvo
TH1 * fhLostEvtCntEvo
Definition: CbmMcbm2018MonitorAlgoT0.h:230
CbmMcbm2018MonitorAlgoT0::ProcessTs
Bool_t ProcessTs(const fles::Timeslice &ts, size_t)
Definition: CbmMcbm2018MonitorAlgoT0.h:51
CbmMcbm2018MonitorAlgoT0::fuNrOfChannelsPerFee
UInt_t fuNrOfChannelsPerFee
Number of channels in each GET4.
Definition: CbmMcbm2018MonitorAlgoT0.h:109
CbmMcbm2018MonitorAlgoT0::fvhErrorFractEvoChan
std::vector< TProfile * > fvhErrorFractEvoChan
Definition: CbmMcbm2018MonitorAlgoT0.h:199
CbmMcbm2018MonitorAlgoT0::fhMsgCntPerMsEvo
TH2 * fhMsgCntPerMsEvo
Definition: CbmMcbm2018MonitorAlgoT0.h:234
CbmMcbm2018MonitorAlgoT0::fvulCurrentEpochFull
std::vector< ULong64_t > fvulCurrentEpochFull
Epoch cycle from the Ms Start message and Epoch counter flip.
Definition: CbmMcbm2018MonitorAlgoT0.h:156
CbmMcbm2018MonitorAlgoT0::fvhErrorFractPerMsEvoChan
std::vector< TH2 * > fvhErrorFractPerMsEvoChan
Definition: CbmMcbm2018MonitorAlgoT0.h:201
CbmMcbm2018MonitorAlgoT0::Reset
virtual void Reset()
Definition: CbmMcbm2018MonitorAlgoT0.cxx:53
CbmMcbm2018MonitorAlgoT0::fcSummary
TCanvas * fcSummary
Canvases.
Definition: CbmMcbm2018MonitorAlgoT0.h:246
CbmMcbm2018MonitorAlgoT0::fdTsStopTimeCore
Double_t fdTsStopTimeCore
Time in ns of current TS from the index of the first MS first component.
Definition: CbmMcbm2018MonitorAlgoT0.h:130
CbmMcbm2018MonitorAlgoT0::ftStartTimeUnix
std::chrono::steady_clock::time_point ftStartTimeUnix
Definition: CbmMcbm2018MonitorAlgoT0.h:163
CbmMcbm2018MonitorAlgoT0::fdMsTime
Double_t fdMsTime
End Time in ns of current TS Core from the index of the first MS first component.
Definition: CbmMcbm2018MonitorAlgoT0.h:132
CbmMcbm2018MonitorAlgoT0::fuOffSpillCountLimit
UInt_t fuOffSpillCountLimit
Definition: CbmMcbm2018MonitorAlgoT0.h:117
CbmMcbm2018MonitorAlgoT0::fuMaxTotPulser
UInt_t fuMaxTotPulser
Definition: CbmMcbm2018MonitorAlgoT0.h:116
CbmMcbm2018MonitorAlgoT0::fvhEvtLostFractPerMsEvoChan
std::vector< TH2 * > fvhEvtLostFractPerMsEvoChan
Definition: CbmMcbm2018MonitorAlgoT0.h:205
CbmMcbm2018MonitorAlgoT0::fuNrOfFeePerGdpb
UInt_t fuNrOfFeePerGdpb
gDPB ID to index map
Definition: CbmMcbm2018MonitorAlgoT0.h:106
CbmMcbm2018MonitorAlgoT0::fuDiamChanMap
UInt_t fuDiamChanMap[kuNbChanDiamond]
Definition: CbmMcbm2018MonitorAlgoT0.h:216
CbmMcbm2018MonitorAlgoT0::fcSpillCountsHori
TCanvas * fcSpillCountsHori
Definition: CbmMcbm2018MonitorAlgoT0.h:250
CbmMcbm2018MonitorAlgoT0::fvhHitCntEvoChan
std::vector< TH1 * > fvhHitCntEvoChan
Definition: CbmMcbm2018MonitorAlgoT0.h:187
CbmMcbm2018MonitorAlgoT0::kuNbChanDiamond
static const UInt_t kuNbChanDiamond
Definition: CbmMcbm2018MonitorAlgoT0.h:122
CbmMcbm2018MonitorAlgoT0::kuNbSpillPlots
static const UInt_t kuNbSpillPlots
Definition: CbmMcbm2018MonitorAlgoT0.h:214
CbmMcbm2018MonitorAlgoT0::SetChannelMap
void SetChannelMap(UInt_t uChan0, UInt_t uChan1, UInt_t uChan2, UInt_t uChan3, UInt_t uChan4, UInt_t uChan5, UInt_t uChan6, UInt_t uChan7)
Definition: CbmMcbm2018MonitorAlgoT0.h:75
CbmMcbm2018MonitorAlgoT0::fvuErrorCntChanMs
std::vector< UInt_t > fvuErrorCntChanMs
Definition: CbmMcbm2018MonitorAlgoT0.h:179
CbmMcbm2018MonitorAlgoT0::fmMsgCounter
std::map< gdpbv100::MessageTypes, UInt_t > fmMsgCounter
Definition: CbmMcbm2018MonitorAlgoT0.h:136
CbmMcbm2018MonitorAlgoT0::fhLostEvtCntPerMsEvo
TH2 * fhLostEvtCntPerMsEvo
Definition: CbmMcbm2018MonitorAlgoT0.h:237
CbmMcbm2018MonitorAlgoT0::fdLastSecondTime
Double_t fdLastSecondTime
Definition: CbmMcbm2018MonitorAlgoT0.h:212
CbmMcbm2018MonitorAlgoT0::fcSpillCounts
TCanvas * fcSpillCounts
Definition: CbmMcbm2018MonitorAlgoT0.h:249
CbmMcbm2018MonitorAlgoT0::fuCountsLastSecond
UInt_t fuCountsLastSecond
Definition: CbmMcbm2018MonitorAlgoT0.h:213
CbmMcbm2018MonitorAlgoT0::fbMonitorMode
Bool_t fbMonitorMode
Control flags.
Definition: CbmMcbm2018MonitorAlgoT0.h:95
CbmMcbm2018MonitorAlgoT0::fuCurrentEquipmentId
UInt_t fuCurrentEquipmentId
Definition: CbmMcbm2018MonitorAlgoT0.h:137
CbmMcbm2018MonitorAlgoT0::InitParameters
Bool_t InitParameters()
Definition: CbmMcbm2018MonitorAlgoT0.cxx:85
CbmMcbm2018MonitorAlgoT0::operator=
CbmMcbm2018MonitorAlgoT0 operator=(const CbmMcbm2018MonitorAlgoT0 &)
CbmMcbm2018MonitorAlgoT0::fvuEvtLostCntChanMs
std::vector< UInt_t > fvuEvtLostCntChanMs
Definition: CbmMcbm2018MonitorAlgoT0.h:181
CbmMcbm2018MonitorAlgoT0::fhHitsPerSpill
TH1 * fhHitsPerSpill
Definition: CbmMcbm2018MonitorAlgoT0.h:225
CbmMcbm2018MonitorAlgoT0::fvulCurrentEpochCycle
std::vector< ULong64_t > fvulCurrentEpochCycle
Current epoch index, per DPB.
Definition: CbmMcbm2018MonitorAlgoT0.h:154
CbmMcbm2018MonitorAlgoT0::SetSpillThreshold
void SetSpillThreshold(UInt_t uCntLimit)
Definition: CbmMcbm2018MonitorAlgoT0.h:72
CbmMcbm2018MonitorAlgoT0::ResetHistograms
Bool_t ResetHistograms(Bool_t bResetTime=kTRUE)
Definition: CbmMcbm2018MonitorAlgoT0.cxx:1339
CbmMcbm2018MonitorAlgoT0::fhLostEvtFractEvo
TProfile * fhLostEvtFractEvo
Definition: CbmMcbm2018MonitorAlgoT0.h:232
CbmMcbm2018MonitorAlgoT0::fuCurrentSpillPlot
UInt_t fuCurrentSpillPlot
Definition: CbmMcbm2018MonitorAlgoT0.h:210
CbmMcbm2018MonitorAlgoT0::fiBinSizeDatePlots
Int_t fiBinSizeDatePlots
Start of run time since "epoch" in s, for the plots with date as X axis.
Definition: CbmMcbm2018MonitorAlgoT0.h:145
CbmTofDigi.h
CbmMcbm2018MonitorAlgoT0::ProcessMs
Bool_t ProcessMs(const fles::Timeslice &ts, size_t uMsCompIdx, size_t uMsIdx)
Definition: CbmMcbm2018MonitorAlgoT0.cxx:227
CbmMcbm2018MonitorAlgoT0::SetHistoryHistoSize
void SetHistoryHistoSize(UInt_t inHistorySizeSec=1800)
Definition: CbmMcbm2018MonitorAlgoT0.h:65
CbmMcbm2018MonitorAlgoT0::fdTsStartTime
Double_t fdTsStartTime
Definition: CbmMcbm2018MonitorAlgoT0.h:128
CbmMcbm2018MonitorAlgoT0::fuNrOfGet4PerFee
UInt_t fuNrOfGet4PerFee
Number of FEBs per GDPB.
Definition: CbmMcbm2018MonitorAlgoT0.h:107
CbmMcbm2018MonitorAlgoT0::fuGet4Id
UInt_t fuGet4Id
Bin size in s for the plots with date as X axis.
Definition: CbmMcbm2018MonitorAlgoT0.h:147
CbmMcbm2018MonitorAlgoT0::fuCurrDpbIdx
UInt_t fuCurrDpbIdx
Temp holder until Current equipment ID is properly filled in MS.
Definition: CbmMcbm2018MonitorAlgoT0.h:141
CbmMcbm2018MonitorAlgoT0::fUnpackPar
CbmMcbm2018TofPar * fUnpackPar
Settings from parameter file.
Definition: CbmMcbm2018MonitorAlgoT0.h:102
CbmMcbm2018MonitorAlgoT0::fuMsIndex
UInt_t fuMsIndex
Start Time in ns of current MS from its index field in header.
Definition: CbmMcbm2018MonitorAlgoT0.h:134
CbmMcbm2018MonitorAlgoT0::InitContainers
Bool_t InitContainers()
Definition: CbmMcbm2018MonitorAlgoT0.cxx:61
CbmMcbm2018MonitorAlgoT0::fvhEvtLostFractEvoChan
std::vector< TProfile * > fvhEvtLostFractEvoChan
Definition: CbmMcbm2018MonitorAlgoT0.h:203
CbmMcbm2018MonitorAlgoT0::fvhEvtLostCntPerMsEvoChan
std::vector< TH2 * > fvhEvtLostCntPerMsEvoChan
Definition: CbmMcbm2018MonitorAlgoT0.h:197
CbmMcbm2018MonitorAlgoT0::fhHitTotEvo
TH2 * fhHitTotEvo
Definition: CbmMcbm2018MonitorAlgoT0.h:221
CbmMcbm2018MonitorAlgoT0::fvmHitsInMs
std::vector< gdpbv100::FullMessage > fvmHitsInMs
[DPB]
Definition: CbmMcbm2018MonitorAlgoT0.h:169
CbmMcbm2018MonitorAlgoT0::fvuHitCntChanMs
std::vector< UInt_t > fvuHitCntChanMs
Definition: CbmMcbm2018MonitorAlgoT0.h:178
CbmMcbm2018MonitorAlgoT0
Definition: CbmMcbm2018MonitorAlgoT0.h:35
CbmStar2019Algo.h
CbmMcbm2018MonitorAlgoT0::fulCurrentMsIdx
ULong64_t fulCurrentMsIdx
Definition: CbmMcbm2018MonitorAlgoT0.h:127
CbmMcbm2018MonitorAlgoT0::FillHistograms
Bool_t FillHistograms()
Definition: CbmMcbm2018MonitorAlgoT0.cxx:1288
CbmMcbm2018MonitorAlgoT0::fGdpbIdIndexMap
std::map< UInt_t, UInt_t > fGdpbIdIndexMap
Total number of GDPBs in the system.
Definition: CbmMcbm2018MonitorAlgoT0.h:105
CbmMcbm2018MonitorAlgoT0::fvhErrorCntEvoChan
std::vector< TH1 * > fvhErrorCntEvoChan
Definition: CbmMcbm2018MonitorAlgoT0.h:191
CbmMcbm2018MonitorAlgoT0::fbSpillOn
Bool_t fbSpillOn
Channels map.
Definition: CbmMcbm2018MonitorAlgoT0.h:208
CbmMcbm2018MonitorAlgoT0::fulCurrentTsIdx
ULong64_t fulCurrentTsIdx
Definition: CbmMcbm2018MonitorAlgoT0.h:126
CbmMcbm2018MonitorAlgoT0::fhLostEvtFractPerMsEvo
TH2 * fhLostEvtFractPerMsEvo
Definition: CbmMcbm2018MonitorAlgoT0.h:239
CbmMcbm2018MonitorAlgoT0::fhHitMapEvoPulser
TH2 * fhHitMapEvoPulser
Definition: CbmMcbm2018MonitorAlgoT0.h:243
CbmMcbm2018MonitorAlgoT0::CbmMcbm2018MonitorAlgoT0
CbmMcbm2018MonitorAlgoT0()
Definition: CbmMcbm2018MonitorAlgoT0.cxx:37
CbmStar2019Algo
Definition: CbmStar2019Algo.h:43
CbmMcbm2018MonitorAlgoT0::kuBytesPerMessage
static const UInt_t kuBytesPerMessage
Definition: CbmMcbm2018MonitorAlgoT0.h:121
CbmMcbm2018MonitorAlgoT0::AddMsComponentToList
void AddMsComponentToList(size_t component, UShort_t usDetectorId)
Definition: CbmMcbm2018MonitorAlgoT0.cxx:130
CbmMcbm2018MonitorAlgoT0::fuGet4Nr
UInt_t fuGet4Nr
running number (0 to fuNrOfGet4PerGdpb) of the Get4 chip of a unique GDPB for current message
Definition: CbmMcbm2018MonitorAlgoT0.h:149
CbmMcbm2018MonitorAlgoT0::fhMsgCntEvo
TH1 * fhMsgCntEvo
Global Rate.
Definition: CbmMcbm2018MonitorAlgoT0.h:227
CbmMcbm2018MonitorAlgoT0::fdStartTimeMsSz
Double_t fdStartTimeMsSz
Definition: CbmMcbm2018MonitorAlgoT0.h:161
CbmMcbm2018MonitorAlgoT0::Finish
virtual void Finish()
Definition: CbmMcbm2018MonitorAlgoT0.cxx:54
CbmMcbm2018MonitorAlgoT0::ProcessTs
Bool_t ProcessTs(const fles::Timeslice &ts)
Definition: CbmMcbm2018MonitorAlgoT0.cxx:145
CbmMcbm2018MonitorAlgoT0::fhHitCntEvo
TH1 * fhHitCntEvo
Definition: CbmMcbm2018MonitorAlgoT0.h:228
CbmMcbm2018MonitorAlgoT0::fhErrorCntPerMsEvo
TH2 * fhErrorCntPerMsEvo
Definition: CbmMcbm2018MonitorAlgoT0.h:236
CbmMcbm2018MonitorAlgoT0::CbmMcbm2018MonitorAlgoT0
CbmMcbm2018MonitorAlgoT0(const CbmMcbm2018MonitorAlgoT0 &)
CbmMcbm2018MonitorAlgoT0::fdStartTime
Double_t fdStartTime
Epoch + Epoch Cycle.
Definition: CbmMcbm2018MonitorAlgoT0.h:159
CbmMcbm2018MonitorAlgoT0::fhErrorCntEvo
TH1 * fhErrorCntEvo
Definition: CbmMcbm2018MonitorAlgoT0.h:229
CbmMcbm2018MonitorAlgoT0::fuNrOfGet4PerGdpb
UInt_t fuNrOfGet4PerGdpb
Total number of Get4 chips in the system.
Definition: CbmMcbm2018MonitorAlgoT0.h:111
CbmMcbm2018MonitorAlgoT0::fhHitCntPerMsEvo
TH2 * fhHitCntPerMsEvo
Definition: CbmMcbm2018MonitorAlgoT0.h:235
CbmMcbm2018MonitorAlgoT0::~CbmMcbm2018MonitorAlgoT0
~CbmMcbm2018MonitorAlgoT0()
Definition: CbmMcbm2018MonitorAlgoT0.cxx:38
CbmMcbm2018MonitorAlgoT0::fuCurrDpbId
UInt_t fuCurrDpbId
Current equipment ID, tells from which DPB the current MS is originating.
Definition: CbmMcbm2018MonitorAlgoT0.h:139
CbmMcbm2018MonitorAlgoT0::fhErrorFractEvo
TProfile * fhErrorFractEvo
Definition: CbmMcbm2018MonitorAlgoT0.h:231
CbmMcbm2018MonitorAlgoT0::SetPulserTotLimits
void SetPulserTotLimits(UInt_t uMin, UInt_t uMax)
Definition: CbmMcbm2018MonitorAlgoT0.h:68
CbmMcbm2018MonitorAlgoT0::fvhMsgCntPerMsEvoChan
std::vector< TH2 * > fvhMsgCntPerMsEvoChan
Definition: CbmMcbm2018MonitorAlgoT0.h:185
gDpbMessv100.h
CbmMcbm2018TofPar
Definition: CbmMcbm2018TofPar.h:18
CbmMcbm2018MonitorAlgoT0::fcHitMaps
TCanvas * fcHitMaps
Definition: CbmMcbm2018MonitorAlgoT0.h:247
CbmMcbm2018MonitorAlgoT0::fvhDpbMapSpill
std::vector< TH1 * > fvhDpbMapSpill
Definition: CbmMcbm2018MonitorAlgoT0.h:223
CbmMcbm2018MonitorAlgoT0::fuMinTotPulser
UInt_t fuMinTotPulser
Number of channels per GDPB.
Definition: CbmMcbm2018MonitorAlgoT0.h:115
CbmMcbm2018MonitorAlgoT0::fcGenCntsPerMs
TCanvas * fcGenCntsPerMs
Definition: CbmMcbm2018MonitorAlgoT0.h:248
CbmMcbm2018MonitorAlgoT0::fbDebugMonitorMode
Bool_t fbDebugMonitorMode
Switch ON the filling of a minimal set of histograms.
Definition: CbmMcbm2018MonitorAlgoT0.h:97
CbmMcbm2018MonitorAlgoT0::fuNrOfChannelsPerGdpb
UInt_t fuNrOfChannelsPerGdpb
Number of GET4s per GDPB.
Definition: CbmMcbm2018MonitorAlgoT0.h:112
CbmMcbm2018MonitorAlgoT0::fuCurrentSpillIdx
UInt_t fuCurrentSpillIdx
Definition: CbmMcbm2018MonitorAlgoT0.h:209
CbmMcbm2018MonitorAlgoT0::fhChanHitMapEvo
TH2 * fhChanHitMapEvo
Definition: CbmMcbm2018MonitorAlgoT0.h:222
CbmMcbm2018MonitorAlgoT0::fvhChannelMapSpill
std::vector< TH1 * > fvhChannelMapSpill
Definition: CbmMcbm2018MonitorAlgoT0.h:224
CbmMcbm2018MonitorAlgoT0::fuHistoryHistoSize
UInt_t fuHistoryHistoSize
All hits (time in bins, TOT in bins, asic, channel) in last MS, sorted with "<" operator.
Definition: CbmMcbm2018MonitorAlgoT0.h:173
CbmMcbm2018MonitorAlgoT0::Init
virtual Bool_t Init()
Definition: CbmMcbm2018MonitorAlgoT0.cxx:48
CbmMcbm2018MonitorAlgoT0::fdStartTimeSpill
Double_t fdStartTimeSpill
Definition: CbmMcbm2018MonitorAlgoT0.h:211
CbmMcbm2018MonitorAlgoT0::SetMonitorMode
void SetMonitorMode(Bool_t bFlagIn=kTRUE)
Definition: CbmMcbm2018MonitorAlgoT0.h:62
CbmMcbm2018MonitorAlgoT0::fhChannelMap
TH1 * fhChannelMap
Definition: CbmMcbm2018MonitorAlgoT0.h:219
CbmMcbm2018MonitorAlgoT0::fhErrorFractPerMsEvo
TH2 * fhErrorFractPerMsEvo
Definition: CbmMcbm2018MonitorAlgoT0.h:238
CbmMcbm2018MonitorAlgoT0::fhChannelMapPulser
TH1 * fhChannelMapPulser
Pulser.
Definition: CbmMcbm2018MonitorAlgoT0.h:242
CbmMcbm2018MonitorAlgoT0::fvulCurrentEpoch
std::vector< ULong64_t > fvulCurrentEpoch
Data format control: Current time references for each GDPB: merged epoch marker, epoch cycle,...
Definition: CbmMcbm2018MonitorAlgoT0.h:152
CbmMcbm2018MonitorAlgoT0::fuNrOfGdpbs
UInt_t fuNrOfGdpbs
Readout chain dimensions and mapping.
Definition: CbmMcbm2018MonitorAlgoT0.h:104
CbmMcbm2018MonitorAlgoT0::fhHitMapEvo
TH2 * fhHitMapEvo
Definition: CbmMcbm2018MonitorAlgoT0.h:220
CbmMcbm2018MonitorAlgoT0::fhDpbMap
TH1 * fhDpbMap
Map from electronics channel to Diamond strip.
Definition: CbmMcbm2018MonitorAlgoT0.h:218
CbmMcbm2018MonitorAlgoT0::GetParList
TList * GetParList()
Definition: CbmMcbm2018MonitorAlgoT0.cxx:78
CbmMcbm2018MonitorAlgoT0::fvhErrorCntPerMsEvoChan
std::vector< TH2 * > fvhErrorCntPerMsEvoChan
Definition: CbmMcbm2018MonitorAlgoT0.h:193
CbmMcbm2018MonitorAlgoT0::fiRunStartDateTimeSec
Int_t fiRunStartDateTimeSec
Index of the DPB from which the MS currently unpacked is coming.
Definition: CbmMcbm2018MonitorAlgoT0.h:143
CbmMcbm2018MonitorAlgoT0::CreateHistograms
Bool_t CreateHistograms()
Definition: CbmMcbm2018MonitorAlgoT0.cxx:753
CbmMcbm2018MonitorAlgoT0::fvhHitCntPerMsEvoChan
std::vector< TH2 * > fvhHitCntPerMsEvoChan
Definition: CbmMcbm2018MonitorAlgoT0.h:189
CbmMcbm2018MonitorAlgoT0::fvhMsgCntEvoChan
std::vector< TH1 * > fvhMsgCntEvoChan
Definition: CbmMcbm2018MonitorAlgoT0.h:183
CbmMcbm2018MonitorAlgoT0::kiMaxNbFlibLinks
static const Int_t kiMaxNbFlibLinks
Constants.
Definition: CbmMcbm2018MonitorAlgoT0.h:120
CbmMcbm2018MonitorAlgoT0::fvhEvtLostCntEvoChan
std::vector< TH1 * > fvhEvtLostCntEvoChan
Definition: CbmMcbm2018MonitorAlgoT0.h:195
CbmMcbm2018MonitorAlgoT0::fvbMaskedComponents
std::vector< Bool_t > fvbMaskedComponents
Switch ON the filling of a additional set of histograms.
Definition: CbmMcbm2018MonitorAlgoT0.h:99
CbmMcbm2018MonitorAlgoT0::fuNrOfGet4
UInt_t fuNrOfGet4
Number of channels in each FEE.
Definition: CbmMcbm2018MonitorAlgoT0.h:110
CbmMcbm2018MonitorAlgoT0::ReInitContainers
Bool_t ReInitContainers()
Definition: CbmMcbm2018MonitorAlgoT0.cxx:67