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

#include <CbmMcbm2018UnpackerAlgoRich2020.h>

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

Public Member Functions

 CbmMcbm2018UnpackerAlgoRich2020 ()
 
virtual ~CbmMcbm2018UnpackerAlgoRich2020 ()
 
virtual Bool_t Init ()
 
virtual void Reset ()
 
virtual void Finish ()
 
virtual Bool_t InitContainers ()
 
virtual Bool_t ReInitContainers ()
 
virtual TList * GetParList ()
 
Bool_t InitParameters ()
 
void AddMsComponentToList (size_t component, UShort_t usDetectorId)
 
virtual Bool_t ProcessTs (const fles::Timeslice &ts)
 
virtual Bool_t ProcessTs (const fles::Timeslice &ts, size_t component)
 
virtual Bool_t ProcessMs (const fles::Timeslice &ts, size_t uMsCompIdx, size_t uMsIdx)
 
Bool_t DebugMs (const fles::Timeslice &ts, size_t uMsCompIdx, size_t uMsIdx)
 
void SetMonitorMode (Bool_t bFlagIn=kTRUE)
 
void SetTimeOffsetNs (Double_t dOffsetIn=0.0)
 
void DoTotCorr (Bool_t bDoToTCorr=kTRUE)
 
void SetRawDataMode (Bool_t bDebug=kFALSE)
 
Int_t Debug (const uint8_t *ptr, const size_t size)
 
Bool_t CreateHistograms ()
 Exclude from ROOT dictionnary due to missing empty constructor!!
 
Bool_t ResetHistograms ()
 
TH1D * GetTotH1 (Int_t fpgaID, Int_t channel)
 
TH2D * GetTotH2 (Int_t fpgaID)
 
void SetVectCapInc (Double_t dIncFact)
 
 ClassDef (CbmMcbm2018UnpackerAlgoRich2020, 1)
 
virtual void SetParameter (std::string)
 
virtual std::string GetParameter (std::string)
 
void AddHistoToVector (TNamed *pointer, std::string sFolder="")
 For monitor algos.
 
std::vector< std::pair< TNamed *, std::string > > GetHistoVector ()
 
void AddCanvasToVector (TCanvas *pointer, std::string sFolder="")
 
std::vector< std::pair< TCanvas *, std::string > > GetCanvasVector ()
 
void ClearVector ()
 For unpacker algos.
 
std::vector< CbmRichDigi > & GetVector ()
 
void ClearErrorVector ()
 
std::vector< CbmErrorMessage > & GetErrorVector ()
 
void SetIgnoreOverlapMs (Bool_t bFlagIn=kTRUE)
 Control flags.
 

Public Attributes

std::vector< TH2D * > fhTDCre_corrected1
 
std::vector< TH2D * > fhTDCre_corrected2
 
std::vector< TCanvas * > fcTot2d
 
TH1 * fhVectorSize = nullptr
 
TH1 * fhVectorCapacity = nullptr
 
TH2D * fhTdcErrors = nullptr
 
TH2D * fhEventErrors = nullptr
 
TH2D * fhDiRICHWords = nullptr
 
TH2D * fhChnlWords = nullptr
 
TH1 * fhEventSize = nullptr
 
TH2 * fhSubEventSize = nullptr
 
TH2 * fhSubSubEventSize = nullptr
 
TH2 * fhChnlSize = nullptr
 
std::array< unsigned int, 33 > fChnlMsgCnt
 
bool fDebugPrint = 0
 
std::map< uint16_t, uint16_t > fMapFEE
 
std::map< Int_t, std::map< Int_t, TH1D * > > fhTotMap
 
std::map< Int_t, TH2D * > fhTot2dMap
 
size_t fuTsMaxVectorSize = 0
 
Double_t fdCapacityIncFactor = 1.1
 

Protected Member Functions

Bool_t CheckParameterValidity (std::string, std::string)
 Map of parameter name and type.
 

Protected Attributes

TList * fParCList
 Parameter management.
 
std::vector< size_t > fvMsComponentsList
 Parameters related to FLES containers.
 
size_t fuNbCoreMsPerTs
 
size_t fuNbOverMsPerTs
 
size_t fuNbMsLoop
 
Bool_t fbIgnoreOverlapMs
 
Double_t fdMsSizeInNs
 /‍** Ignore Overlap Ms: all fuOverlapMsNb MS at the end of timeslice **‍/
 
Double_t fdTsCoreSizeInNs
 Size of a single MS, [nanoseconds].
 
Double_t fdTsFullSizeInNs
 Total size of the core MS in a TS, [nanoseconds].
 
std::vector< std::pair< TNamed *, std::string > > fvpAllHistoPointers
 Total size of the core MS in a TS, [nanoseconds].
 
std::vector< std::pair< TCanvas *, std::string > > fvpAllCanvasPointers
 Vector of pointers to histograms + optional folder name.
 
std::vector< CbmRichDigifDigiVect
 Vector of pointers to canvases + optional folder name.
 
std::vector< CbmErrorMessagefErrVect
 
std::map< std::string, std::string > fParameterMap
 For any algo.
 

Private Member Functions

void InitStorage ()
 
void ProcessMicroslice (size_t const size, uint8_t const *const ptr)
 
Int_t ProcessTRBevent (size_t const size, uint8_t const *const ptr)
 
