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

#include <CbmMcbm2018UnpackerAlgoPsd.h>

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

Public Member Functions

 CbmMcbm2018UnpackerAlgoPsd ()
 
 ~CbmMcbm2018UnpackerAlgoPsd ()
 
 CbmMcbm2018UnpackerAlgoPsd (const CbmMcbm2018UnpackerAlgoPsd &)=delete
 Copy constructor - not implemented.
 
CbmMcbm2018UnpackerAlgoPsdoperator= (const CbmMcbm2018UnpackerAlgoPsd &)=delete
 Copy assignment operator - not implemented.
 
virtual Bool_t Init ()
 
virtual void Reset ()
 
virtual void Finish ()
 
Bool_t InitContainers ()
 
Bool_t ReInitContainers ()
 
TList * GetParList ()
 
Bool_t InitParameters ()
 
Bool_t ProcessTs (const fles::Timeslice &ts)
 
Bool_t ProcessTs (const fles::Timeslice &ts, size_t)
 
Bool_t ProcessMs (const fles::Timeslice &ts, size_t uMsCompIdx, size_t uMsIdx)
 
void AddMsComponentToList (size_t component, UShort_t usDetectorId)
 
Bool_t SetDigiOutputPointer (std::vector< CbmPsdDigi > *const pVector)
 
Bool_t SetDspOutputPointer (std::vector< CbmPsdDsp > *const pVector)
 
std::unique_ptr< CbmPsdDigiMakeDigi (CbmPsdDsp dsp)
 
Bool_t CreateHistograms ()
 
Bool_t FillHistograms ()
 
Bool_t ResetHistograms ()
 
void SetMonitorMode (Bool_t bFlagIn=kTRUE)
 
void SetDspWriteMode (Bool_t bFlagIn=kTRUE)
 
void SetTimeOffsetNs (Double_t dOffsetIn=0.0)
 
std::pair< std::vector< CbmPsdDigi > *, std::vector< CbmPsdDsp > * > unpack (const fles::Timeslice *ts, std::uint16_t icomp)
 
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< CbmPsdDigi > & GetVector ()
 
void ClearErrorVector ()
 
std::vector< CbmErrorMessage > & GetErrorVector ()
 
void SetIgnoreOverlapMs (Bool_t bFlagIn=kTRUE)
 Control flags.
 

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< CbmPsdDigifDigiVect
 Vector of pointers to canvases + optional folder name.
 
std::vector< CbmErrorMessagefErrVect
 
std::map< std::string, std::string > fParameterMap
 For any algo.
 

Private Attributes

Bool_t fbMonitorMode = kFALSE
 Control flags.
 
Bool_t fbDebugMonitorMode = kFALSE
 Switch ON the filling of a minimal set of histograms.
 
Bool_t fbDebugWriteOutput = kFALSE
 Switch ON the filling of a additional set of histograms.
 
std::vector< CbmPsdDigi > * fPsdDigiVector
 If ON the output vector of dsp debug information is written to disk.
 
