CbmRoot
Loading...
Searching...
No Matches
CbmDeviceUnpackTofStar2018 Class Reference

#include <CbmDeviceUnpackTofStar2018.h>

Inheritance diagram for CbmDeviceUnpackTofStar2018:
[legend]
Collaboration diagram for CbmDeviceUnpackTofStar2018:
[legend]

Public Member Functions

 CbmDeviceUnpackTofStar2018 ()
 
virtual ~CbmDeviceUnpackTofStar2018 ()
 

Protected Member Functions

virtual void InitTask ()
 
bool HandleData (FairMQMessagePtr &, int)
 

Private Member Functions

bool CheckTimeslice (const fles::Timeslice &ts)
 
void PrintMicroSliceDescriptor (const fles::MicrosliceDescriptor &mdsc)
 
bool IsChannelNameAllowed (std::string channelName)
 
Bool_t InitContainers ()
 
Bool_t ReInitContainers ()
 
void CreateHistograms ()
 
void FillHitInfo (ngdpb::Message)
 
void FillStarTrigInfo (ngdpb::Message)
 
void FillEpochInfo (ngdpb::Message)
 
void PrintSlcInfo (ngdpb::Message)
 
void PrintSysInfo (ngdpb::Message)
 
void PrintGenInfo (ngdpb::Message)
 
Bool_t DoUnpack (const fles::Timeslice &ts, size_t component)
 
Int_t GetArrayIndex (Int_t gdpbId, Int_t get4Id)
 

Private Attributes

uint64_t fNumMessages
 
std::vector< std::string > fAllowedChannels = {"tofcomponent", "parameters"}
 
size_t fuMsAcceptsPercent
 
size_t fuOverlapMsNb
 
UInt_t fuMinNbGdpb
 
UInt_t fuCurrNbGdpb
 
UInt_t fuNrOfGdpbs
 
UInt_t fuNrOfFebsPerGdpb
 
UInt_t fuNrOfGet4PerFeb
 
UInt_t fuNrOfChannelsPerGet4
 
UInt_t fuNrOfChannelsPerFeet
 
UInt_t fuNrOfGet4
 
UInt_t fuNrOfGet4PerGdpb
 
UInt_t fuNrOfChannelsPerGdpb
 
std::vector< int > fMsgCounter
 
std::map< UInt_t, UInt_t > fGdpbIdIndexMap
 
UInt_t fuGdpbId
 
UInt_t fuGdpbNr
 
UInt_t fuGet4Id
 
UInt_t fuGet4Nr
 
std::vector< ULong64_t > fvulCurrentEpoch
 
std::vector< Bool_tfvbFirstEpochSeen
 
Int_t fNofEpochs
 
ULong64_t fulCurrentEpochTime
 
Int_t fEquipmentId
 
Double_t fdMsIndex
 
Double_t fdTShiftRef
 
Bool_t fbEpochSuppModeOn
 
Bool_t fbGet4M24b
 
Bool_t fbGet4v20
 
Bool_t fbMergedEpochsOn
 
CbmTofDigiExp * fDigi
 
CbmTofUnpackPar * fUnpackPar
 
Double_t fdRefTime
 
Double_t fdLastDigiTime
 
Double_t fdFirstDigiTimeDif
 
Double_t fdEvTime0
 
TH1 * fhRawTDigEvBmon
 
TH1 * fhRawTDigRef0
 
TH1 * fhRawTDigRef
 
TH1 * fhRawTRefDig0
 
TH1 * fhRawTRefDig1
 
TH1 * fhRawDigiLastDigi
 
std::vector< TH2 * > fhRawTotCh
 
std::vector< TH1 * > fhChCount
 
std::vector< Bool_tfvbChanThere
 
std::vector< TH2 * > fhChanCoinc
 
Bool_t fbDetChanThere [64]
 
TH2 * fhDetChanCoinc
 