Int_t ProcessTRBeventHeader (size_t const size, uint8_t const *const ptr)
 
Int_t ProcessSKIPsubevent (size_t const size, uint8_t const *const ptr)
 
Int_t ProcessCTSsubevent (size_t const size, uint8_t const *const ptr)
 
Int_t ProcessTRBsubevent (size_t const size, uint8_t const *const ptr)
 
Int_t ProcessTRBsubsubevent (size_t const size, uint8_t const *const ptr, Int_t const hubOffset, size_t const hubSize)
 
Int_t ProcessTDCword (uint8_t const *const ptr, Int_t const word, size_t const size)
 
void ProcessTimestampWord (Int_t tdcData)
 
void WriteOutputDigi (Int_t fpgaID, Int_t channel, Double_t time, Double_t tot, uint64_t MSidx)
 
void FinalizeTs ()
 
void ErrorMsg (uint16_t errbits, RichErrorType type, uint16_t tdcAddr=0)
 
Int_t GetPixelUID (Int_t fpgaID, Int_t ch) const
 
void findTDCAlignmentError (uint8_t const *const ptr, size_t const size)
 
void ProcessRisingEdge (Int_t subSubEvId, Int_t channel, Double_t time)
 
void ProcessFallingEdge (Int_t subSubEvId, Int_t channel, Double_t time)
 

Private Attributes

Bool_t fbMonitorMode
 Control flags.
 
Bool_t fbDebugMonitorMode
 Switch ON the filling of a minimal set of histograms.
 
Bool_t fRawDataMode
 Switch ON the filling of a additional set of histograms.
 
Bool_t fError
 
TrbNetState fTrbState
 flag for an error in the datastream
 
uint32_t fErrorCorr
 
Bool_t fbDoToTCorr
 User setting: kTRUE activates ToT correction from Parameterfile.
 
Bool_t fSkipMs
 
Double_t fdTimeOffsetNs
 User settings: Data correction parameters.
 
size_t fDataSize = 0
 
Int_t fRICHcompIdx
 
CbmMcbm2018RichParfUnpackPar
 
uint64_t fTScounter
 
Int_t fCurMSid
 
uint64_t fCurMSidx
 
Int_t fGwordCnt
 
Bool_t fInSubSubEvent
 
UInt_t fCurEpochCounter
 
Int_t fSubSubEvId
 
Bool_t fLastFeeOnHub = false
 
std::vector< Int_t > fTDCAlignmentErrorPositions
 
Int_t fTdcWordCorrectionCnt = 0
 
Int_t fTdcWordCorrectionGlobalCnt = 0
 
Int_t fSkipCnt = 0
 
Double_t fLastCTSch0_re_time
 
Double_t fLastCTSch2_re_time
 
Double_t fLastCTSch2_fe_time
 
Double_t fPrevLastCTSch0_re_time
 
Double_t fPrevLastCTSch2_re_time
 
Double_t fPrevLastCTSch2_fe_time
 
TArrayD fLastCh0_re_time
 
TArrayD fPrevLastCh0_re_time
 
std::vector< CbmMcbmRichEdgefRisingEdgesBuf
 
std::vector< CbmMcbmRichEdgefFallingEdgesBuf
 Exclude from ROOT dictionnary due to missing empty constructor!!
 

Detailed Description

Definition at line 59 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Constructor & Destructor Documentation

◆ CbmMcbm2018UnpackerAlgoRich2020()

CbmMcbm2018UnpackerAlgoRich2020::CbmMcbm2018UnpackerAlgoRich2020 ( )

CbmMcbm2018UnpackerAlgoRich20202020 E. Ovcharenko, Mar 2019 based on other detectors' classes by P.-A. Loizeau Consider two consequent microslices A and B. Each microslice contains one CTS subevent which contains at least 3 timestamp messages. A microslice may also contain TRB subevents, each containing also one timestamp message from ch0.

Microslice A

CTS | ch 0 re = AC0R (stands for ms A, Cts, ch 0, Rising edge) CTS | ch 2 fe

CTS | ch 2 re = AC2R (stands for ms A, Cts, ch 2, Rising edge)

TDC K | ch 0 re

TDC Z | ch 0 re = AZ0R (stands for ms A, tdc Z, ch 0, Rising edge)) | ch X re | ch X fe

| ...

...

Microslice B (next after A)

CTS | ch 0 re CTS | ch 2 fe

CTS | ch 2 re

TDC L | ch 0 re

TDC Z | ch 0 re | ch Y re = (T - AZ0R) + corr | ch Y fe

| ...

...

corr = -(AC2R-AC0R)

Uncorrected full time in ns of the TIMESTAMP message calculated as T = epoch*2048.*5. + (coarse)*5. - fine*0.005

Full corrected global time is then computed by adding the microslice index from the descriptor to the corrected time:

fullTimeCorr = (T - AZ0R) - (AC2R-AC0R) + MSidx

Definition at line 77 of file CbmMcbm2018UnpackerAlgoRich2020.cxx.

References Init().

◆ ~CbmMcbm2018UnpackerAlgoRich2020()

CbmMcbm2018UnpackerAlgoRich2020::~CbmMcbm2018UnpackerAlgoRich2020 ( )
virtual

Member Function Documentation

◆ AddCanvasToVector()