std::vector< CbmPsdDsp > * fPsdDspVector
 Output Digi vector /* TODO CHECK The exclamation mark signals the transientness *‍/.
 
std::vector< Bool_t > fvbMaskedComponents = {}
 Output Dsp vector /* TODO CHECK The exclamation mark signals the transientness *‍/.
 
CbmMcbm2018PsdParfUnpackPar = nullptr
 Settings from parameter file.
 
UInt_t fuRawDataVersion = 0
 
UInt_t fuNrOfGdpbs = 0
 
std::map< UInt_t, UInt_t > fGdpbIdIndexMap = {}
 Total number of GDPBs in the system.
 
UInt_t fuNrOfFeePerGdpb = 0
 gDPB ID to index map
 
UInt_t fuNrOfChannelsPerFee = 0
 Number of FEBs per GDPB.
 
UInt_t fuNrOfChannelsPerGdpb = 0
 Number of channels in each FEE.
 
UInt_t fuNrOfGbtx = 0
 Number of channels per GDPB.
 
UInt_t fuNrOfModules = 0
 
std::vector< Int_t > fviPsdChUId = {}
 
Double_t fdTimeOffsetNs = 0.0
 User settings: Data correction parameters.
 
ULong64_t fulCurrentTsIdx = 0
 
ULong64_t fulCurrentMsIdx = 0
 Idx of the current TS.
 
size_t fuCurrentMsSysId = 0
 Idx of the current MS in TS (0 to fuTotalMsNb)
 
Double_t fdTsStartTime = -1.0
 SysId of the current MS in TS (0 to fuTotalMsNb)
 
Double_t fdTsStopTimeCore
 Time in ns of current TS from the index of the first MS first component.
 
Double_t fdMsTime = -1.0
 End Time in ns of current TS Core from the index of the first MS first component.
 
UInt_t fuMsIndex = 0
 Start Time in ns of current MS from its index field in header.
 
UInt_t fuCurrentEquipmentId = 0
 Index of current MS within the TS.
 
UInt_t fuCurrDpbId = 0
 Current equipment ID, tells from which DPB the current MS is originating.
 
UInt_t fuCurrDpbIdx = 0
 Temp holder until Current equipment ID is properly filled in MS.
 
Double_t fdStartTime = -1.0
 Index of the DPB from which the MS currently unpacked is coming.
 
Double_t fdStartTimeMsSz = 0.0
 
std::chrono::steady_clock::time_point ftStartTimeUnix
 

Static Private Attributes

static const Int_t kiMaxNbFlibLinks = 32
 Constants.
 
static const UInt_t kuBytesPerMessage = 8
 
static const UInt_t kuDetMask = 0x0001FFFF
 

Detailed Description

Definition at line 38 of file CbmMcbm2018UnpackerAlgoPsd.h.

Constructor & Destructor Documentation

◆ CbmMcbm2018UnpackerAlgoPsd() [1/2]

CbmMcbm2018UnpackerAlgoPsd::CbmMcbm2018UnpackerAlgoPsd ( )

Definition at line 36 of file CbmMcbm2018UnpackerAlgoPsd.cxx.

◆ ~CbmMcbm2018UnpackerAlgoPsd()

CbmMcbm2018UnpackerAlgoPsd::~CbmMcbm2018UnpackerAlgoPsd ( )

Definition at line 41 of file CbmMcbm2018UnpackerAlgoPsd.cxx.

References fPsdDigiVector, and fPsdDspVector.

◆ CbmMcbm2018UnpackerAlgoPsd() [2/2]

CbmMcbm2018UnpackerAlgoPsd::CbmMcbm2018UnpackerAlgoPsd ( const CbmMcbm2018UnpackerAlgoPsd & )
delete

Copy constructor - not implemented.

Member Function Documentation

◆ AddCanvasToVector()

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

Definition at line 88 of file CbmStar2019Algo.h.

Referenced by CbmMcbm2018MonitorAlgoPsd::CreateHistograms().

◆ AddHistoToVector()

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

For monitor algos.

Definition at line 83 of file CbmStar2019Algo.h.

Referenced by CbmMcbm2018MonitorAlgoPsd::CreateHistograms().

◆ AddMsComponentToList()

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

Check for duplicates and ignore if it is the case

Add to list

Definition at line 140 of file CbmMcbm2018UnpackerAlgoPsd.cxx.

References CbmStar2019Algo< CbmPsdDigi >::fvMsComponentsList.

Referenced by CbmMcbm2018UnpackerTaskPsd::AddMsComponentToList(), CbmDeviceMcbmUnpack::DoUnpack(), and unpack().

◆ CheckParameterValidity()

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

Map of parameter name and type.

Definition at line 140 of file CbmStar2019Algo.h.

◆ ClearErrorVector()

void CbmStar2019Algo< CbmPsdDigi >::ClearErrorVector ( )
inlineinherited

Definition at line 97 of file CbmStar2019Algo.h.

◆ ClearVector()

void CbmStar2019Algo< CbmPsdDigi >::ClearVector ( )
inlineinherited

For unpacker algos.

Definition at line 95 of file CbmStar2019Algo.h.

◆ CreateHistograms()

Bool_t CbmMcbm2018UnpackerAlgoPsd::CreateHistograms ( )

Definition at line 570 of file CbmMcbm2018UnpackerAlgoPsd.cxx.

◆ FillHistograms()

Bool_t CbmMcbm2018UnpackerAlgoPsd::FillHistograms ( )

Definition at line 571 of file CbmMcbm2018UnpackerAlgoPsd.cxx.

◆ Finish()

void CbmMcbm2018UnpackerAlgoPsd::Finish ( )
virtual

◆ GetCanvasVector()

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

Definition at line 92 of file CbmStar2019Algo.h.

◆ GetErrorVector()

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

Definition at line 98 of file CbmStar2019Algo.h.

◆ GetHistoVector()

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

Definition at line 87 of file CbmStar2019Algo.h.

◆ GetParameter()

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

Definition at line 80 of file CbmStar2019Algo.h.

◆ GetParList()

TList * CbmMcbm2018UnpackerAlgoPsd::GetParList ( )
virtual

◆ GetVector()

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

Definition at line 96 of file CbmStar2019Algo.h.

◆ Init()

Bool_t CbmMcbm2018UnpackerAlgoPsd::Init ( )
virtual

Implements CbmStar2019Algo< CbmPsdDigi >.

Definition at line 54 of file CbmMcbm2018UnpackerAlgoPsd.cxx.

◆ InitContainers()

Bool_t CbmMcbm2018UnpackerAlgoPsd::InitContainers ( )
virtual

◆ InitParameters()

◆ MakeDigi()

std::unique_ptr< CbmPsdDigi > CbmMcbm2018UnpackerAlgoPsd::MakeDigi ( CbmPsdDsp dsp)

◆ operator=()

CbmMcbm2018UnpackerAlgoPsd & CbmMcbm2018UnpackerAlgoPsd::operator= ( const CbmMcbm2018UnpackerAlgoPsd & )
delete

Copy assignment operator - not implemented.

◆ ProcessMs()

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

Check if this sDPB ID was declared in parameter file and stop there if not

Try to get it from the second message in buffer (first is epoch cycle without gDPB ID) TODO!!!!

Save start time of first valid MS )

Unique channel address

Time of measurement relative to TS [ns]

Time of TimeSlice of measurement. Relative to first TS [ns]

Energy deposition from FPGA [MeV]

ZeroLevel from waveform [adc counts]

FPGA FEE Accumulator

Adc time of measurement

Energy deposition from waveform [MeV]

Amplitude from waveform [mV]

Minimum of waveform [adc samples]

Time of maximum in waveform [adc samples]

Amplitude from fit of waveform [mV]

ZeroLevel from fit of waveform [adc counts]

Energy deposition from fit of waveform [MeV]

Quality of waveform fit [] – good near 0

Time of maximum in fit of waveform [adc samples]

Implements CbmStar2019Algo< CbmPsdDigi >.

Definition at line 212 of file CbmMcbm2018UnpackerAlgoPsd.cxx.

References PsdSignalFitting::PronyFitter::CalculateFitAmplitudes(), PsdSignalFitting::PronyFitter::ChooseBestSignalBegin(), PsdDataV000::PsdGbtReader::EvHdrAb, PsdDataV000::PsdGbtReader::EvHdrAc, fbDebugWriteOutput, fdMsTime, fdStartTime, fdTimeOffsetNs, fdTsStartTime, fGdpbIdIndexMap, FormatMsHeaderPrintout(), fPsdDigiVector, fPsdDspVector, fuCurrDpbId, fuCurrDpbIdx, fuCurrentEquipmentId, fuCurrentMsSysId, fulCurrentMsIdx, fulCurrentTsIdx, fUnpackPar, fuRawDataVersion, fvbMaskedComponents, fviPsdChUId, PsdSignalFitting::PronyFitter::GetFitWfm(), PsdSignalFitting::PronyFitter::GetIntegral(), PsdSignalFitting::PronyFitter::GetMaxAmplitude(), CbmMcbm2018PsdPar::GetMipCalibration(), PsdSignalFitting::PronyFitter::GetRSquare(), PsdSignalFitting::PronyFitter::GetSignalMaxTime(), PsdDataV000::PsdGbtReader::GetTotalGbtWordsRead(), PsdDataV100::PsdGbtReader::GetTotalGbtWordsRead(), PsdSignalFitting::PronyFitter::GetZeroLevel(), PsdDataV000::PsdGbtReader::HitHdr, PsdDataV100::PsdGbtReader::HitHdr, kuBytesPerMessage, MakeDigi(), PsdDataV100::PsdGbtReader::PrintOut(), PsdDataV000::PsdGbtReader::ReadEventFles(), PsdDataV100::PsdGbtReader::ReadMs(), PsdSignalFitting::PronyFitter::SetDebugMode(), PsdSignalFitting::PronyFitter::SetExternalHarmonics(), PsdDataV100::PsdGbtReader::SetPrintOutMode(), PsdSignalFitting::PronyFitter::SetSignalBegin(), PsdSignalFitting::PronyFitter::SetWaveform(), PsdDataV000::PsdEventHeaderAC::uAdcTime, PsdDataV100::PsdHitHeader::uHitChannel, PsdDataV000::PsdEventHeaderAB::uHitsNumber, PsdDataV000::PsdEventHeaderAB::ulMicroSlice, PsdDataV000::PsdHitHeader::uWfmPoints, PsdDataV100::PsdHitHeader::uWfmWords, PsdDataV100::PsdGbtReader::VectHitData, PsdDataV000::PsdGbtReader::VectHitHdr, PsdDataV100::PsdGbtReader::VectHitHdr, and PsdDataV100::PsdGbtReader::VectPackHdr.

Referenced by ProcessTs().

◆ ProcessTs() [1/2]

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

Ignore First TS as first MS is typically corrupt

On first TS, extract the TS parameters from header (by definition stable over time)

Ignore overlap ms if flag set by user

Compute time of TS core end

Loop over core microslices (and overlap ones if chosen)

Loop over registered components

Sort the buffers of hits due to the time offsets applied

Implements CbmStar2019Algo< CbmPsdDigi >.

Definition at line 154 of file CbmMcbm2018UnpackerAlgoPsd.cxx.

References fbDebugWriteOutput, CbmStar2019Algo< CbmPsdDigi >::fbIgnoreOverlapMs, CbmStar2019Algo< CbmPsdDigi >::fDigiVect, CbmStar2019Algo< CbmPsdDigi >::fdMsSizeInNs, CbmStar2019Algo< CbmPsdDigi >::fdTsCoreSizeInNs, CbmStar2019Algo< CbmPsdDigi >::fdTsFullSizeInNs, fdTsStartTime, fdTsStopTimeCore, fPsdDigiVector, fPsdDspVector, fulCurrentTsIdx, fuMsIndex, CbmStar2019Algo< CbmPsdDigi >::fuNbCoreMsPerTs, CbmStar2019Algo< CbmPsdDigi >::fuNbMsLoop, CbmStar2019Algo< CbmPsdDigi >::fuNbOverMsPerTs, CbmStar2019Algo< CbmPsdDigi >::fvMsComponentsList, and ProcessMs().

Referenced by CbmDeviceMcbmUnpack::DoUnpack(), and unpack().

◆ ProcessTs() [2/2]

Bool_t CbmMcbm2018UnpackerAlgoPsd::ProcessTs ( const fles::Timeslice & ts,
size_t  )
inlinevirtual

Implements CbmStar2019Algo< CbmPsdDigi >.

Definition at line 59 of file CbmMcbm2018UnpackerAlgoPsd.h.

References ProcessTs().

Referenced by ProcessTs().

◆ ReInitContainers()

Bool_t CbmMcbm2018UnpackerAlgoPsd::ReInitContainers ( )
virtual

◆ Reset()

void CbmMcbm2018UnpackerAlgoPsd::Reset ( )
virtual

Implements CbmStar2019Algo< CbmPsdDigi >.

Definition at line 60 of file CbmMcbm2018UnpackerAlgoPsd.cxx.

References fPsdDigiVector, and fPsdDspVector.

Referenced by unpack().

◆ ResetHistograms()

Bool_t CbmMcbm2018UnpackerAlgoPsd::ResetHistograms ( )

◆ SetDigiOutputPointer()

Bool_t CbmMcbm2018UnpackerAlgoPsd::SetDigiOutputPointer ( std::vector< CbmPsdDigi > *const pVector)

Definition at line 541 of file CbmMcbm2018UnpackerAlgoPsd.cxx.

References fPsdDigiVector.

Referenced by CbmMcbm2018UnpackerTaskPsd::Init().

◆ SetDspOutputPointer()

Bool_t CbmMcbm2018UnpackerAlgoPsd::SetDspOutputPointer ( std::vector< CbmPsdDsp > *const pVector)

Definition at line 552 of file CbmMcbm2018UnpackerAlgoPsd.cxx.

References fPsdDspVector.

Referenced by CbmMcbm2018UnpackerTaskPsd::Init().

◆ SetDspWriteMode()

void CbmMcbm2018UnpackerAlgoPsd::SetDspWriteMode ( Bool_t bFlagIn = kTRUE)
inline

◆ SetIgnoreOverlapMs()

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

Control flags.

Definition at line 101 of file CbmStar2019Algo.h.

◆ SetMonitorMode()

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

Definition at line 72 of file CbmMcbm2018UnpackerAlgoPsd.h.

References fbMonitorMode.

◆ SetParameter()

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

Definition at line 79 of file CbmStar2019Algo.h.

◆ SetTimeOffsetNs()

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

◆ unpack()

std::pair< std::vector< CbmPsdDigi > *, std::vector< CbmPsdDsp > * > CbmMcbm2018UnpackerAlgoPsd::unpack ( const fles::Timeslice * ts,
std::uint16_t icomp )

Member Data Documentation

◆ fbDebugMonitorMode

Bool_t CbmMcbm2018UnpackerAlgoPsd::fbDebugMonitorMode = kFALSE
private

Switch ON the filling of a minimal set of histograms.

Definition at line 81 of file CbmMcbm2018UnpackerAlgoPsd.h.

◆ fbDebugWriteOutput

Bool_t CbmMcbm2018UnpackerAlgoPsd::fbDebugWriteOutput = kFALSE
private

Switch ON the filling of a additional set of histograms.

Definition at line 82 of file CbmMcbm2018UnpackerAlgoPsd.h.

Referenced by ProcessMs(), ProcessTs(), and SetDspWriteMode().

◆ fbIgnoreOverlapMs

Bool_t CbmStar2019Algo< CbmPsdDigi >::fbIgnoreOverlapMs
protectedinherited

Definition at line 112 of file CbmStar2019Algo.h.

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

◆ fbMonitorMode

Bool_t CbmMcbm2018UnpackerAlgoPsd::fbMonitorMode = kFALSE
private

Control flags.

Definition at line 80 of file CbmMcbm2018UnpackerAlgoPsd.h.

Referenced by SetMonitorMode().

◆ fDigiVect

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

Vector of pointers to canvases + optional folder name.

For unpacker algos

Definition at line 134 of file CbmStar2019Algo.h.

Referenced by ProcessTs().

◆ fdMsSizeInNs

Double_t CbmStar2019Algo< CbmPsdDigi >::fdMsSizeInNs
protectedinherited

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

Definition at line 113 of file CbmStar2019Algo.h.

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

◆ fdMsTime

Double_t CbmMcbm2018UnpackerAlgoPsd::fdMsTime = -1.0
private

End Time in ns of current TS Core from the index of the first MS first component.

Definition at line 123 of file CbmMcbm2018UnpackerAlgoPsd.h.

Referenced by ProcessMs().

◆ fdStartTime

Double_t CbmMcbm2018UnpackerAlgoPsd::fdStartTime = -1.0
private

Index of the DPB from which the MS currently unpacked is coming.

Starting state book-keeping

Definition at line 133 of file CbmMcbm2018UnpackerAlgoPsd.h.

Referenced by ProcessMs().

◆ fdStartTimeMsSz

Double_t CbmMcbm2018UnpackerAlgoPsd::fdStartTimeMsSz = 0.0
private

Time of first valid hit (TS_MSB available), used as reference for evolution plots

Definition at line 134 of file CbmMcbm2018UnpackerAlgoPsd.h.

◆ fdTimeOffsetNs

Double_t CbmMcbm2018UnpackerAlgoPsd::fdTimeOffsetNs = 0.0
private

User settings: Data correction parameters.

Definition at line 108 of file CbmMcbm2018UnpackerAlgoPsd.h.

Referenced by ProcessMs(), and SetTimeOffsetNs().

◆ fdTsCoreSizeInNs

Double_t CbmStar2019Algo< CbmPsdDigi >::fdTsCoreSizeInNs
protectedinherited

Size of a single MS, [nanoseconds].

Definition at line 114 of file CbmStar2019Algo.h.

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

◆ fdTsFullSizeInNs

Double_t CbmStar2019Algo< CbmPsdDigi >::fdTsFullSizeInNs
protectedinherited

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

Definition at line 115 of file CbmStar2019Algo.h.

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

◆ fdTsStartTime

Double_t CbmMcbm2018UnpackerAlgoPsd::fdTsStartTime = -1.0
private

SysId of the current MS in TS (0 to fuTotalMsNb)

Definition at line 120 of file CbmMcbm2018UnpackerAlgoPsd.h.

Referenced by ProcessMs(), and ProcessTs().

◆ fdTsStopTimeCore

Double_t CbmMcbm2018UnpackerAlgoPsd::fdTsStopTimeCore
private
Initial value:
=
-1.0

Time in ns of current TS from the index of the first MS first component.

Definition at line 121 of file CbmMcbm2018UnpackerAlgoPsd.h.

Referenced by ProcessTs().

◆ fErrVect

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

Definition at line 135 of file CbmStar2019Algo.h.

◆ fGdpbIdIndexMap

std::map<UInt_t, UInt_t> CbmMcbm2018UnpackerAlgoPsd::fGdpbIdIndexMap = {}
private

Total number of GDPBs in the system.

Definition at line 97 of file CbmMcbm2018UnpackerAlgoPsd.h.

Referenced by InitParameters(), and ProcessMs().

◆ fParameterMap

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

For any algo.

Definition at line 138 of file CbmStar2019Algo.h.

◆ fParCList

TList* CbmStar2019Algo< CbmPsdDigi >::fParCList
protectedinherited

◆ fPsdDigiVector

std::vector<CbmPsdDigi>* CbmMcbm2018UnpackerAlgoPsd::fPsdDigiVector
private
Initial value:
=
nullptr

If ON the output vector of dsp debug information is written to disk.

Output vectors

Definition at line 85 of file CbmMcbm2018UnpackerAlgoPsd.h.

Referenced by ProcessMs(), ProcessTs(), Reset(), SetDigiOutputPointer(), unpack(), and ~CbmMcbm2018UnpackerAlgoPsd().

◆ fPsdDspVector

std::vector<CbmPsdDsp>* CbmMcbm2018UnpackerAlgoPsd::fPsdDspVector
private
Initial value:
=
nullptr

Output Digi vector /* TODO CHECK The exclamation mark signals the transientness *‍/.

Definition at line 87 of file CbmMcbm2018UnpackerAlgoPsd.h.

Referenced by ProcessMs(), ProcessTs(), Reset(), SetDspOutputPointer(), unpack(), and ~CbmMcbm2018UnpackerAlgoPsd().

◆ ftStartTimeUnix

std::chrono::steady_clock::time_point CbmMcbm2018UnpackerAlgoPsd::ftStartTimeUnix
private
Initial value:
= std::chrono::steady_clock::
now()

Time of first microslice, used as reference for evolution plots

Definition at line 135 of file CbmMcbm2018UnpackerAlgoPsd.h.

◆ fuCurrDpbId

UInt_t CbmMcbm2018UnpackerAlgoPsd::fuCurrDpbId = 0
private

Current equipment ID, tells from which DPB the current MS is originating.

Definition at line 128 of file CbmMcbm2018UnpackerAlgoPsd.h.

Referenced by ProcessMs().

◆ fuCurrDpbIdx

UInt_t CbmMcbm2018UnpackerAlgoPsd::fuCurrDpbIdx = 0
private

Temp holder until Current equipment ID is properly filled in MS.

Definition at line 129 of file CbmMcbm2018UnpackerAlgoPsd.h.

Referenced by ProcessMs().

◆ fuCurrentEquipmentId

UInt_t CbmMcbm2018UnpackerAlgoPsd::fuCurrentEquipmentId = 0
private

Index of current MS within the TS.

Current data properties

Definition at line 127 of file CbmMcbm2018UnpackerAlgoPsd.h.

Referenced by ProcessMs().

◆ fuCurrentMsSysId

size_t CbmMcbm2018UnpackerAlgoPsd::fuCurrentMsSysId = 0
private

Idx of the current MS in TS (0 to fuTotalMsNb)

Definition at line 119 of file CbmMcbm2018UnpackerAlgoPsd.h.

Referenced by ProcessMs().

◆ fulCurrentMsIdx

ULong64_t CbmMcbm2018UnpackerAlgoPsd::fulCurrentMsIdx = 0
private

Idx of the current TS.

Definition at line 118 of file CbmMcbm2018UnpackerAlgoPsd.h.

Referenced by ProcessMs().

◆ fulCurrentTsIdx

ULong64_t CbmMcbm2018UnpackerAlgoPsd::fulCurrentTsIdx = 0
private

Running indices TS/MS info

Definition at line 117 of file CbmMcbm2018UnpackerAlgoPsd.h.

Referenced by ProcessMs(), and ProcessTs().

◆ fuMsIndex

UInt_t CbmMcbm2018UnpackerAlgoPsd::fuMsIndex = 0
private

Start Time in ns of current MS from its index field in header.

Definition at line 124 of file CbmMcbm2018UnpackerAlgoPsd.h.

Referenced by ProcessTs().

◆ fuNbCoreMsPerTs

size_t CbmStar2019Algo< CbmPsdDigi >::fuNbCoreMsPerTs
protectedinherited

Definition at line 109 of file CbmStar2019Algo.h.

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

◆ fuNbMsLoop

size_t CbmStar2019Algo< CbmPsdDigi >::fuNbMsLoop
protectedinherited

Definition at line 111 of file CbmStar2019Algo.h.

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

◆ fuNbOverMsPerTs

size_t CbmStar2019Algo< CbmPsdDigi >::fuNbOverMsPerTs
protectedinherited

Definition at line 110 of file CbmStar2019Algo.h.

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

◆ fUnpackPar

CbmMcbm2018PsdPar* CbmMcbm2018UnpackerAlgoPsd::fUnpackPar = nullptr
private

Settings from parameter file.

Definition at line 93 of file CbmMcbm2018UnpackerAlgoPsd.h.

Referenced by GetParList(), InitParameters(), ProcessMs(), and ReInitContainers().

◆ fuNrOfChannelsPerFee

UInt_t CbmMcbm2018UnpackerAlgoPsd::fuNrOfChannelsPerFee = 0
private

Number of FEBs per GDPB.

Definition at line 99 of file CbmMcbm2018UnpackerAlgoPsd.h.

Referenced by InitParameters().

◆ fuNrOfChannelsPerGdpb

UInt_t CbmMcbm2018UnpackerAlgoPsd::fuNrOfChannelsPerGdpb = 0
private

Number of channels in each FEE.

Definition at line 100 of file CbmMcbm2018UnpackerAlgoPsd.h.

Referenced by InitParameters().

◆ fuNrOfFeePerGdpb

UInt_t CbmMcbm2018UnpackerAlgoPsd::fuNrOfFeePerGdpb = 0
private

gDPB ID to index map

Definition at line 98 of file CbmMcbm2018UnpackerAlgoPsd.h.

Referenced by InitParameters().

◆ fuNrOfGbtx

UInt_t CbmMcbm2018UnpackerAlgoPsd::fuNrOfGbtx = 0
private

Number of channels per GDPB.

Detector Mapping

Definition at line 103 of file CbmMcbm2018UnpackerAlgoPsd.h.

Referenced by InitParameters().

◆ fuNrOfGdpbs

UInt_t CbmMcbm2018UnpackerAlgoPsd::fuNrOfGdpbs = 0
private

Raw data versioning Readout chain dimensions and mapping

Definition at line 96 of file CbmMcbm2018UnpackerAlgoPsd.h.

Referenced by InitParameters().

◆ fuNrOfModules

UInt_t CbmMcbm2018UnpackerAlgoPsd::fuNrOfModules = 0
private

Definition at line 104 of file CbmMcbm2018UnpackerAlgoPsd.h.

◆ fuRawDataVersion

UInt_t CbmMcbm2018UnpackerAlgoPsd::fuRawDataVersion = 0
private

Definition at line 94 of file CbmMcbm2018UnpackerAlgoPsd.h.

Referenced by InitParameters(), and ProcessMs().

◆ fvbMaskedComponents

std::vector<Bool_t> CbmMcbm2018UnpackerAlgoPsd::fvbMaskedComponents = {}
private

Output Dsp vector /* TODO CHECK The exclamation mark signals the transientness *‍/.

Definition at line 90 of file CbmMcbm2018UnpackerAlgoPsd.h.

Referenced by ProcessMs().

◆ fviPsdChUId

std::vector<Int_t> CbmMcbm2018UnpackerAlgoPsd::fviPsdChUId = {}
private

Definition at line 105 of file CbmMcbm2018UnpackerAlgoPsd.h.

Referenced by InitParameters(), and ProcessMs().

◆ fvMsComponentsList

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

Parameters related to FLES containers.

Definition at line 108 of file CbmStar2019Algo.h.

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

◆ fvpAllCanvasPointers

std::vector<std::pair<TCanvas*, std::string> > CbmStar2019Algo< CbmPsdDigi >::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< CbmPsdDigi >::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.

◆ kiMaxNbFlibLinks

const Int_t CbmMcbm2018UnpackerAlgoPsd::kiMaxNbFlibLinks = 32
staticprivate

Constants.

Definition at line 111 of file CbmMcbm2018UnpackerAlgoPsd.h.

◆ kuBytesPerMessage

const UInt_t CbmMcbm2018UnpackerAlgoPsd::kuBytesPerMessage = 8
staticprivate

Definition at line 112 of file CbmMcbm2018UnpackerAlgoPsd.h.

Referenced by ProcessMs().

◆ kuDetMask

const UInt_t CbmMcbm2018UnpackerAlgoPsd::kuDetMask = 0x0001FFFF
staticprivate

Definition at line 113 of file CbmMcbm2018UnpackerAlgoPsd.h.


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