15#ifndef CBMDEVICEUNPACKTOFMCBM2018_H_
16#define CBMDEVICEUNPACKTOFMCBM2018_H_
21#include "MicrosliceDescriptor.hpp"
22#include "Timeslice.hpp"
24#include "FairMQDevice.h"
52 virtual bool SendDigis(std::vector<CbmTofDigi*>,
int);
68 std::vector<std::string>
fAllowedChannels = {
"tofcomponent",
"parameters",
"tofdigis",
"syscmd"};
177 Bool_t
DoUnpack(
const fles::Timeslice& ts,
size_t component);
bool CheckTimeslice(const fles::Timeslice &ts)
UInt_t fuNrOfChannelsPerGet4
Bool_t ReInitContainers()
std::vector< TH2 * > fhRawTotCh
std::vector< UInt_t > fvuGet4ToPadi
std::vector< Bool_t > fvbFirstEpochSeen
std::vector< Int_t > fviNrOfRpc
bool IsChannelNameAllowed(std::string channelName)
std::vector< int > fMsgCounter
Double_t fdTsCoreSizeInNs
std::vector< Int_t > fviRpcSide
std::vector< Int_t > fviRpcChUId
Bool_t DoUnpack(const fles::Timeslice &ts, size_t component)
std::vector< UInt_t > fvuElinkToGet4
5 FEE with 8 GET4 each
std::vector< ULong64_t > fvulCurrentEpoch
std::vector< Int_t > fiReqDigiAddr
CbmMcbm2018TofPar * fUnpackPar
std::vector< std::string > fAllowedChannels
std::vector< Int_t > fviModuleId
std::vector< Int_t > fviRpcType
UInt_t ConvertElinkToGet4(UInt_t uElinkIdx)
std::vector< UInt_t > fvuGet4ToElink
Double_t fdFirstDigiTimeDif
void AddMsComponentToList(size_t component, UShort_t usDetectorId)
Temp until we change from CbmMcbmUnpack to something else.
void SetTimeOffsetNs(Double_t dOffsetIn=0.0)
std::vector< UInt_t > fvuPadiToGet4
void SetIgnoreOverlapMs(Bool_t bFlagIn=kTRUE)
Algo settings setters.
std::vector< int > fEventHeader
Int_t GetArrayIndex(Int_t gdpbId, Int_t get4Id)
CbmDeviceUnpackTofMcbm2018 operator=(const CbmDeviceUnpackTofMcbm2018 &)=delete
std::vector< TH2 * > fhChanCoinc
bool HandleParts(FairMQParts &, int)
virtual bool SendDigis(std::vector< CbmTofDigi * >, int)
uint64_t fiSelectComponents
std::vector< std::vector< std::string > > fChannelsToSend
void SetDiamondDpbIdx(UInt_t uIdx=2)
UInt_t fuNrOfChannelsPerGdpb
const UInt_t kuNbFeePerGbtx
std::map< UInt_t, UInt_t > fGdpbIdIndexMap
const UInt_t kuNbGbtxPerGdpb
bool HandleMessage(FairMQMessagePtr &, int)
static const UInt_t kuNbGet4PerGbtx
virtual ~CbmDeviceUnpackTofMcbm2018()
CbmDeviceUnpackTofMcbm2018(const CbmDeviceUnpackTofMcbm2018 &)=delete
Control flags.
bool HandleData(FairMQMessagePtr &, int)
void SetNbMsInTs(size_t, size_t)
UInt_t ConvertGet4ToElink(UInt_t uGet4Idx)
virtual void BuildTint(int)
UInt_t fuNrOfChannelsPerFee
ULong64_t fulCurrentEpochTime
CbmMcbm2018UnpackerAlgoTof * fUnpackerAlgo
Processing algo.
std::vector< Bool_t > fvbChanThere
CbmDeviceUnpackTofMcbm2018()
void PrintMicroSliceDescriptor(const fles::MicrosliceDescriptor &mdsc)
std::vector< TH1 * > fhChCount
Singleton buffer class for CBM raw data.
Data class for expanded digital TOF information.