void CbmStar2019Algo< CbmRichDigi >::AddCanvasToVector ( TCanvas * pointer,
std::string sFolder = "" )
inlineinherited

◆ AddHistoToVector()

void CbmStar2019Algo< CbmRichDigi >::AddHistoToVector ( TNamed * pointer,
std::string sFolder = "" )
inlineinherited

◆ AddMsComponentToList()

void CbmMcbm2018UnpackerAlgoRich2020::AddMsComponentToList ( size_t component,
UShort_t usDetectorId )

Copied from other detectors without any brain effort...

Copied from other detectors without any brain effort... A little bug-fix added

Check for duplicates and ignore if it is the case

Add to list

Definition at line 180 of file CbmMcbm2018UnpackerAlgoRich2020.cxx.

References fRICHcompIdx, and CbmStar2019Algo< CbmRichDigi >::fvMsComponentsList.

Referenced by CbmMcbm2018UnpackerTaskRich2020::AddMsComponentToList().

◆ CheckParameterValidity()

Bool_t CbmStar2019Algo< CbmRichDigi >::CheckParameterValidity ( std::string ,
std::string  )
inlineprotectedinherited

Map of parameter name and type.

Definition at line 140 of file CbmStar2019Algo.h.

◆ ClassDef()

CbmMcbm2018UnpackerAlgoRich2020::ClassDef ( CbmMcbm2018UnpackerAlgoRich2020 ,
1  )

◆ ClearErrorVector()

void CbmStar2019Algo< CbmRichDigi >::ClearErrorVector ( )
inlineinherited

Definition at line 97 of file CbmStar2019Algo.h.

◆ ClearVector()

void CbmStar2019Algo< CbmRichDigi >::ClearVector ( )
inlineinherited

For unpacker algos.

Definition at line 95 of file CbmStar2019Algo.h.

◆ CreateHistograms()

◆ Debug()

Int_t CbmMcbm2018UnpackerAlgoRich2020::Debug ( const uint8_t * ptr,
const size_t size )

Definition at line 1690 of file CbmMcbm2018UnpackerAlgoRich2020.cxx.

References size().

◆ DebugMs()

Bool_t CbmMcbm2018UnpackerAlgoRich2020::DebugMs ( const fles::Timeslice & ts,
size_t uMsCompIdx,
size_t uMsIdx )

Definition at line 1677 of file CbmMcbm2018UnpackerAlgoRich2020.cxx.

References Debug, and size().

Referenced by ProcessTs().

◆ DoTotCorr()

void CbmMcbm2018UnpackerAlgoRich2020::DoTotCorr ( Bool_t bDoToTCorr = kTRUE)
inline

Definition at line 96 of file CbmMcbm2018UnpackerAlgoRich2020.h.

References fbDoToTCorr.

Referenced by CbmMcbm2018UnpackerTaskRich2020::DoTotCorr().

◆ ErrorMsg()

void CbmMcbm2018UnpackerAlgoRich2020::ErrorMsg ( uint16_t errbits,
RichErrorType type,
uint16_t tdcAddr = 0 )
private

◆ FinalizeTs()

void CbmMcbm2018UnpackerAlgoRich2020::FinalizeTs ( )
private

Method which is called at the end of the timeslice processing

Definition at line 1451 of file CbmMcbm2018UnpackerAlgoRich2020.cxx.

References fFallingEdgesBuf, and fRisingEdgesBuf.

Referenced by ProcessTs().

◆ findTDCAlignmentError()

void CbmMcbm2018UnpackerAlgoRich2020::findTDCAlignmentError ( uint8_t const *const ptr,
size_t const size )
private

◆ Finish()

void CbmMcbm2018UnpackerAlgoRich2020::Finish ( )
virtual

◆ GetCanvasVector()

std::vector< std::pair< TCanvas *, std::string > > CbmStar2019Algo< CbmRichDigi >::GetCanvasVector ( )
inlineinherited

Definition at line 92 of file CbmStar2019Algo.h.

◆ GetErrorVector()

std::vector< CbmErrorMessage > & CbmStar2019Algo< CbmRichDigi >::GetErrorVector ( )
inlineinherited

Definition at line 98 of file CbmStar2019Algo.h.

◆ GetHistoVector()

std::vector< std::pair< TNamed *, std::string > > CbmStar2019Algo< CbmRichDigi >::GetHistoVector ( )
inlineinherited

Definition at line 87 of file CbmStar2019Algo.h.

◆ GetParameter()

virtual std::string CbmStar2019Algo< CbmRichDigi >::GetParameter ( std::string )
inlinevirtualinherited

Definition at line 80 of file CbmStar2019Algo.h.

◆ GetParList()

TList * CbmMcbm2018UnpackerAlgoRich2020::GetParList ( )
virtual

◆ GetPixelUID()

Int_t CbmMcbm2018UnpackerAlgoRich2020::GetPixelUID ( Int_t fpgaID,
Int_t ch ) const
inlineprivate

Definition at line 163 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by WriteOutputDigi().

◆ GetTotH1()

TH1D * CbmMcbm2018UnpackerAlgoRich2020::GetTotH1 ( Int_t fpgaID,
Int_t channel )

◆ GetTotH2()

TH2D * CbmMcbm2018UnpackerAlgoRich2020::GetTotH2 ( Int_t fpgaID)

