Go to the documentation of this file.
8 #ifndef CbmMcbm2018MonitorTof_H
9 #define CbmMcbm2018MonitorTof_H
11 #include "Timeslice.hpp"
19 #include "TClonesArray.h"
38 virtual Bool_t
Init();
40 virtual Bool_t
DoUnpack(
const fles::Timeslice& ts,
size_t component);
58 virtual void SetNbMsInTs(
size_t uCoreMsNb,
size_t uOverlapMsNb);
186 std::vector<ULong64_t>
203 std::vector<std::vector<UInt_t>>
205 std::vector<std::vector<Double_t>>
268 std::vector<std::vector<bool>>
270 std::vector<std::vector<bool>>
272 std::vector<std::vector<bool>>
UInt_t ConvertElinkToGet4(UInt_t uElinkIdx)
Double_t fdLastRmsUpdateTime
std::vector< std::vector< bool > > fvvbGdpbLastEnablePattern
Exclude from dictionnary.
void ResetLongEvolutionHistograms()
std::vector< TH2 * > fvhGdpbPatternEnableEvo
std::vector< TH2 * > fvhRemapTot_gDPB
std::vector< ULong64_t > fvulGdpbTsMsb
std::vector< TH1 * > fvhFeeErrorRateLong_gDPB
virtual Bool_t DoUnpack(const fles::Timeslice &ts, size_t component)
std::vector< UInt_t > fvuStarTrigCmdLast
void SetMsOverlap(size_t uOverlapMsNb=1)
std::vector< TProfile * > fvhStarTrigGdpbTsEvo
std::vector< TH2 * > fvhGdpbResyncEnaEvoPerTs
TCanvas * fcGdpbChannelRate
std::vector< TProfile2D * > fvhCoincMeanAllChanGdpb
std::vector< TProfile * > fvhFeeErrorRatio_gDPB
TH2 * fhScmSeuCountersEvo
std::vector< Bool_t > fvbFirstEpochSeen
void FillHitInfo(gdpbv100::Message)
TH2 * fhTimeRmsZoomFitPuls
UInt_t fuRawDataPrintMsgIdx
UInt_t fuNbFeePlotsPerGdpb
std::vector< TH2 * > fvhGdpbPatternResyncEvo
std::vector< TH2 * > fvhRawFt_gDPB
TODO: Channel rate plots!
TH1 * fhMessType
In System.
TH2 * fhGdpbSysMessPattType
Double_t fdFitZoomWidthPs
std::vector< TH2 * > fvhGdpbStateEvoPerTs
CbmMcbm2018MonitorTof operator=(const CbmMcbm2018MonitorTof &)
std::vector< TH2 * > fvhCoincMapAllChanGdpb
void SetMsLimitLevel(size_t uAcceptBoundaryPct=100)
void SetIgnoreMsOverlap(Bool_t bEnaFlag=kTRUE)
Bool_t ReInitContainers()
TCanvas * fcGdpbRemapChCount
std::vector< TH2 * > fvhGdpbGet4MessType
Per GET4 in gDPB.
std::vector< ULong64_t > fvulCurrentEpoch
void PrintSysInfo(gdpbv100::Message)
UInt_t fuNrOfChannelsPerGdpb
std::vector< ULong64_t > fvulStarTsMid
std::vector< TH1 * > fvhChCount_gDPB
void SetHistoFilename(TString sNameIn)
Bool_t fbPrintAllHitsEnable
std::vector< UInt_t > fvuStarDaqCmdLast
std::vector< TProfile * > fvhStarTrigStarTsEvo
std::vector< TProfile * > fvhPulserTimeDiffEvoGbtxGbtx
UInt_t fuRawDataPrintMsgNb
void PrintSlcInfo(gdpbv100::Message)
static const UInt_t kuNbGet4PerGbtx
virtual void AddMsComponentToList(size_t component, UShort_t usDetectorId)
virtual ~CbmMcbm2018MonitorTof()
Bool_t fbPrintAllEpochsEnable
UInt_t fuNrOfChannelsPerFee
std::vector< TH2 * > fvhStarTokenEvo
std::vector< UInt_t > fvuStarTokenLast
const UInt_t kuNbBinsDt
[ fuNrOfGdpbs ][ fuNrOfChannelsPerGdpb ]
CbmMcbm2018TofPar * fUnpackPar
std::vector< TH1 * > fvhTriggerRate
virtual void SetNbMsInTs(size_t uCoreMsNb, size_t uOverlapMsNb)
UInt_t ConvertGet4ToElink(UInt_t uGet4Idx)
const UInt_t kuNbFeePerGbtx
Bool_t fbPulserModeEnable
std::vector< ULong64_t > fvulStarTsMsb
UInt_t fuNrOfChannelsPerGet4
std::vector< ULong64_t > fvulGdpbTsFullLast
void SetFitZoomWidthPs(Double_t inZoomWidth=1000.0)
std::vector< TH1 * > fvhFeeRateLong_gDPB
std::vector< TH2 * > fvhGdpbGet4ChanErrors
std::vector< int > fviMsgCounter
void FillEpochInfo(gdpbv100::Message)
std::vector< Int_t > fviModuleId
TH2 * fhPatternMissmatch
Pattern messages per gDPB.
std::chrono::time_point< std::chrono::system_clock > fTimeLastHistoSaving
std::vector< TH1 * > fvhFeeErrorRate_gDPB
std::map< UInt_t, UInt_t > fGdpbIdIndexMap
Map of ID to index for the gDPBs.
void EnableOldFwData(Bool_t bEnaFlag=kTRUE)
std::vector< TH2 * > fvhGdpbEnableEvoPerTs
std::vector< std::vector< bool > > fvvbGdpbLastMissmatchPattern
std::vector< TH2 * > fvhRemapChRate_gDPB
std::vector< std::vector< gdpbv100::Message > > fvmEpSupprBuffer
Buffer for suppressed epoch processing.
void EnablePulserMode(Bool_t bEnaFlag=kTRUE)
std::vector< Int_t > fviRpcType
void SetHistoryHistoSize(UInt_t inHistorySizeSec=1800)
std::vector< TH2 * > fhHitsPerMsFirstChan_gDPB
std::vector< TProfile * > fvhMsSzTimePerLink
CbmMcbm2018MonitorTof(const CbmMcbm2018MonitorTof &)
std::vector< std::vector< TProfile * > > fvvhPulserTimeDiffEvoGdpbGdpb
TCanvas * fcGdpbChannelCount
std::vector< TH2 * > fvhGdpbResyncEvoPerTs
std::vector< Int_t > fviNrOfRpc
Double_t fdTsCoreSizeInNs
std::vector< TH1 * > fvhRemapChCount_gDPB
std::vector< UInt_t > fvuPadiToGet4
std::vector< UInt_t > fvuGet4ToPadi
void FillPattInfo(gdpbv100::Message)
void ResetEvolutionHistograms()
std::vector< size_t > fvMsComponentsList
FLES containers.
std::vector< TH2 * > fvhCmdDaqVsTrig
const Double_t kdMaxDtPulserPs
std::vector< Int_t > fviRpcSide
std::vector< UInt_t > fvuFeeNbHitsLastMs
Buffer for pulser channels.
std::vector< TH1 * > fvhTokenMsgType
std::vector< ULong64_t > fvulCurrentEpochCycle
std::vector< ULong64_t > fvulCurrentEpochFull
Epoch cycle from the Ms Start message and Epoch counter flip.
std::vector< TProfile * > fvhFeeErrorRatioLong_gDPB
uint64_t fulCurrentTsIndex
std::vector< UInt_t > fvuElinkToGet4
5 FEE with 8 GET4 each
std::vector< TH2 * > fvhChannelRate_gDPB
std::vector< std::vector< bool > > fvvbGdpbLastResyncPattern
Exclude from dictionnary.
TCanvas * fcSummary
Canvases.
void UseDaqBuffer(Bool_t)
void SaveAllHistos(TString sFileName="")
std::vector< TProfile2D * > fvhChannelRatePerMs_gDPB
Int_t GetArrayIndex(Int_t gdpbId, Int_t get4Id)
TH2 * fhGet4MessType
Per GET4 in system.
std::vector< TH2 * > fvhGdpbMissmatchEnaEvoPerTs
TCanvas * fcGdpbRemapChRate
void EnableCoincidenceMaps(Bool_t bEnaFlag=kTRUE)
std::vector< std::vector< UInt_t > > fvuCoincNbHitsLastMs
[ fuFeeNr ]
UInt_t fuHistoryHistoSizeLong
size_t fuMsAcceptsPercent
/** Ignore Overlap Ms: all fuOverlapMsNb MS at the end of timeslice **/
std::vector< TH1 * > fvhMsSzPerLink
std::vector< std::vector< Double_t > > fvdCoincTsLastHit
[ fuNrOfGdpbs ][ fuNrOfChannelsPerGdpb ]
std::vector< ULong64_t > fvulGdpbTsLsb
void ProcessEpochCycle(uint64_t ulCycleData)
const UInt_t kuNbGbtxPerGdpb
std::vector< UInt_t > fvuGet4ToElink
std::vector< std::vector< TH1 * > > fvhTimeDiffPulser
std::vector< TH2 * > fvhGdpbPatternMissmatchEvo
Per MS in gDPB.
std::vector< ULong64_t > fvulStarTsFullLast
void SetHistoryHistoSizeLong(UInt_t inHistorySizeMin=1800)
UInt_t fuHistoryHistoSize
void FillStarTrigInfo(gdpbv100::Message)
void PrintGenInfo(gdpbv100::Message)
std::vector< TH1 * > fvhFeeRate_gDPB
std::vector< Double_t > fdTsLastPulserHit
[ fuFeeNr ]
void SetDiamondDpbIdx(UInt_t uIdx=2)
ULong64_t fulCurrentEpochTime
Epoch + Epoch Cycle.
TH2 * fhScmScalerCounters
Slow control messages.
TH2 * fhScmDeadtimeCounters
TH2 * fhGdpbMessType
Per Gdpb.
std::vector< TH2 * > fvhGdpbGet4ChanScm
std::vector< TH2 * > fvhRawTot_gDPB
std::vector< TH2 * > fvhGdpbMissmatchEvoPerTs
Exclude from dictionnary.
std::vector< std::vector< UInt_t > > fvvuChanNbHitsPerMs