Go to the documentation of this file.
8 #ifndef CbmMcbm2018MonitorAlgoTofPulser_H
9 #define CbmMcbm2018MonitorAlgoTofPulser_H
36 virtual Bool_t
Init();
46 Bool_t
ProcessTs(
const fles::Timeslice& ts);
47 Bool_t
ProcessTs(
const fles::Timeslice& ts,
size_t ) {
50 Bool_t
ProcessMs(
const fles::Timeslice& ts,
size_t uMsCompIdx,
size_t uMsIdx);
124 std::vector<ULong64_t>
148 std::vector<std::vector<TH1*>>
173 #endif // CbmMcbm2018MonitorAlgoTofPulser_H
UInt_t fuNrOfGet4
Number of channels in each FEE.
static const Int_t kiMaxNbFlibLinks
Constants.
ULong64_t fulCurrentMsIdx
std::vector< ULong64_t > fvulCurrentEpochCycle
Current epoch index, per DPB.
Bool_t ProcessTs(const fles::Timeslice &ts)
Double_t fdTsStopTimeCore
Time in ns of current TS from the index of the first MS first component.
UInt_t fuNrOfChannelsPerFee
Number of channels in each GET4.
UInt_t fuNrOfChannelsPerGet4
Number of GET4s per FEE.
UInt_t fuCurrDpbId
Current equipment ID, tells from which DPB the current MS is originating.
void SetUpdateFreqTs(UInt_t uFreq=100)
void ProcessHit(gdpbv100::FullMessage mess)
void ProcessEpoch(gdpbv100::Message mess)
std::vector< std::vector< Double_t > > fvvdFeeHits
[ gDPB ][ FEE ]
Double_t fdStartTime
Starting time and time evolution book-keeping.
CbmMcbm2018MonitorAlgoTofPulser()
void ProcessEpochCycle(uint64_t ulCycleData)
UInt_t fuNrOfFeePerGdpb
gDPB ID to index map
~CbmMcbm2018MonitorAlgoTofPulser()
void ProcessEpSupprBuffer()
CbmMcbm2018MonitorAlgoTofPulser(const CbmMcbm2018MonitorAlgoTofPulser &)
std::vector< gdpbv100::Message > fvmEpSupprBuffer
Epoch + Epoch Cycle.
void SetPulserTotLimits(UInt_t uMin, UInt_t uMax)
Bool_t ProcessMs(const fles::Timeslice &ts, size_t uMsCompIdx, size_t uMsIdx)
CbmMcbm2018TofPar * fUnpackPar
Settings from parameter file.
static const UInt_t kuBytesPerMessage
UInt_t fuCurrDpbIdx
Temp holder until Current equipment ID is properly filled in MS.
UInt_t fuPulserMinTot
Number of channels per GDPB.
TH2 * fhPulserRmsGbtxToRefEvo
TH2 * fhPulserRmsGdpbToRefEvo
void SetGdpbIndex(Int_t iGdpb=-1)
std::map< UInt_t, UInt_t > fGdpbIdIndexMap
Total number of GDPBs in the system.
std::vector< ULong64_t > fvulCurrentEpochFull
Epoch cycle from the Ms Start message and Epoch counter flip.
TH2 * fhPulserTimeDiffRms
Bool_t CreateHistograms()
CbmMcbm2018MonitorAlgoTofPulser operator=(const CbmMcbm2018MonitorAlgoTofPulser &)
Bool_t ProcessTs(const fles::Timeslice &ts, size_t)
std::vector< Bool_t > fvbMaskedComponents
Control flags.
void SetHistoryHistoSize(UInt_t inHistorySizeSec=1800)
Double_t fdTsStartTime
SysId of the current MS in TS (0 to fuTotalMsNb)
UInt_t fuNrOfGet4PerGdpb
Total number of Get4 chips in the system.
Double_t fdMsTime
End Time in ns of current TS Core from the index of the first MS first component.
Bool_t ReInitContainers()
UInt_t fuGet4Nr
running number (0 to fuNrOfGet4PerGdpb) of the Get4 chip of a unique GDPB for current message
std::vector< std::vector< Bool_t > > fvvbFeeHitFound
Storing the time of the last hit for each MS in each of the FEE.
UInt_t fuGet4Id
Index of the DPB from which the MS currently unpacked is coming.
void SetPulserChannel(UInt_t uChan)
void AddMsComponentToList(size_t component, UShort_t usDetectorId)
const Double_t kdFitZoomWidthPs
TCanvas * fcSummary
Canvases.
UInt_t fuHistoryHistoSize
Time of first MS.
UInt_t fuMsIndex
Start Time in ns of current MS from its index field in header.
std::vector< std::vector< TH1 * > > fvvhFeePairPulserTimeDiff
Size in seconds of the evolution histograms.
uint32_t fuCurrentMsSysId
TH2 * fhPulserTimeDiffMean
[ FEE A ][ FEE B ]
UInt_t fuNrOfGet4PerFee
Number of FEBs per GDPB.
TH2 * fhPulserTimeDiffRmsZoom
ULong64_t fulCurrentTsIdx
const Double_t kdMaxDtPulserPs
[ gDPB ][ FEE ]
UInt_t fuCurrentEquipmentId
std::vector< ULong64_t > fvulCurrentEpoch
Data format control: Current time references for each GDPB: merged epoch marker, epoch cycle,...
UInt_t fuNrOfChannelsPerGdpb
Number of GET4s per GDPB.