◆ GetVector()

std::vector< CbmRichDigi > & CbmStar2019Algo< CbmRichDigi >::GetVector ( )
inlineinherited

Definition at line 96 of file CbmStar2019Algo.h.

◆ Init()

Bool_t CbmMcbm2018UnpackerAlgoRich2020::Init ( )
virtual

◆ InitContainers()

Bool_t CbmMcbm2018UnpackerAlgoRich2020::InitContainers ( )
virtual

◆ InitParameters()

Bool_t CbmMcbm2018UnpackerAlgoRich2020::InitParameters ( )

Definition at line 164 of file CbmMcbm2018UnpackerAlgoRich2020.cxx.

References InitStorage().

Referenced by ReInitContainers().

◆ InitStorage()

void CbmMcbm2018UnpackerAlgoRich2020::InitStorage ( )
private

Initialize space required for monitoring. This depends on the parameters read from the par file. This method should be called once after parameters import.

Definition at line 170 of file CbmMcbm2018UnpackerAlgoRich2020.cxx.

References fLastCh0_re_time, fPrevLastCh0_re_time, fUnpackPar, and CbmMcbm2018RichPar::GetNaddresses().

Referenced by InitParameters().

◆ ProcessCTSsubevent()

Int_t CbmMcbm2018UnpackerAlgoRich2020::ProcessCTSsubevent ( size_t const size,
uint8_t const *const ptr )
private

◆ ProcessFallingEdge()

void CbmMcbm2018UnpackerAlgoRich2020::ProcessFallingEdge ( Int_t subSubEvId,
Int_t channel,
Double_t time )
private

◆ ProcessMicroslice()

void CbmMcbm2018UnpackerAlgoRich2020::ProcessMicroslice ( size_t const size,
uint8_t const *const ptr )
private

◆ ProcessMs()

Bool_t CbmMcbm2018UnpackerAlgoRich2020::ProcessMs ( const fles::Timeslice & ts,
size_t uMsCompIdx,
size_t uMsIdx )
virtual

◆ ProcessRisingEdge()

void CbmMcbm2018UnpackerAlgoRich2020::ProcessRisingEdge ( Int_t subSubEvId,
Int_t channel,
Double_t time )
private

Definition at line 1348 of file CbmMcbm2018UnpackerAlgoRich2020.cxx.

References fRisingEdgesBuf.

Referenced by ProcessTimestampWord().

◆ ProcessSKIPsubevent()

Int_t CbmMcbm2018UnpackerAlgoRich2020::ProcessSKIPsubevent ( size_t const size,
uint8_t const *const ptr )
private

Including header - ? Return number of processed bytes

Definition at line 690 of file CbmMcbm2018UnpackerAlgoRich2020.cxx.

References ErrorMsg(), fGwordCnt, mRichSupport::GetWordHexRepr(), size(), subEventError, and mRichSupport::SwapBytes().

Referenced by ProcessTRBevent().

◆ ProcessTDCword()

Int_t CbmMcbm2018UnpackerAlgoRich2020::ProcessTDCword ( uint8_t const *const ptr,
Int_t const word,
size_t const size )
private

Process a word written out by the TDC - TIMESTEMP, HEADER, TRAILER, DEBUG, EPOCH, ...

Definition at line 1038 of file CbmMcbm2018UnpackerAlgoRich2020.cxx.

References EPOCH, ErrorMsg(), fCurEpochCounter, fDebugPrint, fGwordCnt, fInSubSubEvent, fSkipCnt, fSkipMs, fSubSubEvId, fTrbState, mRichSupport::GetWordHexRepr(), HEADER, IDLE, ProcessTimestampWord(), size(), TDC, tdcHeader, tdcTrailer, and TRAILER.

Referenced by ProcessTRBsubsubevent().

◆ ProcessTimestampWord()

void CbmMcbm2018UnpackerAlgoRich2020::ProcessTimestampWord ( Int_t tdcData)
private

◆ ProcessTRBevent()

Int_t CbmMcbm2018UnpackerAlgoRich2020::ProcessTRBevent ( size_t const size,
uint8_t const *const ptr )
private

◆ ProcessTRBeventHeader()

Int_t CbmMcbm2018UnpackerAlgoRich2020::ProcessTRBeventHeader ( size_t const size,
uint8_t const *const ptr )
private

Probably corrupted MS, stop there and skip remaining data

Probably corrupted MS, stop there and skip remaining data

Definition at line 597 of file CbmMcbm2018UnpackerAlgoRich2020.cxx.

References fGwordCnt, fSkipMs, mRichSupport::GetHexRepresentation(), mRichSupport::GetWordHexRepr(), size(), and mRichSupport::SwapBytes().

Referenced by ProcessTRBevent().

◆ ProcessTRBsubevent()

Int_t CbmMcbm2018UnpackerAlgoRich2020::ProcessTRBsubevent ( size_t const size,
uint8_t const *const ptr )
private

◆ ProcessTRBsubsubevent()

Int_t CbmMcbm2018UnpackerAlgoRich2020::ProcessTRBsubsubevent ( size_t const size,
uint8_t const *const ptr,
Int_t const hubOffset,
size_t const hubSize )
private

Including TDC header, but not including TRB subsubevent header Return number of processed bytes

Probably corrupted MS, stop there and skip remaining data

