Go to the documentation of this file.
8 #ifndef CbmMcbm2018UnpackerAlgoTof_H
9 #define CbmMcbm2018UnpackerAlgoTof_H
40 virtual Bool_t
Init();
50 Bool_t
ProcessTs(
const fles::Timeslice& ts);
51 Bool_t
ProcessTs(
const fles::Timeslice& ts,
size_t ) {
54 Bool_t
ProcessMs(
const fles::Timeslice& ts,
size_t uMsCompIdx,
size_t uMsIdx);
137 std::vector<ULong64_t>
146 std::chrono::steady_clock::time_point
149 std::vector<std::vector<gdpbv100::Message>>
CbmMcbm2018TofPar * fUnpackPar
Settings from parameter file.
std::vector< TH1 * > fhChCount
Double_t fdTsStopTimeCore
Time in ns of current TS from the index of the first MS first component.
Bool_t ProcessTs(const fles::Timeslice &ts, size_t)
CbmMcbm2018UnpackerAlgoTof(const CbmMcbm2018UnpackerAlgoTof &)
std::vector< ULong64_t > fvulGdpbTsFullLast
std::vector< Int_t > fviModuleId
void ProcessStarTrigger(const gdpbv100::Message &mess)
Bool_t fbDetChanThere[64]
std::chrono::steady_clock::time_point ftStartTimeUnix
Bool_t fbMonitorMode
Control flags.
CbmMcbm2018UnpackerAlgoTof()
std::vector< TH2 * > fhRawTotCh
void ProcessEndOfMsEpoch()
void ProcessEpoch(const gdpbv100::Message &mess, uint32_t uMesgIdx)
CbmMcbm2018UnpackerAlgoTof operator=(const CbmMcbm2018UnpackerAlgoTof &)
void SetMaxAsicInactive(Int_t ival)
std::vector< ULong64_t > fvulStarTsFullLast
std::vector< ULong64_t > fvulStarTsMid
UInt_t fuNrOfChannelsPerGet4
Number of GET4s per FEE.
UInt_t fuNrOfChannelsPerFee
Number of channels in each GET4.
UInt_t fuGet4Nr
running number (0 to fuNrOfGet4PerGdpb) of the Get4 chip of a unique GDPB for current message
UInt_t fuNrOfGet4PerFee
Number of FEBs per GDPB.
ULong64_t fulCurrentTsIdx
UInt_t fuGet4Id
Index of the DPB from which the MS currently unpacked is coming.
void SetVectCapInc(Double_t dIncFact)
void SetMonitorMode(Bool_t bFlagIn=kTRUE)
std::vector< ULong64_t > fvulCurrentEpoch
Data format control: Current time references for each GDPB: merged epoch marker, epoch cycle,...
std::vector< UInt_t > fvuStarTokenLast
void ProcessError(const gdpbv100::FullMessage &mess)
std::vector< TH2 * > fhChanCoinc
void ProcessPattern(const gdpbv100::FullMessage &mess)
std::vector< ULong64_t > fvulStarTsMsb
UInt_t fuCurrDpbId
Current equipment ID, tells from which DPB the current MS is originating.
std::vector< ULong64_t > fvulCurrentEpochFull
Epoch cycle from the Ms Start message and Epoch counter flip.
UInt_t fuNrOfChannelsPerGdpb
Number of GET4s per GDPB.
void SetDiamondDpbIdx(UInt_t uIdx=2)
UInt_t fuMsIndex
Start Time in ns of current MS from its index field in header.
std::vector< ULong64_t > fvulGdpbTsLsb
Double_t fdCapacityIncFactor
Bool_t fbDebugMonitorMode
Switch ON the filling of a minimal set of histograms.
std::vector< std::vector< gdpbv100::Message > > fvvmEpSupprBuffer
Buffers.
void ProcessSlCtrl(const gdpbv100::FullMessage &mess)
Bool_t ProcessMs(const fles::Timeslice &ts, size_t uMsCompIdx, size_t uMsIdx)
Double_t fdTsStartTime
SysId of the current MS in TS (0 to fuTotalMsNb)
Bool_t ReInitContainers()
static const UInt_t kuDetMask
void ProcessEpSupprBuffer()
std::vector< TH1 * > fhChCountRemap
std::vector< Int_t > fviRpcSide
Double_t fdStartTime
Epoch + Epoch Cycle.
void ProcessHit(const gdpbv100::FullMessage &mess)
UInt_t fuCurrentEquipmentId
Bool_t ProcessTs(const fles::Timeslice &ts)
Double_t fdFirstDigiTimeDif
std::vector< Bool_t > fvbMaskedComponents
Switch ON the filling of a additional set of histograms.
ULong64_t fulCurrentMsIdx
Idx of the current TS.
void SetTimeOffsetNs(Double_t dOffsetIn=0.0)
UInt_t fuNrOfFeePerGdpb
gDPB ID to index map
std::vector< ULong64_t > fvulGdpbTsMsb
[DPB], FIXME: dimension to be removed as not needed with real MS
void ProcessEpochCycle(const uint64_t &ulCycleData)
UInt_t fuCurrDpbIdx
Temp holder until Current equipment ID is properly filled in MS.
Bool_t CreateHistograms()
std::vector< Int_t > fviNrOfRpc
~CbmMcbm2018UnpackerAlgoTof()
void AddMsComponentToList(size_t component, UShort_t usDetectorId)
UInt_t fuNrOfGet4
Number of channels in each FEE.
std::vector< UInt_t > fvuStarTrigCmdLast
Double_t fdRefTime
Histograms.
Int_t GetArrayIndex(Int_t gdpbId, Int_t get4Id)
std::vector< Int_t > fviRpcType
std::vector< ULong64_t > fvulCurrentEpochCycle
Current epoch index, per DPB.
Double_t fdMsTime
End Time in ns of current TS Core from the index of the first MS first component.
std::vector< UInt_t > fvuStarDaqCmdLast
std::map< UInt_t, UInt_t > fGdpbIdIndexMap
Total number of GDPBs in the system.
UInt_t fuNrOfGet4PerGdpb
Total number of Get4 chips in the system.
Double_t fdTimeOffsetNs
User settings: Data correction parameters.
static const Int_t kiMaxNbFlibLinks
Constants.
std::vector< Int_t > fviRpcChUId
std::vector< Bool_t > fvbChanThere
void ProcessSysMess(const gdpbv100::FullMessage &mess)
size_t fuCurrentMsSysId
Idx of the current MS in TS (0 to fuTotalMsNb)