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