Definition at line 960 of file CbmMcbm2018UnpackerAlgoRich2020.cxx.

References fCurEpochCounter, fInSubSubEvent, fSkipMs, fTDCAlignmentErrorPositions, fTdcWordCorrectionCnt, fTrbState, IDLE, ProcessTDCword(), size(), and mRichSupport::SwapBytes().

Referenced by ProcessCTSsubevent(), and ProcessTRBsubevent().

◆ ProcessTs() [1/2]

Bool_t CbmMcbm2018UnpackerAlgoRich2020::ProcessTs ( const fles::Timeslice & ts)
virtual

◆ ProcessTs() [2/2]

Bool_t CbmMcbm2018UnpackerAlgoRich2020::ProcessTs ( const fles::Timeslice & ts,
size_t component )
virtual

◆ ReInitContainers()

Bool_t CbmMcbm2018UnpackerAlgoRich2020::ReInitContainers ( )
virtual

◆ Reset()

void CbmMcbm2018UnpackerAlgoRich2020::Reset ( )
virtual

◆ ResetHistograms()

Bool_t CbmMcbm2018UnpackerAlgoRich2020::ResetHistograms ( )

◆ SetIgnoreOverlapMs()

void CbmStar2019Algo< CbmRichDigi >::SetIgnoreOverlapMs ( Bool_t bFlagIn = kTRUE)
inlineinherited

Control flags.

Definition at line 101 of file CbmStar2019Algo.h.

◆ SetMonitorMode()

void CbmMcbm2018UnpackerAlgoRich2020::SetMonitorMode ( Bool_t bFlagIn = kTRUE)
inline

◆ SetParameter()

virtual void CbmStar2019Algo< CbmRichDigi >::SetParameter ( std::string )
inlinevirtualinherited

Definition at line 79 of file CbmStar2019Algo.h.

◆ SetRawDataMode()

void CbmMcbm2018UnpackerAlgoRich2020::SetRawDataMode ( Bool_t bDebug = kFALSE)
inline

Definition at line 98 of file CbmMcbm2018UnpackerAlgoRich2020.h.

References fRawDataMode.

◆ SetTimeOffsetNs()

void CbmMcbm2018UnpackerAlgoRich2020::SetTimeOffsetNs ( Double_t dOffsetIn = 0.0)
inline

◆ SetVectCapInc()

void CbmMcbm2018UnpackerAlgoRich2020::SetVectCapInc ( Double_t dIncFact)
inline

Definition at line 380 of file CbmMcbm2018UnpackerAlgoRich2020.h.

References fdCapacityIncFactor.

◆ WriteOutputDigi()

void CbmMcbm2018UnpackerAlgoRich2020::WriteOutputDigi ( Int_t fpgaID,
Int_t channel,
Double_t time,
Double_t tot,
uint64_t MSidx )
private

Write a gidi object into the output collection

Definition at line 1420 of file CbmMcbm2018UnpackerAlgoRich2020.cxx.

References fbDoToTCorr, CbmStar2019Algo< CbmRichDigi >::fDigiVect, fdTimeOffsetNs, fUnpackPar, GetPixelUID(), and CbmMcbm2018RichPar::GetToTshift().

Referenced by ProcessFallingEdge().

Member Data Documentation

◆ fbDebugMonitorMode

Bool_t CbmMcbm2018UnpackerAlgoRich2020::fbDebugMonitorMode
private

Switch ON the filling of a minimal set of histograms.

Definition at line 176 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by CreateHistograms(), ProcessMs(), ProcessTRBevent(), ProcessTRBsubevent(), and ProcessTs().

◆ fbDoToTCorr

Bool_t CbmMcbm2018UnpackerAlgoRich2020::fbDoToTCorr
private

User setting: kTRUE activates ToT correction from Parameterfile.

Definition at line 187 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by DoTotCorr(), and WriteOutputDigi().

◆ fbIgnoreOverlapMs

Bool_t CbmStar2019Algo< CbmRichDigi >::fbIgnoreOverlapMs
protectedinherited

Definition at line 112 of file CbmStar2019Algo.h.

Referenced by ProcessTs(), and CbmMcbm2018UnpackerAlgoRich::ProcessTs().

◆ fbMonitorMode

Bool_t CbmMcbm2018UnpackerAlgoRich2020::fbMonitorMode
private

◆ fChnlMsgCnt

std::array<unsigned int, 33> CbmMcbm2018UnpackerAlgoRich2020::fChnlMsgCnt

◆ fcTot2d

std::vector<TCanvas*> CbmMcbm2018UnpackerAlgoRich2020::fcTot2d

Definition at line 349 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by CreateHistograms().

◆ fCurEpochCounter

UInt_t CbmMcbm2018UnpackerAlgoRich2020::fCurEpochCounter
private

Current epoch value

Definition at line 236 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by ProcessTDCword(), ProcessTimestampWord(), and ProcessTRBsubsubevent().

◆ fCurMSid

Int_t CbmMcbm2018UnpackerAlgoRich2020::fCurMSid
private

Current microslice ID

Definition at line 215 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by ProcessTs().

◆ fCurMSidx

uint64_t CbmMcbm2018UnpackerAlgoRich2020::fCurMSidx
private

Current microslice index from the microslice descriptor CBM reference time //TODO clearify

