CbmRoot
CbmStar2019EventBuilderEtof.cxx
Go to the documentation of this file.
1 // -----------------------------------------------------------------------------
2 // ----- -----
3 // ----- CbmStar2019EventBuilderEtof -----
4 // ----- Created 14.11.2018 by P.-A. Loizeau -----
5 // ----- -----
6 // -----------------------------------------------------------------------------
7 
9 
11 #include "CbmStar2019TofPar.h"
12 
13 #include "FairLogger.h"
14 #include "FairParGenericSet.h"
15 #include "FairRootManager.h"
16 #include "FairRun.h"
17 #include "FairRunOnline.h"
18 #include "FairRuntimeDb.h"
19 
20 #include "TCanvas.h"
21 #include "TH2.h"
22 #include "THttpServer.h"
23 #include "TProfile.h"
24 #include "TROOT.h"
25 #include "TString.h"
26 #include <TFile.h>
27 
28 #include <chrono>
29 #include <fstream>
30 #include <iomanip>
31 #include <iostream>
32 #include <stdint.h>
33 
35 
37  : CbmMcbmUnpack()
38  , fbMonitorMode(kFALSE)
39  , fbDebugMonitorMode(kFALSE)
40  , fbStoreLostEventMsg(kFALSE)
41  , fbAddStatusToEvent(kTRUE)
42  , fbSandboxMode(kFALSE)
43  , fbEventDumpEna(kFALSE)
44  , fParCList(nullptr)
45  , fuMinTotPulser(90)
46  , fuMaxTotPulser(110)
47  , fsHistoFileName("data/eventBuilderMonHist.root")
48  , fulTsCounter(0)
49  , fEventBuilderAlgo(nullptr)
50  , fdMsSizeInNs(-1.0)
51  , fdTsCoreSizeInSec(-1.0)
52  , fTimer()
53  , fdRealTime(0.0)
54  , fdRealTimeMin(1e6)
55  , fdRealTimeMax(0.0)
56  , fdRealTimeAll(0.0)
57  , fdRealTimeMinAll(1e6)
58  , fdRealTimeMaxAll(0.0)
59  , fulNbEvents(0)
60  , fulNbEventsSinceLastPrintout(0)
61  , fhRealTimeDistr(nullptr)
62  , fhRealTimeEvo(nullptr)
63  , fhMeanRealTimeEvo(nullptr)
64  , fpBinDumpFile(nullptr) {
66 }
67 
69  delete fEventBuilderAlgo;
70 }
71 
73  LOG(info) << "CbmStar2019EventBuilderEtof::Init";
74  LOG(info) << "Initializing STAR eTOF 2018 Event Builder";
75 
76  FairRootManager* ioman = FairRootManager::Instance();
77  if (NULL == ioman) { LOG(fatal) << "No FairRootManager instance"; }
78 
79  return kTRUE;
80 }
81 
83  LOG(info) << "Setting parameter containers for " << GetName();
84 
86 
87  for (Int_t iparC = 0; iparC < fParCList->GetEntries(); ++iparC) {
88  FairParGenericSet* tempObj = (FairParGenericSet*) (fParCList->At(iparC));
89  fParCList->Remove(tempObj);
90 
91  std::string sParamName {tempObj->GetName()};
92  FairParGenericSet* newObj = dynamic_cast<FairParGenericSet*>(
93  FairRun::Instance()->GetRuntimeDb()->getContainer(sParamName.data()));
94 
95  if (nullptr == newObj) {
96  LOG(error) << "Failed to obtain parameter container " << sParamName
97  << ", for parameter index " << iparC;
98  return;
99  } // if( nullptr == newObj )
100 
101  fParCList->AddAt(newObj, iparC);
102  // delete tempObj;
103  } // for( Int_t iparC = 0; iparC < fParCList->GetEntries(); ++iparC )
104 }
105 
107  LOG(info) << "Init parameter containers for " << GetName();
108 
110  CbmStar2019TofPar* pUnpackPar = dynamic_cast<CbmStar2019TofPar*>(
111  FairRun::Instance()->GetRuntimeDb()->getContainer("CbmStar2019TofPar"));
112  if (nullptr == pUnpackPar) {
113  LOG(error) << "Failed to obtain parameter container CbmStar2019TofPar";
114  return kFALSE;
115  } // if( nullptr == pUnpackPar )
116 
117  // fbMonitorMode = pUnpackPar->GetMonitorMode();
118  LOG(info) << "Monitor mode: " << (fbMonitorMode ? "ON" : "OFF");
119 
120  // fbDebugMonitorMode = pUnpackPar->GetDebugMonitorMode();
121  LOG(info) << "Debug Monitor mode: " << (fbDebugMonitorMode ? "ON" : "OFF");
122 
124  fdMsSizeInNs = pUnpackPar->GetSizeMsInNs();
125  LOG(info) << "Timeslice parameters: each MS is " << fdMsSizeInNs << " ns";
126 
132 
133  Bool_t initOK = fEventBuilderAlgo->InitContainers();
134 
136  if (kTRUE == fbMonitorMode) {
138  initOK &= fEventBuilderAlgo->CreateHistograms();
139 
141  std::vector<std::pair<TNamed*, std::string>> vHistos =
144  std::vector<std::pair<TCanvas*, std::string>> vCanvases =
146 
148  THttpServer* server = FairRunOnline::Instance()->GetHttpServer();
149  for (UInt_t uHisto = 0; uHisto < vHistos.size(); ++uHisto) {
150  server->Register(Form("/%s", vHistos[uHisto].second.data()),
151  vHistos[uHisto].first);
152  } // for( UInt_t uHisto = 0; uHisto < vHistos.size(); ++uHisto )
153 
154  for (UInt_t uCanv = 0; uCanv < vCanvases.size(); ++uCanv) {
155  // LOG(info) << "Registering " << vCanvases[ uCanv ].first->GetName()
156  // << " in " << vCanvases[ uCanv ].second.data();
157  server->Register(Form("/%s", vCanvases[uCanv].second.data()),
158  gROOT->FindObject((vCanvases[uCanv].first)->GetName()));
159  } // for( UInt_t uCanv = 0; uCanv < vCanvases.size(); ++uCanv )
160 
161  server->RegisterCommand("/Reset_EvtBuild_Hist",
162  "bStarEtof2019EventBuilderResetHistos=kTRUE");
163  server->Restrict("/Reset_EvtBuild_Hist", "allow=admin");
164 
165  if (fbDebugMonitorMode) {
166  fhRealTimeDistr = new TH1I("hEvtBuildRealTimeDistr",
167  "Realtime for processing a TS in event "
168  "builder; Realtime [ms]; TS nb []",
169  100000,
170  0.0,
171  100.0);
172  fhRealTimeEvo = new TH2I(
173  "hEvtBuildRealTimeEvo",
174  "Realtime Processing to duration ratio for processing a TS in event "
175  "builder vs TS index; TS []; Realtime ratio []; TS Nb []",
176  1000,
177  0,
178  100000,
179  10000,
180  0.0,
181  100.0);
182 
183  fhMeanRealTimeEvo = new TProfile(
184  "hEvtBuildMeanRealTimeEvo",
185  "Mean Realtime Processing to duration ratio for processing a TS in "
186  "event builder vs TS index; TS []; Mean Realtime ratio []; TS Nb []",
187  1000,
188  0,
189  100000);
190 
191  server->Register("/EvtBuildTime", fhRealTimeDistr);
192  server->Register("/EvtBuildTime", fhRealTimeEvo);
193  server->Register("/EvtBuildTime", fhMeanRealTimeEvo);
194  } // if( fbDebugMonitorMode )
195 
196  } // if( kTRUE == fbMonitorMode )
197 
198  return initOK;
199 }
200 
202  LOG(info) << "ReInit parameter containers for " << GetName();
203  Bool_t initOK = fEventBuilderAlgo->ReInitContainers();
204 
205  return initOK;
206 }
207 
209  if (fbEventDumpEna != bDumpEna) {
210  if (bDumpEna) {
211  LOG(info) << "Enabling event dump to binary file which was disabled. "
212  "File will be opened.";
213 
214  std::time_t cTimeCurrent =
215  std::chrono::system_clock::to_time_t(std::chrono::system_clock::now());
216  char tempBuff[80];
217  std::strftime(
218  tempBuff, 80, "%Y_%m_%d_%H_%M_%S", localtime(&cTimeCurrent));
219  TString sFileName = Form("event_dump_%s.bin", tempBuff);
220  fpBinDumpFile =
221  new std::fstream(sFileName, std::ios::out | std::ios::binary);
222 
223  if (NULL == fpBinDumpFile) {
224  LOG(fatal) << "Failed to open new binary file for event dump at "
225  << sFileName;
226  } // if( NULL == fpBinDumpFile )
227  else
228  LOG(info) << "Opened binary dump file at " << sFileName;
229  } // if( bDumpEna )
230  else {
231  LOG(info) << "Disabling event dump to binary file which was enabled. "
232  "File will be closed.";
233 
234  if (NULL != fpBinDumpFile) fpBinDumpFile->close();
235  } // else of if( bDumpEna )
236  } // if( fbEventDumpEna != bDumpEna )
237 
238  fbEventDumpEna = bDumpEna;
239  if (fbEventDumpEna)
240  LOG(info) << "Event dump to binary file is now ENABLED";
241  else
242  LOG(info) << "Event dump to binary file is now DISABLED";
243 }
244 
246  UShort_t usDetectorId) {
247  fEventBuilderAlgo->AddMsComponentToList(component, usDetectorId);
248 }
249 
250 Bool_t CbmStar2019EventBuilderEtof::DoUnpack(const fles::Timeslice& ts,
251  size_t /*component*/) {
252  fTimer.Start();
253 
255  if (-1.0 == fdTsCoreSizeInSec) {
256  fdTsCoreSizeInSec = fdMsSizeInNs * ts.num_core_microslices() / 1e9;
257  } // if( -1.0 == fdTsCoreSizeInSec )
258 
259  if (0 == fulTsCounter) {
260  LOG(info) << "FIXME ===> Jumping 1st TS as corrupted with current FW + "
261  "FLESNET combination";
262  fulTsCounter++;
263  return kTRUE;
264  } // if( 0 == fulTsCounter )
265 
267  LOG(info) << "Reset eTOF STAR histos ";
270 
271  if (fbDebugMonitorMode) {
272  fhRealTimeDistr->Reset();
273  fhRealTimeEvo->Reset();
274  fhMeanRealTimeEvo->Reset();
275  } // if( fbDebugMonitorMode )
276  } // if( fbMonitorMode && bStarEtof2019EventBuilderResetHistos )
277 
278  if (kFALSE == fEventBuilderAlgo->ProcessTs(ts)) {
279  LOG(error) << "Failed processing TS " << ts.index()
280  << " in event builder algorithm class";
281  return kTRUE;
282  } // if( kFALSE == fEventBuilderAlgo->ProcessTs( ts ) )
283 
284  std::vector<CbmTofStarSubevent2019>& eventBuffer =
286 
287  for (UInt_t uEvent = 0; uEvent < eventBuffer.size(); ++uEvent) {
289  Int_t iBuffSzByte = 0;
290  void* pDataBuff = eventBuffer[uEvent].BuildOutput(iBuffSzByte);
291  if (NULL != pDataBuff) {
293  // Bool_t fbSendEventToStar = kFALSE;
294  if (kFALSE == fbSandboxMode) {
295  /*
296  ** Function to send sub-event block to the STAR DAQ system
297  * trg_word received is packed as:
298  *
299  * trg_cmd|daq_cmd|tkn_hi|tkn_mid|tkn_lo
300  */
301  star_rhicf_write(eventBuffer[uEvent].GetTrigger().GetStarTrigerWord(),
302  pDataBuff,
303  iBuffSzByte);
304  } // if( kFALSE == fbSandboxMode )
305 
306  LOG(debug) << "Sent STAR event with size " << iBuffSzByte << " Bytes"
307  << " and token "
308  << eventBuffer[uEvent].GetTrigger().GetStarToken();
309 
310  if (kTRUE == fbEventDumpEna) {
311  fpBinDumpFile->write(reinterpret_cast<const char*>(&kuBinDumpBegWord),
312  sizeof(UInt_t));
313  fpBinDumpFile->write(reinterpret_cast<const char*>(&iBuffSzByte),
314  sizeof(Int_t));
315  fpBinDumpFile->write(reinterpret_cast<const char*>(pDataBuff),
316  iBuffSzByte);
317  fpBinDumpFile->write(reinterpret_cast<const char*>(&kuBinDumpEndWord),
318  sizeof(UInt_t));
319  } // if( kTRUE == fbEventDumpEna )
320  } // if( NULL != pDataBuff )
321  else
322  LOG(error) << "Invalid STAR SubEvent Output, can only happen if trigger "
323  << " object was not set => Do Nothing more with it!!! ";
324  } // for( UInt_t uEvent = 0; uEvent < eventBuffer.size(); ++uEvent )
325  fTimer.Stop();
326  Double_t dRealT = fTimer.RealTime();
327  if (fbDebugMonitorMode) {
328  LOG(debug2) << Form("Real time TS %12lu, Realtime: %12f ns",
329  static_cast<unsigned long>(fulTsCounter),
330  dRealT * 1e9);
331  fhRealTimeDistr->Fill(dRealT * 1e3);
334  } // if( fbDebugMonitorMode )
335  fdRealTime += dRealT;
336  if (dRealT < fdRealTimeMin) {
337  if (fbDebugMonitorMode)
338  LOG(debug) << Form("New min Real time TS %12lu, Real time: %9.6f ms Old "
339  "Min %9.6f Diff %.9f",
340  static_cast<unsigned long>(fulTsCounter),
341  dRealT,
343  fdRealTimeMin - dRealT);
344  fdRealTimeMin = dRealT;
345  } // if( dRealT < fdRealTimeMin )
346  if (fdRealTimeMax < dRealT) {
347  if (fbDebugMonitorMode)
348  LOG(debug) << Form("New max Real time TS %12lu, Real time: %9.6f ms Old "
349  "Max %9.6f Diff %.9f",
350  static_cast<unsigned long>(fulTsCounter),
351  dRealT,
353  fdRealTimeMax - dRealT);
354  fdRealTimeMax = dRealT;
355  } // if( fdRealTimeMax < dRealT )
356  fulNbEvents += eventBuffer.size();
357  fulNbEventsSinceLastPrintout += eventBuffer.size();
358 
359  if (0 == fulTsCounter % 10000) {
360  fdRealTime /= 10000;
361  LOG(info) << Form("Processed %12lu TS, Real time: %6.3f ms/TS (Min %6.3f, "
362  "Max %6.3f), Events: %12lu (%9lu since last print)",
363  static_cast<unsigned long>(fulTsCounter),
364  fdRealTime,
367  static_cast<unsigned long>(fulNbEvents),
368  static_cast<unsigned long>(fulNbEventsSinceLastPrintout));
369  fdRealTime = 0.0;
370  fdRealTimeMin = 1e6;
371  fdRealTimeMax = 0.0;
373  } // if( 0 == fulTsCounter % 10000 )
374  fulTsCounter++;
375 
376  return kTRUE;
377 }
378 
380 
382  if (NULL != fpBinDumpFile) {
383  LOG(info) << "Closing binary file used for event dump.";
384  fpBinDumpFile->close();
385  } // if( NULL != fpBinDumpFile )
386 
388  if (kTRUE == fbMonitorMode) {
389 
390  SaveHistograms();
391  } // if( kTRUE == fbMonitorMode )
392 }
393 
396  std::vector<std::pair<TNamed*, std::string>> vHistos =
398  std::vector<std::pair<TCanvas*, std::string>> vCanvas =
400 
402  TDirectory* oldDir = NULL;
403  TFile* histoFile = NULL;
404  // Store current directory position to allow restore later
405  oldDir = gDirectory;
406  // open separate histo file in recreate mode
407  histoFile = new TFile(fsHistoFileName, "RECREATE");
408 
409  if (nullptr == histoFile) return kFALSE;
410 
412  for (UInt_t uHisto = 0; uHisto < vHistos.size(); ++uHisto) {
414  TString sFolder = vHistos[uHisto].second.data();
415  if (nullptr == gDirectory->Get(sFolder)) gDirectory->mkdir(sFolder);
416  gDirectory->cd(sFolder);
417 
419  vHistos[uHisto].first->Write();
420 
421  histoFile->cd();
422  } // for( UInt_t uHisto = 0; uHisto < vHistos.size(); ++uHisto )
423 
424  for (UInt_t uCanvas = 0; uCanvas < vCanvas.size(); ++uCanvas) {
426  TString sFolder = vCanvas[uCanvas].second.data();
427  if (nullptr == gDirectory->Get(sFolder)) gDirectory->mkdir(sFolder);
428  gDirectory->cd(sFolder);
429 
431  vCanvas[uCanvas].first->Write();
432 
433  histoFile->cd();
434  } // for( UInt_t uHisto = 0; uHisto < vHistos.size(); ++uHisto )
435 
436  // Restore original directory position
437  oldDir->cd();
438  histoFile->Close();
439 
440  return kTRUE;
441 }
442 
CbmStar2019EventBuilderEtofAlgo::SetDebugMonitorMode
void SetDebugMonitorMode(Bool_t bFlagIn=kTRUE)
Definition: CbmStar2019EventBuilderEtofAlgo.h:66
CbmStar2019EventBuilderEtof::ReInitContainers
Bool_t ReInitContainers()
Definition: CbmStar2019EventBuilderEtof.cxx:201
bStarEtof2019EventBuilderResetHistos
Bool_t bStarEtof2019EventBuilderResetHistos
Definition: CbmStar2019EventBuilderEtof.cxx:34
CbmStar2019EventBuilderEtofAlgo::GetParList
TList * GetParList()
Definition: CbmStar2019EventBuilderEtofAlgo.cxx:175
CbmStar2019EventBuilderEtof::fulNbEvents
uint64_t fulNbEvents
Definition: CbmStar2019EventBuilderEtof.h:114
CbmStar2019EventBuilderEtof::SetParContainers
void SetParContainers()
Definition: CbmStar2019EventBuilderEtof.cxx:82
CbmStar2019EventBuilderEtofAlgo.h
CbmStar2019Algo::GetCanvasVector
std::vector< std::pair< TCanvas *, std::string > > GetCanvasVector()
Definition: CbmStar2019Algo.h:91
CbmStar2019Algo::GetHistoVector
std::vector< std::pair< TNamed *, std::string > > GetHistoVector()
Definition: CbmStar2019Algo.h:84
CbmStar2019EventBuilderEtofAlgo::ReInitContainers
Bool_t ReInitContainers()
Definition: CbmStar2019EventBuilderEtofAlgo.cxx:163
CbmStar2019EventBuilderEtof::InitContainers
Bool_t InitContainers()
Definition: CbmStar2019EventBuilderEtof.cxx:106
CbmStar2019EventBuilderEtofAlgo::AddMsComponentToList
void AddMsComponentToList(size_t component, UShort_t usDetectorId)
Definition: CbmStar2019EventBuilderEtofAlgo.cxx:329
CbmStar2019EventBuilderEtof::Init
virtual Bool_t Init()
Definition: CbmStar2019EventBuilderEtof.cxx:72
CbmStar2019EventBuilderEtofAlgo::InitContainers
Bool_t InitContainers()
Definition: CbmStar2019EventBuilderEtofAlgo.cxx:157
CbmStar2019EventBuilderEtof::fulTsCounter
uint64_t fulTsCounter
Statistics & first TS rejection.
Definition: CbmStar2019EventBuilderEtof.h:99
CbmStar2019EventBuilderEtof::fbDebugMonitorMode
Bool_t fbDebugMonitorMode
Switch ON the filling of a minimal set of histograms.
Definition: CbmStar2019EventBuilderEtof.h:81
CbmStar2019EventBuilderEtof::SetEventDumpEnable
void SetEventDumpEnable(Bool_t bDumpEna=kTRUE)
Definition: CbmStar2019EventBuilderEtof.cxx:208
CbmStar2019EventBuilderEtofAlgo::CreateHistograms
Bool_t CreateHistograms()
Definition: CbmStar2019EventBuilderEtofAlgo.cxx:1805
CbmStar2019EventBuilderEtof::CbmStar2019EventBuilderEtof
CbmStar2019EventBuilderEtof(UInt_t uNbGdpb=1)
Definition: CbmStar2019EventBuilderEtof.cxx:36
CbmStar2019EventBuilderEtof::fdMsSizeInNs
Double_t fdMsSizeInNs
Processing speed watch.
Definition: CbmStar2019EventBuilderEtof.h:105
CbmStar2019EventBuilderEtof::fsHistoFileName
TString fsHistoFileName
Definition: CbmStar2019EventBuilderEtof.h:96
CbmStar2019EventBuilderEtof::fTimer
TStopwatch fTimer
Total size of the core MS in a TS, [seconds].
Definition: CbmStar2019EventBuilderEtof.h:107
CbmStar2019EventBuilderEtof::fbAddStatusToEvent
Bool_t fbAddStatusToEvent
Switch ON the insertion of the LostEvent messages from GET4s with the critical errors.
Definition: CbmStar2019EventBuilderEtof.h:85
CbmStar2019EventBuilderEtof::DoUnpack
virtual Bool_t DoUnpack(const fles::Timeslice &ts, size_t component)
Definition: CbmStar2019EventBuilderEtof.cxx:250
CbmStar2019EventBuilderEtof::~CbmStar2019EventBuilderEtof
virtual ~CbmStar2019EventBuilderEtof()
Definition: CbmStar2019EventBuilderEtof.cxx:68
CbmStar2019EventBuilderEtofAlgo
Definition: CbmStar2019EventBuilderEtofAlgo.h:31
CbmStar2019EventBuilderEtofAlgo::GetEventBuffer
std::vector< CbmTofStarSubevent2019 > & GetEventBuffer()
Definition: CbmStar2019EventBuilderEtofAlgo.h:55
CbmStar2019EventBuilderEtof::fbStoreLostEventMsg
Bool_t fbStoreLostEventMsg
Switch ON the filling of a additional set of histograms.
Definition: CbmStar2019EventBuilderEtof.h:83
CbmStar2019EventBuilderEtof::fdTsCoreSizeInSec
Double_t fdTsCoreSizeInSec
Size of a single MS, [nanoseconds].
Definition: CbmStar2019EventBuilderEtof.h:106
CbmStar2019EventBuilderEtof::fbSandboxMode
Bool_t fbSandboxMode
Switch ON the readout and insertion of STATUS pattern message (default is true)
Definition: CbmStar2019EventBuilderEtof.h:86
CbmStar2019EventBuilderEtof::fuMinTotPulser
UInt_t fuMinTotPulser
User settings: Data selection parameters.
Definition: CbmStar2019EventBuilderEtof.h:94
CbmStar2019EventBuilderEtof::AddMsComponentToList
void AddMsComponentToList(size_t component, UShort_t usDetectorId)
Temp until we change from CbmMcbmUnpack to something else.
Definition: CbmStar2019EventBuilderEtof.cxx:245
CbmStar2019EventBuilderEtof::Reset
virtual void Reset()
Definition: CbmStar2019EventBuilderEtof.cxx:379
CbmStar2019EventBuilderEtof::fParCList
TList * fParCList
Switch ON the dumping of the events to a binary file.
Definition: CbmStar2019EventBuilderEtof.h:91
CbmStar2019EventBuilderEtof::fdRealTimeMin
Double_t fdRealTimeMin
Definition: CbmStar2019EventBuilderEtof.h:109
CbmStar2019EventBuilderEtof::fhRealTimeDistr
TH1 * fhRealTimeDistr
Definition: CbmStar2019EventBuilderEtof.h:116
star_rhicf_write
int star_rhicf_write(unsigned int trg_word, void *dta, int bytes)
CbmStar2019EventBuilderEtof::fbMonitorMode
Bool_t fbMonitorMode
Control flags.
Definition: CbmStar2019EventBuilderEtof.h:74
ClassImp
ClassImp(CbmConverterManager) InitStatus CbmConverterManager
Definition: CbmConverterManager.cxx:12
CbmStar2019TofPar.h
CbmStar2019EventBuilderEtof::fEventBuilderAlgo
CbmStar2019EventBuilderEtofAlgo * fEventBuilderAlgo
Processing algo.
Definition: CbmStar2019EventBuilderEtof.h:102
CbmStar2019EventBuilderEtof
Definition: CbmStar2019EventBuilderEtof.h:32
CbmStar2019EventBuilderEtofAlgo::SetPulserTotLimits
void SetPulserTotLimits(UInt_t uMin, UInt_t uMax)
Definition: CbmStar2019EventBuilderEtofAlgo.h:75
CbmStar2019EventBuilderEtof::fhRealTimeEvo
TH2 * fhRealTimeEvo
Exclude from dictionary because ?!?!
Definition: CbmStar2019EventBuilderEtof.h:117
CbmStar2019EventBuilderEtofAlgo::ProcessTs
Bool_t ProcessTs(const fles::Timeslice &ts)
Definition: CbmStar2019EventBuilderEtofAlgo.cxx:346
CbmStar2019EventBuilderEtof.h
CbmStar2019EventBuilderEtof::fhMeanRealTimeEvo
TProfile * fhMeanRealTimeEvo
Exclude from dictionary because ?!?!
Definition: CbmStar2019EventBuilderEtof.h:118
CbmStar2019EventBuilderEtof::kuBinDumpBegWord
const UInt_t kuBinDumpBegWord
Definition: CbmStar2019EventBuilderEtof.h:122
CbmStar2019TofPar
Definition: CbmStar2019TofPar.h:18
CbmStar2019EventBuilderEtof::SaveHistograms
Bool_t SaveHistograms()
Definition: CbmStar2019EventBuilderEtof.cxx:394
CbmStar2019EventBuilderEtof::Finish
virtual void Finish()
Definition: CbmStar2019EventBuilderEtof.cxx:381
CbmStar2019EventBuilderEtof::fdRealTimeMax
Double_t fdRealTimeMax
Definition: CbmStar2019EventBuilderEtof.h:110
CbmStar2019EventBuilderEtof::fdRealTime
Double_t fdRealTime
Definition: CbmStar2019EventBuilderEtof.h:108
CbmStar2019EventBuilderEtofAlgo::SetStoreLostEventMsg
void SetStoreLostEventMsg(Bool_t bFlagIn=kTRUE)
Definition: CbmStar2019EventBuilderEtofAlgo.h:69
CbmStar2019EventBuilderEtof::fulNbEventsSinceLastPrintout
uint64_t fulNbEventsSinceLastPrintout
Definition: CbmStar2019EventBuilderEtof.h:115
CbmStar2019EventBuilderEtofAlgo::SetMonitorMode
void SetMonitorMode(Bool_t bFlagIn=kTRUE)
Definition: CbmStar2019EventBuilderEtofAlgo.h:63
CbmStar2019EventBuilderEtof::fbEventDumpEna
Bool_t fbEventDumpEna
Switch OFF the emission of data toward the STAR DAQ.
Definition: CbmStar2019EventBuilderEtof.h:88
CbmStar2019EventBuilderEtofAlgo::SetAddStatusToEvent
void SetAddStatusToEvent(Bool_t bFlagIn=kTRUE)
Definition: CbmStar2019EventBuilderEtofAlgo.h:72
CbmStar2019EventBuilderEtofAlgo::ResetHistograms
Bool_t ResetHistograms()
Definition: CbmStar2019EventBuilderEtofAlgo.cxx:2232
CbmStar2019TofPar::GetSizeMsInNs
Double_t GetSizeMsInNs()
Definition: CbmStar2019TofPar.h:93
CbmMcbmUnpack
Definition: CbmMcbmUnpack.h:15
CbmStar2019EventBuilderEtof::fpBinDumpFile
std::fstream * fpBinDumpFile
Exclude from dictionary because ?!?!
Definition: CbmStar2019EventBuilderEtof.h:121
CbmStar2019EventBuilderEtof::kuBinDumpEndWord
const UInt_t kuBinDumpEndWord
Definition: CbmStar2019EventBuilderEtof.h:123
CbmStar2019EventBuilderEtof::fuMaxTotPulser
UInt_t fuMaxTotPulser
Definition: CbmStar2019EventBuilderEtof.h:95