std::vector< std::vector< ngdpb::Message > > fvmEpSupprBuffer
 
CbmTbDaqBufferfBuffer
 
ULong64_t fulGdpbTsMsb
 
ULong64_t fulGdpbTsLsb
 
ULong64_t fulStarTsMsb
 
ULong64_t fulStarTsMid
 
ULong64_t fulGdpbTsFullLast
 
ULong64_t fulStarTsFullLast
 
UInt_t fuStarTokenLast
 
UInt_t fuStarDaqCmdLast
 
UInt_t fuStarTrigCmdLast
 

Detailed Description

Definition at line 37 of file CbmDeviceUnpackTofStar2018.h.

Constructor & Destructor Documentation

◆ CbmDeviceUnpackTofStar2018()

◆ ~CbmDeviceUnpackTofStar2018()

CbmDeviceUnpackTofStar2018::~CbmDeviceUnpackTofStar2018 ( )
virtual

Definition at line 716 of file CbmDeviceUnpackTofStar2018.cxx.

Member Function Documentation

◆ CheckTimeslice()

bool CbmDeviceUnpackTofStar2018::CheckTimeslice ( const fles::Timeslice & ts)
private

Definition at line 733 of file CbmDeviceUnpackTofStar2018.cxx.

Referenced by HandleData().

◆ CreateHistograms()

void CbmDeviceUnpackTofStar2018::CreateHistograms ( )
private

◆ DoUnpack()

◆ FillEpochInfo()

void CbmDeviceUnpackTofStar2018::FillEpochInfo ( ngdpb::Message mess)
private

In Ep. Suppr. Mode, receive following epoch instead of previous Re-align the epoch number of the message in case it will be used later: We received the epoch after the data instead of the one before!

Definition at line 539 of file CbmDeviceUnpackTofStar2018.cxx.

References FillHitInfo(), fNofEpochs, fuGet4Nr, fulCurrentEpochTime, fvbFirstEpochSeen, fvmEpSupprBuffer, and fvulCurrentEpoch.

Referenced by DoUnpack().

◆ FillHitInfo()

void CbmDeviceUnpackTofStar2018::FillHitInfo ( ngdpb::Message mess)
private

◆ FillStarTrigInfo()

void CbmDeviceUnpackTofStar2018::FillStarTrigInfo ( ngdpb::Message mess)
private

◆ GetArrayIndex()

Int_t CbmDeviceUnpackTofStar2018::GetArrayIndex ( Int_t gdpbId,
Int_t get4Id )
inlineprivate

Definition at line 154 of file CbmDeviceUnpackTofStar2018.h.

References fuNrOfGet4PerGdpb.

Referenced by InitContainers().

◆ HandleData()

bool CbmDeviceUnpackTofStar2018::HandleData ( FairMQMessagePtr & msg,
int  )
protected

Definition at line 301 of file CbmDeviceUnpackTofStar2018.cxx.

References CheckTimeslice(), DoUnpack(), and fNumMessages.

Referenced by InitTask().

◆ InitContainers()

Bool_t CbmDeviceUnpackTofStar2018::InitContainers ( )
private

◆ InitTask()

void CbmDeviceUnpackTofStar2018::InitTask ( )
protectedvirtual

◆ IsChannelNameAllowed()

bool CbmDeviceUnpackTofStar2018::IsChannelNameAllowed ( std::string channelName)
private

Definition at line 128 of file CbmDeviceUnpackTofStar2018.cxx.

References fAllowedChannels, and pos.

Referenced by InitTask().

◆ PrintGenInfo()

void CbmDeviceUnpackTofStar2018::PrintGenInfo ( ngdpb::Message mess)
private

Definition at line 613 of file CbmDeviceUnpackTofStar2018.cxx.

References iMess.

Referenced by DoUnpack().

◆ PrintMicroSliceDescriptor()

void CbmDeviceUnpackTofStar2018::PrintMicroSliceDescriptor ( const fles::MicrosliceDescriptor & mdsc)
private