Definition at line 221 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by ProcessFallingEdge(), and ProcessTs().

◆ fDataSize

size_t CbmMcbm2018UnpackerAlgoRich2020::fDataSize = 0
private

Definition at line 193 of file CbmMcbm2018UnpackerAlgoRich2020.h.

◆ fdCapacityIncFactor

Double_t CbmMcbm2018UnpackerAlgoRich2020::fdCapacityIncFactor = 1.1

Definition at line 378 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by ProcessTs(), and SetVectCapInc().

◆ fDebugPrint

bool CbmMcbm2018UnpackerAlgoRich2020::fDebugPrint = 0

Definition at line 370 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by ProcessTDCword().

◆ fDigiVect

std::vector<CbmRichDigi> CbmStar2019Algo< CbmRichDigi >::fDigiVect
protectedinherited

Vector of pointers to canvases + optional folder name.

For unpacker algos

Definition at line 134 of file CbmStar2019Algo.h.

Referenced by ProcessMs(), ProcessTs(), CbmMcbm2018UnpackerAlgoRich::ProcessTs(), WriteOutputDigi(), and CbmMcbm2018UnpackerAlgoRich::WriteOutputDigi().

◆ fdMsSizeInNs

Double_t CbmStar2019Algo< CbmRichDigi >::fdMsSizeInNs
protectedinherited

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

Definition at line 113 of file CbmStar2019Algo.h.

Referenced by ProcessTs(), and CbmMcbm2018UnpackerAlgoRich::ProcessTs().

◆ fdTimeOffsetNs

Double_t CbmMcbm2018UnpackerAlgoRich2020::fdTimeOffsetNs
private

User settings: Data correction parameters.

Definition at line 191 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by SetTimeOffsetNs(), and WriteOutputDigi().

◆ fdTsCoreSizeInNs

Double_t CbmStar2019Algo< CbmRichDigi >::fdTsCoreSizeInNs
protectedinherited

Size of a single MS, [nanoseconds].

Definition at line 114 of file CbmStar2019Algo.h.

Referenced by ProcessTs(), and CbmMcbm2018UnpackerAlgoRich::ProcessTs().

◆ fdTsFullSizeInNs

Double_t CbmStar2019Algo< CbmRichDigi >::fdTsFullSizeInNs
protectedinherited

Total size of the core MS in a TS, [nanoseconds].

Definition at line 115 of file CbmStar2019Algo.h.

Referenced by ProcessTs(), and CbmMcbm2018UnpackerAlgoRich::ProcessTs().

◆ fError

Bool_t CbmMcbm2018UnpackerAlgoRich2020::fError
private

Definition at line 180 of file CbmMcbm2018UnpackerAlgoRich2020.h.

◆ fErrorCorr

uint32_t CbmMcbm2018UnpackerAlgoRich2020::fErrorCorr
private

Definition at line 184 of file CbmMcbm2018UnpackerAlgoRich2020.h.

◆ fErrVect

std::vector<CbmErrorMessage> CbmStar2019Algo< CbmRichDigi >::fErrVect
protectedinherited

Definition at line 135 of file CbmStar2019Algo.h.

◆ fFallingEdgesBuf

std::vector<CbmMcbmRichEdge> CbmMcbm2018UnpackerAlgoRich2020::fFallingEdgesBuf
private

Exclude from ROOT dictionnary due to missing empty constructor!!

Buffer of falling edges for which corresponding rising edges were not found

Definition at line 313 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by FinalizeTs(), and ProcessFallingEdge().

◆ fGwordCnt

Int_t CbmMcbm2018UnpackerAlgoRich2020::fGwordCnt
private

◆ fhChnlSize

TH2* CbmMcbm2018UnpackerAlgoRich2020::fhChnlSize = nullptr

Definition at line 366 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by CreateHistograms(), and ProcessTRBsubevent().

◆ fhChnlWords

TH2D* CbmMcbm2018UnpackerAlgoRich2020::fhChnlWords = nullptr

Definition at line 361 of file CbmMcbm2018UnpackerAlgoRich2020.h.

◆ fhDiRICHWords

TH2D* CbmMcbm2018UnpackerAlgoRich2020::fhDiRICHWords = nullptr

Definition at line 360 of file CbmMcbm2018UnpackerAlgoRich2020.h.

◆ fhEventErrors

TH2D* CbmMcbm2018UnpackerAlgoRich2020::fhEventErrors = nullptr

Definition at line 358 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by CreateHistograms(), and ErrorMsg().

◆ fhEventSize

TH1* CbmMcbm2018UnpackerAlgoRich2020::fhEventSize = nullptr

Definition at line 363 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by CreateHistograms(), and ProcessMs().

◆ fhSubEventSize

TH2* CbmMcbm2018UnpackerAlgoRich2020::fhSubEventSize = nullptr

Definition at line 364 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by CreateHistograms(), and ProcessTRBevent().

◆ fhSubSubEventSize

TH2* CbmMcbm2018UnpackerAlgoRich2020::fhSubSubEventSize = nullptr

Definition at line 365 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by CreateHistograms(), and ProcessTRBsubevent().

◆ fhTdcErrors

TH2D* CbmMcbm2018UnpackerAlgoRich2020::fhTdcErrors = nullptr

Definition at line 357 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by CreateHistograms(), and ErrorMsg().

