CbmRoot
Loading...
Searching...
No Matches
CbmStar2019MonitorPulserTask.h
Go to the documentation of this file.
1/* Copyright (C) 2019 Facility for Antiproton and Ion Research in Europe, Darmstadt
2 SPDX-License-Identifier: GPL-3.0-only
3 Authors: Pierre-Alain Loizeau [committer] */
4
5// -----------------------------------------------------------------------------
6// ----- -----
7// ----- CbmStar2019MonitorPulserTask -----
8// ----- Created 12.10.2019 by P.-A. Loizeau -----
9// ----- -----
10// -----------------------------------------------------------------------------
11
12#ifndef CbmStar2019MonitorPulserTask_H
13#define CbmStar2019MonitorPulserTask_H
14
15#include "CbmMcbmUnpack.h"
16
17#include "Timeslice.hpp"
18
19#include "TString.h"
20
22class CbmTbDaqBuffer;
23class TClonesArray;
24
26public:
29
30 virtual Bool_t Init();
31 virtual Bool_t DoUnpack(const fles::Timeslice& ts, size_t component);
32 virtual void Reset();
33
34 virtual void Finish();
35
36 void SetParContainers();
37
38 Bool_t InitContainers();
39
40 Bool_t ReInitContainers();
41
43 void AddMsComponentToList(size_t component, UShort_t usDetectorId);
44 void SetNbMsInTs(size_t /*uCoreMsNb*/, size_t /*uOverlapMsNb*/) {};
45
47 void SetIgnoreOverlapMs(Bool_t bFlagIn = kTRUE);
48 inline void SetHistoFilename(TString sNameIn) { fsHistoFileName = sNameIn; }
49 inline void SetEtofFeeIndexing(Bool_t bFlagIn = kTRUE) { fbEtofFeeIndexing = bFlagIn; }
50 inline void SetUpdateFreqTs(UInt_t uFreq = 100) { fuUpdateFreqTs = uFreq; }
51 inline void SetPulserTotLimits(UInt_t uMin, UInt_t uMax)
52 {
53 fuPulserMinTot = uMin;
54 fuPulserMaxTot = uMax;
55 }
56 inline void SetPulserChannel(UInt_t uChan) { fuPulserChannel = uChan; }
57 inline void SetSectorIndex(Int_t iSector = -1) { fiSectorIndex = iSector; }
58 inline void SetHistoryHistoSize(UInt_t inHistorySizeSec = 1800) { fuHistoryHistoSize = inHistorySizeSec; }
59
60private:
61 Bool_t SaveHistograms();
62
65
74
76 TList* fParCList;
77
79 uint64_t fulTsCounter;
80
83
86
88};
89
90#endif // CbmStar2019MonitorPulserTask_H
void AddMsComponentToList(size_t component, UShort_t usDetectorId)
Temp until we change from CbmMcbmUnpack to something else.
TString fsHistoFileName
User settings parameters.
void SetIgnoreOverlapMs(Bool_t bFlagIn=kTRUE)
Algo settings setters.
virtual Bool_t DoUnpack(const fles::Timeslice &ts, size_t component)
void SetEtofFeeIndexing(Bool_t bFlagIn=kTRUE)
void SetHistoryHistoSize(UInt_t inHistorySizeSec=1800)
CbmStar2019MonitorPulserAlgo * fMonitorPulserAlgo
Processing algo.
void SetPulserTotLimits(UInt_t uMin, UInt_t uMax)
CbmStar2019MonitorPulserTask(const CbmStar2019MonitorPulserTask &)
CbmStar2019MonitorPulserTask operator=(const CbmStar2019MonitorPulserTask &)
TList * fParCList
Parameters management.
uint64_t fulTsCounter
Statistics & first TS rejection.
Singleton buffer class for CBM raw data.