Definition at line 719 of file CbmDeviceUnpackTofStar2018.cxx.

◆ PrintSlcInfo()

void CbmDeviceUnpackTofStar2018::PrintSlcInfo ( ngdpb::Message )
private

Nothing to do, maybe later use it to trakc parameter changes like treshold?

Definition at line 595 of file CbmDeviceUnpackTofStar2018.cxx.

Referenced by DoUnpack().

◆ PrintSysInfo()

void CbmDeviceUnpackTofStar2018::PrintSysInfo ( ngdpb::Message mess)
private

Definition at line 625 of file CbmDeviceUnpackTofStar2018.cxx.

References fuGdpbId, fuGet4Nr, fulCurrentEpochTime, and fvulCurrentEpoch.

Referenced by DoUnpack().

◆ ReInitContainers()

Member Data Documentation

◆ fAllowedChannels

std::vector<std::string> CbmDeviceUnpackTofStar2018::fAllowedChannels = {"tofcomponent", "parameters"}
private

Definition at line 49 of file CbmDeviceUnpackTofStar2018.h.

Referenced by IsChannelNameAllowed().

◆ fbDetChanThere

Bool_t CbmDeviceUnpackTofStar2018::fbDetChanThere[64]
private

Definition at line 117 of file CbmDeviceUnpackTofStar2018.h.

◆ fbEpochSuppModeOn

Bool_t CbmDeviceUnpackTofStar2018::fbEpochSuppModeOn
private

◆ fbGet4M24b

Bool_t CbmDeviceUnpackTofStar2018::fbGet4M24b
private

Definition at line 94 of file CbmDeviceUnpackTofStar2018.h.

Referenced by CbmDeviceUnpackTofStar2018(), and DoUnpack().

◆ fbGet4v20

Bool_t CbmDeviceUnpackTofStar2018::fbGet4v20
private

Definition at line 95 of file CbmDeviceUnpackTofStar2018.h.

Referenced by CbmDeviceUnpackTofStar2018(), and FillHitInfo().

◆ fbMergedEpochsOn

Bool_t CbmDeviceUnpackTofStar2018::fbMergedEpochsOn
private

Definition at line 96 of file CbmDeviceUnpackTofStar2018.h.

Referenced by CbmDeviceUnpackTofStar2018(), and DoUnpack().

◆ fBuffer

CbmTbDaqBuffer* CbmDeviceUnpackTofStar2018::fBuffer
private

◆ fdEvTime0

Double_t CbmDeviceUnpackTofStar2018::fdEvTime0
private

Definition at line 106 of file CbmDeviceUnpackTofStar2018.h.

Referenced by CbmDeviceUnpackTofStar2018().

◆ fdFirstDigiTimeDif

Double_t CbmDeviceUnpackTofStar2018::fdFirstDigiTimeDif
private

Definition at line 105 of file CbmDeviceUnpackTofStar2018.h.

Referenced by CbmDeviceUnpackTofStar2018(), and FillStarTrigInfo().

◆ fDigi

CbmTofDigiExp* CbmDeviceUnpackTofStar2018::fDigi
private

◆ fdLastDigiTime

Double_t CbmDeviceUnpackTofStar2018::fdLastDigiTime
private

◆ fdMsIndex

Double_t CbmDeviceUnpackTofStar2018::fdMsIndex
private

Definition at line 90 of file CbmDeviceUnpackTofStar2018.h.

Referenced by CbmDeviceUnpackTofStar2018(), and DoUnpack().

◆ fdRefTime

Double_t CbmDeviceUnpackTofStar2018::fdRefTime
private

Definition at line 103 of file CbmDeviceUnpackTofStar2018.h.

Referenced by CbmDeviceUnpackTofStar2018().

◆ fdTShiftRef

Double_t CbmDeviceUnpackTofStar2018::fdTShiftRef
private

◆ fEquipmentId