◆ fhTDCre_corrected1

std::vector<TH2D*> CbmMcbm2018UnpackerAlgoRich2020::fhTDCre_corrected1

Definition at line 345 of file CbmMcbm2018UnpackerAlgoRich2020.h.

◆ fhTDCre_corrected2

std::vector<TH2D*> CbmMcbm2018UnpackerAlgoRich2020::fhTDCre_corrected2

Definition at line 347 of file CbmMcbm2018UnpackerAlgoRich2020.h.

◆ fhTot2dMap

std::map<Int_t, TH2D*> CbmMcbm2018UnpackerAlgoRich2020::fhTot2dMap

Definition at line 375 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by GetTotH2().

◆ fhTotMap

std::map<Int_t, std::map<Int_t, TH1D*> > CbmMcbm2018UnpackerAlgoRich2020::fhTotMap

Definition at line 373 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by GetTotH1().

◆ fhVectorCapacity

TH1* CbmMcbm2018UnpackerAlgoRich2020::fhVectorCapacity = nullptr

Definition at line 352 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by CreateHistograms(), and ProcessTs().

◆ fhVectorSize

TH1* CbmMcbm2018UnpackerAlgoRich2020::fhVectorSize = nullptr

Definition at line 351 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by CreateHistograms(), and ProcessTs().

◆ fInSubSubEvent

Bool_t CbmMcbm2018UnpackerAlgoRich2020::fInSubSubEvent
private

Flag indicating that we are in the subsubevent

Definition at line 231 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by ProcessTDCword(), and ProcessTRBsubsubevent().

◆ fLastCh0_re_time

TArrayD CbmMcbm2018UnpackerAlgoRich2020::fLastCh0_re_time
private

Full time of the last rising edge from ch 0 of each TDC

Definition at line 290 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by InitStorage(), and ProcessTimestampWord().

◆ fLastCTSch0_re_time

Double_t CbmMcbm2018UnpackerAlgoRich2020::fLastCTSch0_re_time
private

Full time of the last rising edge from ch 0 of CTS

Definition at line 260 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by ProcessTimestampWord().

◆ fLastCTSch2_fe_time

Double_t CbmMcbm2018UnpackerAlgoRich2020::fLastCTSch2_fe_time
private

Full time of the last falling edge from ch 2 of CTS

Definition at line 270 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by ProcessTimestampWord().

◆ fLastCTSch2_re_time

Double_t CbmMcbm2018UnpackerAlgoRich2020::fLastCTSch2_re_time
private

Full time of the last rising edge from ch 2 of CTS

Definition at line 265 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by ProcessTimestampWord().

◆ fLastFeeOnHub

Bool_t CbmMcbm2018UnpackerAlgoRich2020::fLastFeeOnHub = false
private

Flag to mark the last DiRICH on a Hub

Definition at line 246 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by ProcessTRBevent(), and ProcessTRBsubevent().

◆ fMapFEE

std::map<uint16_t, uint16_t> CbmMcbm2018UnpackerAlgoRich2020::fMapFEE

Definition at line 371 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by CreateHistograms(), and ErrorMsg().

◆ fParameterMap

std::map<std::string, std::string> CbmStar2019Algo< CbmRichDigi >::fParameterMap
protectedinherited

For any algo.

Definition at line 138 of file CbmStar2019Algo.h.

◆ fParCList

◆ fPrevLastCh0_re_time

TArrayD CbmMcbm2018UnpackerAlgoRich2020::fPrevLastCh0_re_time
private

Full time of the previous last rising edge from ch 0 of each TDC (from the previous microslice)

Definition at line 295 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by InitStorage(), and ProcessTimestampWord().

◆ fPrevLastCTSch0_re_time

Double_t CbmMcbm2018UnpackerAlgoRich2020::fPrevLastCTSch0_re_time
private

Full time of the last rising edge from ch 0 of CTS from the previous microslice

Definition at line 275 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by ProcessTimestampWord().

◆ fPrevLastCTSch2_fe_time

Double_t CbmMcbm2018UnpackerAlgoRich2020::fPrevLastCTSch2_fe_time
private

Full time of the last falling edge from ch 2 of CTS from the previous microslice

Definition at line 285 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by ProcessTimestampWord().

◆ fPrevLastCTSch2_re_time

Double_t CbmMcbm2018UnpackerAlgoRich2020::fPrevLastCTSch2_re_time
private

Full time of the last rising edge from ch 2 of CTS from the previous microslice

Definition at line 280 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by ProcessTimestampWord().

◆ fRawDataMode

Bool_t CbmMcbm2018UnpackerAlgoRich2020::fRawDataMode
private

Switch ON the filling of a additional set of histograms.

Definition at line 178 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by ProcessTs(), and SetRawDataMode().

◆ fRICHcompIdx

Int_t CbmMcbm2018UnpackerAlgoRich2020::fRICHcompIdx
private

Bug fix / shortcut, which helps to run correct ProcessTs method. Works only if there is one componentID assigned to the detector.

Definition at line 200 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by AddMsComponentToList().

◆ fRisingEdgesBuf

std::vector<CbmMcbmRichEdge> CbmMcbm2018UnpackerAlgoRich2020::fRisingEdgesBuf
private

Buffer for rising edges. It is filled during unpacking whenever the rising edge is encountered. Afterwards, when a falling edge is encountered, corresponding rising edge is searched here and removed if found.

Definition at line 308 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by FinalizeTs(), ProcessFallingEdge(), and ProcessRisingEdge().

◆ fSkipCnt

Int_t CbmMcbm2018UnpackerAlgoRich2020::fSkipCnt = 0
private

Definition at line 254 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by ProcessTDCword().

◆ fSkipMs

Bool_t CbmMcbm2018UnpackerAlgoRich2020::fSkipMs
private

◆ fSubSubEvId

Int_t CbmMcbm2018UnpackerAlgoRich2020::fSubSubEvId
private

Current subsubevent ID

Definition at line 241 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by ProcessTDCword(), ProcessTimestampWord(), ProcessTRBevent(), and ProcessTRBsubevent().

◆ fTDCAlignmentErrorPositions

std::vector<Int_t> CbmMcbm2018UnpackerAlgoRich2020::fTDCAlignmentErrorPositions
private

◆ fTdcWordCorrectionCnt

Int_t CbmMcbm2018UnpackerAlgoRich2020::fTdcWordCorrectionCnt = 0
private

Definition at line 250 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by ProcessTRBsubevent(), and ProcessTRBsubsubevent().

◆ fTdcWordCorrectionGlobalCnt

Int_t CbmMcbm2018UnpackerAlgoRich2020::fTdcWordCorrectionGlobalCnt = 0
private

Definition at line 252 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by ProcessTRBsubevent().

◆ fTrbState

TrbNetState CbmMcbm2018UnpackerAlgoRich2020::fTrbState
private

flag for an error in the datastream

Definition at line 182 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by ProcessTDCword(), ProcessTimestampWord(), and ProcessTRBsubsubevent().

◆ fTScounter

uint64_t CbmMcbm2018UnpackerAlgoRich2020::fTScounter
private

Counter of processed timeslices

Definition at line 210 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by ProcessTs().

◆ fuNbCoreMsPerTs

size_t CbmStar2019Algo< CbmRichDigi >::fuNbCoreMsPerTs
protectedinherited

Definition at line 109 of file CbmStar2019Algo.h.

Referenced by ProcessTs(), and CbmMcbm2018UnpackerAlgoRich::ProcessTs().

◆ fuNbMsLoop

size_t CbmStar2019Algo< CbmRichDigi >::fuNbMsLoop
protectedinherited

Definition at line 111 of file CbmStar2019Algo.h.

Referenced by ProcessTs(), and CbmMcbm2018UnpackerAlgoRich::ProcessTs().

◆ fuNbOverMsPerTs

size_t CbmStar2019Algo< CbmRichDigi >::fuNbOverMsPerTs
protectedinherited

Definition at line 110 of file CbmStar2019Algo.h.

Referenced by ProcessTs(), and CbmMcbm2018UnpackerAlgoRich::ProcessTs().

◆ fUnpackPar

CbmMcbm2018RichPar* CbmMcbm2018UnpackerAlgoRich2020::fUnpackPar
private

◆ fuTsMaxVectorSize

size_t CbmMcbm2018UnpackerAlgoRich2020::fuTsMaxVectorSize = 0

Definition at line 377 of file CbmMcbm2018UnpackerAlgoRich2020.h.

Referenced by ProcessTs().

◆ fvMsComponentsList

std::vector<size_t> CbmStar2019Algo< CbmRichDigi >::fvMsComponentsList
protectedinherited

Parameters related to FLES containers.

Definition at line 108 of file CbmStar2019Algo.h.

Referenced by AddMsComponentToList(), CbmMcbm2018UnpackerAlgoRich::AddMsComponentToList(), ProcessTs(), and CbmMcbm2018UnpackerAlgoRich::ProcessTs().

◆ fvpAllCanvasPointers

std::vector<std::pair<TCanvas*, std::string> > CbmStar2019Algo< CbmRichDigi >::fvpAllCanvasPointers
protectedinherited

Vector of pointers to histograms + optional folder name.

Definition at line 131 of file CbmStar2019Algo.h.

◆ fvpAllHistoPointers

std::vector<std::pair<TNamed*, std::string> > CbmStar2019Algo< CbmRichDigi >::fvpAllHistoPointers
protectedinherited

Total size of the core MS in a TS, [nanoseconds].

For monitor algos => Pointers should be filled with TH1*, TH2*, TProfile*, ... ==> To check if object N is of type T, use "T ObjectPointer = dynamic_cast<T>( fvpAllHistoPointers[N].first );" and check for nullptr ==> To get back the original class name use "fvpAllHistoPointers[N].first->ClassName()" which returns a const char * (e.g. "TH1I") ===> Usage example with feeding a THttpServer: ===> #include "TH2.h" ===> std::string sClassName = vHistos[ uHisto ].first.ClassName(); ===> if( !strncmp( sClassName, "TH1", 3 ) ) ===> server->Register( vHistos[ uHisto ].second.data(), dynamic_cast< TH1 * >(vHistos[ uHisto ].first) ); ===> else if( !strncmp( sClassName, "TH2", 3 ) ) ===> server->Register( vHistos[ uHisto ].second.data(), dynamic_cast< TH2 * >(vHistos[ uHisto ].first) );

Definition at line 129 of file CbmStar2019Algo.h.


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