Int_t CbmDeviceUnpackTofStar2018::fEquipmentId
private

Time stamp of current epoch

Definition at line 89 of file CbmDeviceUnpackTofStar2018.h.

Referenced by CbmDeviceUnpackTofStar2018(), and DoUnpack().

◆ fGdpbIdIndexMap

std::map<UInt_t, UInt_t> CbmDeviceUnpackTofStar2018::fGdpbIdIndexMap
private

◆ fhChanCoinc

std::vector<TH2*> CbmDeviceUnpackTofStar2018::fhChanCoinc
private

Definition at line 116 of file CbmDeviceUnpackTofStar2018.h.

Referenced by CbmDeviceUnpackTofStar2018(), and CreateHistograms().

◆ fhChCount

std::vector<TH1*> CbmDeviceUnpackTofStar2018::fhChCount
private

◆ fhDetChanCoinc

TH2* CbmDeviceUnpackTofStar2018::fhDetChanCoinc
private

Definition at line 118 of file CbmDeviceUnpackTofStar2018.h.

Referenced by CbmDeviceUnpackTofStar2018(), and CreateHistograms().

◆ fhRawDigiLastDigi

TH1* CbmDeviceUnpackTofStar2018::fhRawDigiLastDigi
private

Definition at line 112 of file CbmDeviceUnpackTofStar2018.h.

Referenced by CbmDeviceUnpackTofStar2018(), and CreateHistograms().

◆ fhRawTDigEvBmon

TH1* CbmDeviceUnpackTofStar2018::fhRawTDigEvBmon
private

Definition at line 107 of file CbmDeviceUnpackTofStar2018.h.

Referenced by CbmDeviceUnpackTofStar2018(), and CreateHistograms().

◆ fhRawTDigRef

TH1* CbmDeviceUnpackTofStar2018::fhRawTDigRef
private

Definition at line 109 of file CbmDeviceUnpackTofStar2018.h.

Referenced by CbmDeviceUnpackTofStar2018(), and CreateHistograms().

◆ fhRawTDigRef0

TH1* CbmDeviceUnpackTofStar2018::fhRawTDigRef0
private

Definition at line 108 of file CbmDeviceUnpackTofStar2018.h.

Referenced by CbmDeviceUnpackTofStar2018(), and CreateHistograms().

◆ fhRawTotCh

std::vector<TH2*> CbmDeviceUnpackTofStar2018::fhRawTotCh
private

◆ fhRawTRefDig0

TH1* CbmDeviceUnpackTofStar2018::fhRawTRefDig0
private

◆ fhRawTRefDig1

TH1* CbmDeviceUnpackTofStar2018::fhRawTRefDig1
private

◆ fMsgCounter

std::vector<int> CbmDeviceUnpackTofStar2018::fMsgCounter
private

Definition at line 67 of file CbmDeviceUnpackTofStar2018.h.

Referenced by CbmDeviceUnpackTofStar2018(), and DoUnpack().

◆ fNofEpochs

Int_t CbmDeviceUnpackTofStar2018::fNofEpochs
private

Definition at line 86 of file CbmDeviceUnpackTofStar2018.h.

Referenced by CbmDeviceUnpackTofStar2018(), and FillEpochInfo().

◆ fNumMessages

uint64_t CbmDeviceUnpackTofStar2018::fNumMessages
private

Definition at line 47 of file CbmDeviceUnpackTofStar2018.h.

Referenced by CbmDeviceUnpackTofStar2018(), and HandleData().

◆ fuCurrNbGdpb

UInt_t CbmDeviceUnpackTofStar2018::fuCurrNbGdpb
private

Definition at line 55 of file CbmDeviceUnpackTofStar2018.h.

Referenced by CbmDeviceUnpackTofStar2018().

◆ fuGdpbId

UInt_t CbmDeviceUnpackTofStar2018::fuGdpbId
private

Definition at line 70 of file CbmDeviceUnpackTofStar2018.h.

Referenced by CbmDeviceUnpackTofStar2018(), DoUnpack(), and PrintSysInfo().

◆ fuGdpbNr

UInt_t CbmDeviceUnpackTofStar2018::fuGdpbNr
private

Definition at line 71 of file CbmDeviceUnpackTofStar2018.h.

Referenced by CbmDeviceUnpackTofStar2018(), DoUnpack(), and FillHitInfo().

◆ fuGet4Id

UInt_t CbmDeviceUnpackTofStar2018::fuGet4Id
private

Definition at line 72 of file CbmDeviceUnpackTofStar2018.h.

Referenced by CbmDeviceUnpackTofStar2018(), and DoUnpack().

◆ fuGet4Nr

UInt_t CbmDeviceUnpackTofStar2018::fuGet4Nr
private

◆ fulCurrentEpochTime

ULong64_t CbmDeviceUnpackTofStar2018::fulCurrentEpochTime
private

Current epoch marker for each ROC

Definition at line 87 of file CbmDeviceUnpackTofStar2018.h.

Referenced by CbmDeviceUnpackTofStar2018(), FillEpochInfo(), and PrintSysInfo().

◆ fulGdpbTsFullLast

ULong64_t CbmDeviceUnpackTofStar2018::fulGdpbTsFullLast
private

Definition at line 129 of file CbmDeviceUnpackTofStar2018.h.

Referenced by CbmDeviceUnpackTofStar2018(), and FillStarTrigInfo().

◆ fulGdpbTsLsb

ULong64_t CbmDeviceUnpackTofStar2018::fulGdpbTsLsb
private

Definition at line 126 of file CbmDeviceUnpackTofStar2018.h.

Referenced by CbmDeviceUnpackTofStar2018(), and FillStarTrigInfo().

◆ fulGdpbTsMsb

ULong64_t CbmDeviceUnpackTofStar2018::fulGdpbTsMsb
private

Definition at line 125 of file CbmDeviceUnpackTofStar2018.h.

Referenced by CbmDeviceUnpackTofStar2018(), and FillStarTrigInfo().

◆ fulStarTsFullLast

ULong64_t CbmDeviceUnpackTofStar2018::fulStarTsFullLast
private

Definition at line 130 of file CbmDeviceUnpackTofStar2018.h.

Referenced by CbmDeviceUnpackTofStar2018(), and FillStarTrigInfo().

◆ fulStarTsMid

ULong64_t CbmDeviceUnpackTofStar2018::fulStarTsMid
private

Definition at line 128 of file CbmDeviceUnpackTofStar2018.h.

Referenced by CbmDeviceUnpackTofStar2018(), and FillStarTrigInfo().

◆ fulStarTsMsb

ULong64_t CbmDeviceUnpackTofStar2018::fulStarTsMsb
private

Definition at line 127 of file CbmDeviceUnpackTofStar2018.h.

Referenced by CbmDeviceUnpackTofStar2018(), and FillStarTrigInfo().

◆ fuMinNbGdpb

UInt_t CbmDeviceUnpackTofStar2018::fuMinNbGdpb
private

Ignore Overlap Ms: all fuOverlapMsNb MS at the end of timeslice

Definition at line 54 of file CbmDeviceUnpackTofStar2018.h.

Referenced by CbmDeviceUnpackTofStar2018(), and ReInitContainers().

◆ fuMsAcceptsPercent

size_t CbmDeviceUnpackTofStar2018::fuMsAcceptsPercent
private

Definition at line 52 of file CbmDeviceUnpackTofStar2018.h.

Referenced by CbmDeviceUnpackTofStar2018().

◆ fUnpackPar

CbmTofUnpackPar* CbmDeviceUnpackTofStar2018::fUnpackPar
private

◆ fuNrOfChannelsPerFeet

UInt_t CbmDeviceUnpackTofStar2018::fuNrOfChannelsPerFeet
private

Definition at line 62 of file CbmDeviceUnpackTofStar2018.h.

Referenced by CbmDeviceUnpackTofStar2018(), and ReInitContainers().

◆ fuNrOfChannelsPerGdpb

UInt_t CbmDeviceUnpackTofStar2018::fuNrOfChannelsPerGdpb
private

◆ fuNrOfChannelsPerGet4

UInt_t CbmDeviceUnpackTofStar2018::fuNrOfChannelsPerGet4
private

◆ fuNrOfFebsPerGdpb

UInt_t CbmDeviceUnpackTofStar2018::fuNrOfFebsPerGdpb
private

◆ fuNrOfGdpbs

UInt_t CbmDeviceUnpackTofStar2018::fuNrOfGdpbs
private

◆ fuNrOfGet4

UInt_t CbmDeviceUnpackTofStar2018::fuNrOfGet4
private

Definition at line 63 of file CbmDeviceUnpackTofStar2018.h.

Referenced by CbmDeviceUnpackTofStar2018(), and ReInitContainers().

◆ fuNrOfGet4PerFeb

UInt_t CbmDeviceUnpackTofStar2018::fuNrOfGet4PerFeb
private

Definition at line 59 of file CbmDeviceUnpackTofStar2018.h.

Referenced by CbmDeviceUnpackTofStar2018(), and ReInitContainers().

◆ fuNrOfGet4PerGdpb

UInt_t CbmDeviceUnpackTofStar2018::fuNrOfGet4PerGdpb
private

◆ fuOverlapMsNb

size_t CbmDeviceUnpackTofStar2018::fuOverlapMsNb
private

Reject Ms with index inside TS above this, assumes 100 MS per TS

Definition at line 53 of file CbmDeviceUnpackTofStar2018.h.

Referenced by CbmDeviceUnpackTofStar2018(), and DoUnpack().

◆ fuStarDaqCmdLast

UInt_t CbmDeviceUnpackTofStar2018::fuStarDaqCmdLast
private

Definition at line 132 of file CbmDeviceUnpackTofStar2018.h.

Referenced by CbmDeviceUnpackTofStar2018(), and FillStarTrigInfo().

◆ fuStarTokenLast

UInt_t CbmDeviceUnpackTofStar2018::fuStarTokenLast
private

Definition at line 131 of file CbmDeviceUnpackTofStar2018.h.

Referenced by CbmDeviceUnpackTofStar2018(), and FillStarTrigInfo().

◆ fuStarTrigCmdLast

UInt_t CbmDeviceUnpackTofStar2018::fuStarTrigCmdLast
private

Definition at line 133 of file CbmDeviceUnpackTofStar2018.h.

Referenced by CbmDeviceUnpackTofStar2018(), and FillStarTrigInfo().

◆ fvbChanThere

std::vector<Bool_t> CbmDeviceUnpackTofStar2018::fvbChanThere
private

◆ fvbFirstEpochSeen

std::vector<Bool_t> CbmDeviceUnpackTofStar2018::fvbFirstEpochSeen
private

◆ fvmEpSupprBuffer

std::vector<std::vector<ngdpb::Message> > CbmDeviceUnpackTofStar2018::fvmEpSupprBuffer
private

◆ fvulCurrentEpoch

std::vector<ULong64_t> CbmDeviceUnpackTofStar2018::fvulCurrentEpoch
private

Current epoch marker for each GDPB and GET4 (first epoch in the stream initializes the map item) pointer points to an array of size fNrOfGdpbs * fNrOfGet4PerGdpb The correct array index is calculated using the function GetArrayIndex(gdpbId, get4Id)

Definition at line 83 of file CbmDeviceUnpackTofStar2018.h.

Referenced by CbmDeviceUnpackTofStar2018(), FillEpochInfo(), FillHitInfo(), InitContainers(), and PrintSysInfo().


The documentation for this class was generated from the following files: