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

#include <CbmMcbmSpillFindAlgo.h>

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

Public Member Functions

 CbmMcbmSpillFindAlgo ()
 
 ~CbmMcbmSpillFindAlgo ()
 
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 CreateHistograms ()
 
Bool_t FillHistograms ()
 
Bool_t ResetHistograms (Bool_t bResetTime=kTRUE)
 
void SetMonitorMode (Bool_t bFlagIn=kTRUE)
 
void SetHistoryHistoSize (UInt_t inHistorySizeSec=1800)
 
void SetPulserTotLimits (UInt_t uMin, UInt_t uMax)
 
void SetSpillThreshold (UInt_t uCntLimit)
 
void SetSpillCheckIntervalSec (Double_t dInterval)
 
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< CbmTofDigi > & 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< CbmTofDigifDigiVect
 Vector of pointers to canvases + optional folder name.
 
std::vector< CbmErrorMessagefErrVect
 
std::map< std::string, std::string > fParameterMap
 For any algo.
 

Private Member Functions

 CbmMcbmSpillFindAlgo (const CbmMcbmSpillFindAlgo &)
 Canvases.
 
CbmMcbmSpillFindAlgo operator= (const CbmMcbmSpillFindAlgo &)
 

Private Attributes

Bool_t fbMonitorMode = kFALSE
 Control flags.
 
Bool_t fbDebugMonitorMode = kFALSE
 Switch ON the filling of a minimal set of histograms.
 
std::vector< Bool_t > fvbMaskedComponents = {}
 Switch ON the filling of a additional set of histograms.
 
CbmMcbm2018TofParfUnpackPar = nullptr
 Settings from parameter file.
 
UInt_t fuNrOfGdpbs = 0
 Readout chain dimensions and mapping.
 
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 fuNrOfGet4PerFee = 0
 Number of FEBs per GDPB.
 
UInt_t fuNrOfChannelsPerGet4 = 0
 Number of GET4s per FEE.
 
UInt_t fuNrOfChannelsPerFee = 0
 Number of channels in each GET4.
 
UInt_t fuNrOfGet4 = 0
 Number of channels in each FEE.
 
UInt_t fuNrOfGet4PerGdpb = 0
 Total number of Get4 chips in the system.
 
UInt_t fuNrOfChannelsPerGdpb = 0
 Number of GET4s per GDPB.
 
UInt_t fuMinTotPulser = 90
 Number of channels per GDPB.
 
UInt_t fuMaxTotPulser = 100
 
UInt_t fuOffSpillCountLimit = 100
 
Double_t fdSpillCheckInterval = 0.5
 
ULong64_t fulFirstTsIdx = 9999999999999
 
ULong64_t fulCurrentTsIdx = 0
 First TS index, forward point set ~30 years...
 
ULong64_t fulCurrentMsIdx = 0
 
Double_t fdTsStartTime = -1.0
 
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.
 
std::map< gdpbv100::MessageTypes, UInt_t > fmMsgCounter = {}
 
UInt_t fuCurrentEquipmentId = 0
 
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.
 
Int_t fiRunStartDateTimeSec = -1
 Index of the DPB from which the MS currently unpacked is coming.
 
Int_t fiBinSizeDatePlots = -1
 Start of run time since "epoch" in s, for the plots with date as X axis.
 
UInt_t fuGet4Id
 Bin size in s for the plots with date as X axis.
 
UInt_t fuGet4Nr = 0
 running number (0 to fuNrOfGet4PerGdpb) of the Get4 chip of a unique GDPB for current message
 
Double_t fdStartTime = -1.0
 running number (0 to fuNrOfGet4) of the Get4 chip in the system for current message
 
Double_t fdStartTimeMsSz = 0.0
 Time of first valid hit (epoch available), used as reference for evolution plots.
 
std::chrono::steady_clock::time_point ftStartTimeUnix
 Time of first microslice, used as reference for evolution plots.
 
Bool_t fbSpillOn = kTRUE
 Time of run Start from UNIX system, used as reference for long evolution plots against reception time.
 
UInt_t fuCurrentSpillIdx = 0
 
Double_t fdStartTimeSpill = -1.0
 
Double_t fdLastSecondTime = -1.0
 
UInt_t fuCountsLastInterval = 0
 
UInt_t fuCountsLastSpill = 0
 
std::vector< ULong64_t > fvuSpillBreakBegTs = {}
 
std::vector< ULong64_t > fvuSpillBreakEndTs = {}
 
std::vector< ULong64_t > fvuSpillBreakMidTs = {}
 
UInt_t fuHistoryHistoSize = 3600
 Histograms related variables.
 
TH1 * fhHitsEvo = nullptr
 Histograms.
 
TH1 * fhHitsPerSpill = nullptr
 
TH1 * fhSpillBreakDuration = nullptr
 
TH1 * fhSpillDuration = nullptr
 

Static Private Attributes

static const Int_t kiMaxNbFlibLinks = 32
 Constants.
 
static const UInt_t kuBytesPerMessage = 8
 
static const UInt_t kuNbChanDiamond = 8
 

Detailed Description

Definition at line 40 of file CbmMcbmSpillFindAlgo.h.

Constructor & Destructor Documentation

◆ CbmMcbmSpillFindAlgo() [1/2]

CbmMcbmSpillFindAlgo::CbmMcbmSpillFindAlgo ( )

Definition at line 42 of file CbmMcbmSpillFindAlgo.cxx.

◆ ~CbmMcbmSpillFindAlgo()

CbmMcbmSpillFindAlgo::~CbmMcbmSpillFindAlgo ( )

Definition at line 43 of file CbmMcbmSpillFindAlgo.cxx.

◆ CbmMcbmSpillFindAlgo() [2/2]

CbmMcbmSpillFindAlgo::CbmMcbmSpillFindAlgo ( const CbmMcbmSpillFindAlgo & )
private

Canvases.

Member Function Documentation

◆ AddCanvasToVector()

◆ AddHistoToVector()

◆ AddMsComponentToList()

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

Check for duplicates and ignore if it is the case

Add to list

Definition at line 172 of file CbmMcbmSpillFindAlgo.cxx.

References CbmStar2019Algo< CbmTofDigi >::fvMsComponentsList.

Referenced by CbmMcbmSpillFindTask::AddMsComponentToList().

◆ CheckParameterValidity()

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

Map of parameter name and type.

Definition at line 140 of file CbmStar2019Algo.h.

◆ ClearErrorVector()

void CbmStar2019Algo< CbmTofDigi >::ClearErrorVector ( )
inlineinherited

Definition at line 97 of file CbmStar2019Algo.h.

◆ ClearVector()

void CbmStar2019Algo< CbmTofDigi >::ClearVector ( )
inlineinherited

For unpacker algos.

Definition at line 95 of file CbmStar2019Algo.h.

◆ CreateHistograms()

Bool_t CbmMcbmSpillFindAlgo::CreateHistograms ( )

Logarithmic bining

Parameters are NbDecadesLog, NbStepsDecade, NbSubStepsInStep

Add pointers to the vector with all histo for access by steering class

Cleanup array of log bins

Canvases

Definition at line 424 of file CbmMcbmSpillFindAlgo.cxx.

References CbmStar2019Algo< CbmTofDigi >::AddHistoToVector(), fhHitsEvo, fhHitsPerSpill, fhSpillBreakDuration, fhSpillDuration, fuHistoryHistoSize, and GenerateLogBinArray().

Referenced by CbmMcbmSpillFindTask::InitContainers().

◆ FillHistograms()

Bool_t CbmMcbmSpillFindAlgo::FillHistograms ( )

Definition at line 486 of file CbmMcbmSpillFindAlgo.cxx.

Referenced by ProcessMs(), and ProcessTs().

◆ Finish()

void CbmMcbmSpillFindAlgo::Finish ( )
virtual

If Spill is On, add a fake spill break to have the last spill If Spill is Off, add a fake spill break end so that all modes include last spill

Fill the vector of spill break middle points

Implements CbmStar2019Algo< CbmTofDigi >.

Definition at line 53 of file CbmMcbmSpillFindAlgo.cxx.

References fbSpillOn, fulCurrentTsIdx, fulFirstTsIdx, fvuSpillBreakBegTs, fvuSpillBreakEndTs, and fvuSpillBreakMidTs.

Referenced by CbmMcbmSpillFindTask::Finish().

◆ GetCanvasVector()

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

Definition at line 92 of file CbmStar2019Algo.h.

◆ GetErrorVector()

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

Definition at line 98 of file CbmStar2019Algo.h.

◆ GetHistoVector()

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

Definition at line 87 of file CbmStar2019Algo.h.

◆ GetParameter()

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

Definition at line 80 of file CbmStar2019Algo.h.

◆ GetParList()

TList * CbmMcbmSpillFindAlgo::GetParList ( )
virtual

◆ GetVector()

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

Definition at line 96 of file CbmStar2019Algo.h.

◆ Init()

Bool_t CbmMcbmSpillFindAlgo::Init ( )
virtual

Implements CbmStar2019Algo< CbmTofDigi >.

Definition at line 46 of file CbmMcbmSpillFindAlgo.cxx.

◆ InitContainers()

Bool_t CbmMcbmSpillFindAlgo::InitContainers ( )
virtual

◆ InitParameters()

◆ operator=()

CbmMcbmSpillFindAlgo CbmMcbmSpillFindAlgo::operator= ( const CbmMcbmSpillFindAlgo & )
private

◆ ProcessMs()

Bool_t CbmMcbmSpillFindAlgo::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!!!!

Spill Detection

Check only every user defined interval (0.5s per default)

Spill Off detection

Save start time of first valid MS )

Reset the histograms if reached the end of the evolution histos range

Catch the Epoch cycle block which is always the first 64b of the MS

Get message type

Spill detection

Do not fill the pulser hits to keep counts low for channel 0 => Check channel != first GET4 per board + TOT

Fill histograms

Implements CbmStar2019Algo< CbmTofDigi >.

Definition at line 239 of file CbmMcbmSpillFindAlgo.cxx.

References fbSpillOn, fdLastSecondTime, fdMsTime, fdSpillCheckInterval, fdStartTime, fdStartTimeSpill, fdTsStartTime, fGdpbIdIndexMap, fhHitsEvo, fhHitsPerSpill, fhSpillBreakDuration, fhSpillDuration, FillHistograms(), FormatMsHeaderPrintout(), fuCountsLastInterval, fuCountsLastSpill, fuCurrDpbId, fuCurrDpbIdx, fuCurrentEquipmentId, fuCurrentSpillIdx, fuGet4Id, fuGet4Nr, fuHistoryHistoSize, fulCurrentMsIdx, fulCurrentTsIdx, fuMaxTotPulser, fuMinTotPulser, fuNrOfGet4PerGdpb, fuOffSpillCountLimit, fvbMaskedComponents, fvuSpillBreakBegTs, fvuSpillBreakEndTs, gdpbv100::Message::getGdpbGenChipId(), gdpbv100::Message::getGdpbHit32Tot(), gdpbv100::Message::getGdpbHitIs24b(), gdpbv100::Message::getMessageType(), gdpbv100::Message::isStarTrigger(), kuBytesPerMessage, gdpbv100::kuChipIdMergedEpoch, gdpbv100::MSG_EPOCH, gdpbv100::MSG_HIT, gdpbv100::MSG_SLOWC, gdpbv100::MSG_STAR_TRI_A, gdpbv100::MSG_STAR_TRI_B, gdpbv100::MSG_STAR_TRI_C, gdpbv100::MSG_STAR_TRI_D, gdpbv100::MSG_SYST, and ResetHistograms().

Referenced by ProcessTs().

◆ ProcessTs() [1/2]

Bool_t CbmMcbmSpillFindAlgo::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

Fill plots if in monitor mode

Implements CbmStar2019Algo< CbmTofDigi >.

Definition at line 186 of file CbmMcbmSpillFindAlgo.cxx.

References CbmStar2019Algo< CbmTofDigi >::fbIgnoreOverlapMs, fbMonitorMode, CbmStar2019Algo< CbmTofDigi >::fdMsSizeInNs, CbmStar2019Algo< CbmTofDigi >::fdTsCoreSizeInNs, CbmStar2019Algo< CbmTofDigi >::fdTsFullSizeInNs, fdTsStartTime, fdTsStopTimeCore, FillHistograms(), fulCurrentTsIdx, fulFirstTsIdx, fuMsIndex, CbmStar2019Algo< CbmTofDigi >::fuNbCoreMsPerTs, CbmStar2019Algo< CbmTofDigi >::fuNbMsLoop, CbmStar2019Algo< CbmTofDigi >::fuNbOverMsPerTs, CbmStar2019Algo< CbmTofDigi >::fvMsComponentsList, and ProcessMs().

Referenced by CbmMcbmSpillFindTask::DoUnpack().

◆ ProcessTs() [2/2]

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

Implements CbmStar2019Algo< CbmTofDigi >.

Definition at line 56 of file CbmMcbmSpillFindAlgo.h.

References ProcessTs().

Referenced by ProcessTs().

◆ ReInitContainers()

Bool_t CbmMcbmSpillFindAlgo::ReInitContainers ( )
virtual

◆ Reset()

void CbmMcbmSpillFindAlgo::Reset ( )
virtual

Implements CbmStar2019Algo< CbmTofDigi >.

Definition at line 52 of file CbmMcbmSpillFindAlgo.cxx.

◆ ResetHistograms()

Bool_t CbmMcbmSpillFindAlgo::ResetHistograms ( Bool_t bResetTime = kTRUE)

Also reset the Start time for the evolution plots!

Definition at line 487 of file CbmMcbmSpillFindAlgo.cxx.

References fdStartTime, fhHitsEvo, fhHitsPerSpill, fhSpillBreakDuration, fhSpillDuration, and fuCurrentSpillIdx.

Referenced by CbmMcbmSpillFindTask::DoUnpack(), and ProcessMs().

◆ SetHistoryHistoSize()

void CbmMcbmSpillFindAlgo::SetHistoryHistoSize ( UInt_t inHistorySizeSec = 1800)
inline

Definition at line 66 of file CbmMcbmSpillFindAlgo.h.

References fuHistoryHistoSize.

Referenced by CbmMcbmSpillFindTask::InitContainers().

◆ SetIgnoreOverlapMs()

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

Control flags.

Definition at line 101 of file CbmStar2019Algo.h.

◆ SetMonitorMode()

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

Definition at line 65 of file CbmMcbmSpillFindAlgo.h.

References fbMonitorMode.

Referenced by CbmMcbmSpillFindTask::InitContainers().

◆ SetParameter()

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

Definition at line 79 of file CbmStar2019Algo.h.

◆ SetPulserTotLimits()

void CbmMcbmSpillFindAlgo::SetPulserTotLimits ( UInt_t uMin,
UInt_t uMax )
inline

Definition at line 67 of file CbmMcbmSpillFindAlgo.h.

References fuMaxTotPulser, and fuMinTotPulser.

Referenced by CbmMcbmSpillFindTask::InitContainers().

◆ SetSpillCheckIntervalSec()

void CbmMcbmSpillFindAlgo::SetSpillCheckIntervalSec ( Double_t dInterval)
inline

Definition at line 73 of file CbmMcbmSpillFindAlgo.h.

References fdSpillCheckInterval.

Referenced by CbmMcbmSpillFindTask::InitContainers().

◆ SetSpillThreshold()

void CbmMcbmSpillFindAlgo::SetSpillThreshold ( UInt_t uCntLimit)
inline

Definition at line 72 of file CbmMcbmSpillFindAlgo.h.

References fuOffSpillCountLimit.

Referenced by CbmMcbmSpillFindTask::InitContainers().

Member Data Documentation

◆ fbDebugMonitorMode

Bool_t CbmMcbmSpillFindAlgo::fbDebugMonitorMode = kFALSE
private

Switch ON the filling of a minimal set of histograms.

Definition at line 78 of file CbmMcbmSpillFindAlgo.h.

◆ fbIgnoreOverlapMs

◆ fbMonitorMode

Bool_t CbmMcbmSpillFindAlgo::fbMonitorMode = kFALSE
private

Control flags.

Definition at line 77 of file CbmMcbmSpillFindAlgo.h.

Referenced by ProcessTs(), and SetMonitorMode().

◆ fbSpillOn

Bool_t CbmMcbmSpillFindAlgo::fbSpillOn = kTRUE
private

Time of run Start from UNIX system, used as reference for long evolution plots against reception time.

Spill detection

Definition at line 133 of file CbmMcbmSpillFindAlgo.h.

Referenced by Finish(), and ProcessMs().

◆ fDigiVect

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

Vector of pointers to canvases + optional folder name.

For unpacker algos

Definition at line 134 of file CbmStar2019Algo.h.

Referenced by CbmMcbm2018UnpackerAlgoTof::ProcessHit(), and CbmMcbm2018UnpackerAlgoTof::ProcessTs().

◆ fdLastSecondTime

Double_t CbmMcbmSpillFindAlgo::fdLastSecondTime = -1.0
private

Definition at line 136 of file CbmMcbmSpillFindAlgo.h.

Referenced by ProcessMs().

◆ fdMsSizeInNs

◆ fdMsTime

Double_t CbmMcbmSpillFindAlgo::fdMsTime = -1.0
private

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

Definition at line 113 of file CbmMcbmSpillFindAlgo.h.

Referenced by ProcessMs().

◆ fdSpillCheckInterval

Double_t CbmMcbmSpillFindAlgo::fdSpillCheckInterval = 0.5
private

Definition at line 98 of file CbmMcbmSpillFindAlgo.h.

Referenced by ProcessMs(), and SetSpillCheckIntervalSec().

◆ fdStartTime

Double_t CbmMcbmSpillFindAlgo::fdStartTime = -1.0
private

running number (0 to fuNrOfGet4) of the Get4 chip in the system for current message

Starting state book-keeping

Definition at line 127 of file CbmMcbmSpillFindAlgo.h.

Referenced by ProcessMs(), and ResetHistograms().

◆ fdStartTimeMsSz

Double_t CbmMcbmSpillFindAlgo::fdStartTimeMsSz = 0.0
private

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

Definition at line 128 of file CbmMcbmSpillFindAlgo.h.

◆ fdStartTimeSpill

Double_t CbmMcbmSpillFindAlgo::fdStartTimeSpill = -1.0
private

Definition at line 135 of file CbmMcbmSpillFindAlgo.h.

Referenced by ProcessMs().

◆ fdTsCoreSizeInNs

◆ fdTsFullSizeInNs

◆ fdTsStartTime

Double_t CbmMcbmSpillFindAlgo::fdTsStartTime = -1.0
private

Definition at line 110 of file CbmMcbmSpillFindAlgo.h.

Referenced by ProcessMs(), and ProcessTs().

◆ fdTsStopTimeCore

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

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

Definition at line 111 of file CbmMcbmSpillFindAlgo.h.

Referenced by ProcessTs().

◆ fErrVect

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

Definition at line 135 of file CbmStar2019Algo.h.

◆ fGdpbIdIndexMap

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

Total number of GDPBs in the system.

Definition at line 85 of file CbmMcbmSpillFindAlgo.h.

Referenced by InitParameters(), and ProcessMs().

◆ fhHitsEvo

TH1* CbmMcbmSpillFindAlgo::fhHitsEvo = nullptr
private

Histograms.

Size in seconds of the evolution histograms

Definition at line 147 of file CbmMcbmSpillFindAlgo.h.

Referenced by CreateHistograms(), ProcessMs(), and ResetHistograms().

◆ fhHitsPerSpill

TH1* CbmMcbmSpillFindAlgo::fhHitsPerSpill = nullptr
private

Definition at line 148 of file CbmMcbmSpillFindAlgo.h.

Referenced by CreateHistograms(), ProcessMs(), and ResetHistograms().

◆ fhSpillBreakDuration

TH1* CbmMcbmSpillFindAlgo::fhSpillBreakDuration = nullptr
private

Definition at line 149 of file CbmMcbmSpillFindAlgo.h.

Referenced by CreateHistograms(), ProcessMs(), and ResetHistograms().

◆ fhSpillDuration

TH1* CbmMcbmSpillFindAlgo::fhSpillDuration = nullptr
private

Definition at line 150 of file CbmMcbmSpillFindAlgo.h.

Referenced by CreateHistograms(), ProcessMs(), and ResetHistograms().

◆ fiBinSizeDatePlots

Int_t CbmMcbmSpillFindAlgo::fiBinSizeDatePlots = -1
private

Start of run time since "epoch" in s, for the plots with date as X axis.

Definition at line 121 of file CbmMcbmSpillFindAlgo.h.

◆ fiRunStartDateTimeSec

Int_t CbmMcbmSpillFindAlgo::fiRunStartDateTimeSec = -1
private

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

Definition at line 120 of file CbmMcbmSpillFindAlgo.h.

◆ fmMsgCounter

std::map<gdpbv100::MessageTypes, UInt_t> CbmMcbmSpillFindAlgo::fmMsgCounter = {}
private

Index of current MS within the TS Current data properties

Definition at line 116 of file CbmMcbmSpillFindAlgo.h.

◆ fParameterMap

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

For any algo.

Definition at line 138 of file CbmStar2019Algo.h.

◆ fParCList

◆ ftStartTimeUnix

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

Time of first microslice, used as reference for evolution plots.

Definition at line 129 of file CbmMcbmSpillFindAlgo.h.

◆ fuCountsLastInterval

UInt_t CbmMcbmSpillFindAlgo::fuCountsLastInterval = 0
private

Definition at line 137 of file CbmMcbmSpillFindAlgo.h.

Referenced by ProcessMs().

◆ fuCountsLastSpill

UInt_t CbmMcbmSpillFindAlgo::fuCountsLastSpill = 0
private

Definition at line 138 of file CbmMcbmSpillFindAlgo.h.

Referenced by ProcessMs().

◆ fuCurrDpbId

UInt_t CbmMcbmSpillFindAlgo::fuCurrDpbId = 0
private

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

Definition at line 118 of file CbmMcbmSpillFindAlgo.h.

Referenced by ProcessMs().

◆ fuCurrDpbIdx

UInt_t CbmMcbmSpillFindAlgo::fuCurrDpbIdx = 0
private

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

Definition at line 119 of file CbmMcbmSpillFindAlgo.h.

Referenced by ProcessMs().

◆ fuCurrentEquipmentId

UInt_t CbmMcbmSpillFindAlgo::fuCurrentEquipmentId = 0
private

Definition at line 117 of file CbmMcbmSpillFindAlgo.h.

Referenced by ProcessMs().

◆ fuCurrentSpillIdx

UInt_t CbmMcbmSpillFindAlgo::fuCurrentSpillIdx = 0
private

Definition at line 134 of file CbmMcbmSpillFindAlgo.h.

Referenced by ProcessMs(), and ResetHistograms().

◆ fuGet4Id

UInt_t CbmMcbmSpillFindAlgo::fuGet4Id
private
Initial value:
=
0

Bin size in s for the plots with date as X axis.

Definition at line 122 of file CbmMcbmSpillFindAlgo.h.

Referenced by ProcessMs().

◆ fuGet4Nr

UInt_t CbmMcbmSpillFindAlgo::fuGet4Nr = 0
private

running number (0 to fuNrOfGet4PerGdpb) of the Get4 chip of a unique GDPB for current message

Definition at line 124 of file CbmMcbmSpillFindAlgo.h.

Referenced by ProcessMs().

◆ fuHistoryHistoSize

UInt_t CbmMcbmSpillFindAlgo::fuHistoryHistoSize = 3600
private

Histograms related variables.

Definition at line 144 of file CbmMcbmSpillFindAlgo.h.

Referenced by CreateHistograms(), ProcessMs(), and SetHistoryHistoSize().

◆ fulCurrentMsIdx

ULong64_t CbmMcbmSpillFindAlgo::fulCurrentMsIdx = 0
private

Definition at line 109 of file CbmMcbmSpillFindAlgo.h.

Referenced by ProcessMs().

◆ fulCurrentTsIdx

ULong64_t CbmMcbmSpillFindAlgo::fulCurrentTsIdx = 0
private

First TS index, forward point set ~30 years...

Definition at line 108 of file CbmMcbmSpillFindAlgo.h.

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

◆ fulFirstTsIdx

ULong64_t CbmMcbmSpillFindAlgo::fulFirstTsIdx = 9999999999999
private

Running indices TS/MS info

Definition at line 107 of file CbmMcbmSpillFindAlgo.h.

Referenced by Finish(), and ProcessTs().

◆ fuMaxTotPulser

UInt_t CbmMcbmSpillFindAlgo::fuMaxTotPulser = 100
private

Definition at line 96 of file CbmMcbmSpillFindAlgo.h.

Referenced by ProcessMs(), and SetPulserTotLimits().

◆ fuMinTotPulser

UInt_t CbmMcbmSpillFindAlgo::fuMinTotPulser = 90
private

Number of channels per GDPB.

User settings: Data correction parameters

Definition at line 95 of file CbmMcbmSpillFindAlgo.h.

Referenced by ProcessMs(), and SetPulserTotLimits().

◆ fuMsIndex

UInt_t CbmMcbmSpillFindAlgo::fuMsIndex = 0
private

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

Definition at line 114 of file CbmMcbmSpillFindAlgo.h.

Referenced by ProcessTs().

◆ fuNbCoreMsPerTs

◆ fuNbMsLoop

◆ fuNbOverMsPerTs

◆ fUnpackPar

CbmMcbm2018TofPar* CbmMcbmSpillFindAlgo::fUnpackPar = nullptr
private

Settings from parameter file.

Definition at line 82 of file CbmMcbmSpillFindAlgo.h.

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

◆ fuNrOfChannelsPerFee

UInt_t CbmMcbmSpillFindAlgo::fuNrOfChannelsPerFee = 0
private

Number of channels in each GET4.

Definition at line 89 of file CbmMcbmSpillFindAlgo.h.

Referenced by InitParameters().

◆ fuNrOfChannelsPerGdpb

UInt_t CbmMcbmSpillFindAlgo::fuNrOfChannelsPerGdpb = 0
private

Number of GET4s per GDPB.

Definition at line 92 of file CbmMcbmSpillFindAlgo.h.

Referenced by InitParameters().

◆ fuNrOfChannelsPerGet4

UInt_t CbmMcbmSpillFindAlgo::fuNrOfChannelsPerGet4 = 0
private

Number of GET4s per FEE.

Definition at line 88 of file CbmMcbmSpillFindAlgo.h.

Referenced by InitParameters().

◆ fuNrOfFeePerGdpb

UInt_t CbmMcbmSpillFindAlgo::fuNrOfFeePerGdpb = 0
private

gDPB ID to index map

Definition at line 86 of file CbmMcbmSpillFindAlgo.h.

Referenced by InitParameters().

◆ fuNrOfGdpbs

UInt_t CbmMcbmSpillFindAlgo::fuNrOfGdpbs = 0
private

Readout chain dimensions and mapping.

Definition at line 84 of file CbmMcbmSpillFindAlgo.h.

Referenced by InitParameters().

◆ fuNrOfGet4

UInt_t CbmMcbmSpillFindAlgo::fuNrOfGet4 = 0
private

Number of channels in each FEE.

Definition at line 90 of file CbmMcbmSpillFindAlgo.h.

Referenced by InitParameters().

◆ fuNrOfGet4PerFee

UInt_t CbmMcbmSpillFindAlgo::fuNrOfGet4PerFee = 0
private

Number of FEBs per GDPB.

Definition at line 87 of file CbmMcbmSpillFindAlgo.h.

Referenced by InitParameters().

◆ fuNrOfGet4PerGdpb

UInt_t CbmMcbmSpillFindAlgo::fuNrOfGet4PerGdpb = 0
private

Total number of Get4 chips in the system.

Definition at line 91 of file CbmMcbmSpillFindAlgo.h.

Referenced by InitParameters(), and ProcessMs().

◆ fuOffSpillCountLimit

UInt_t CbmMcbmSpillFindAlgo::fuOffSpillCountLimit = 100
private

Definition at line 97 of file CbmMcbmSpillFindAlgo.h.

Referenced by ProcessMs(), and SetSpillThreshold().

◆ fvbMaskedComponents

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

Switch ON the filling of a additional set of histograms.

Definition at line 79 of file CbmMcbmSpillFindAlgo.h.

Referenced by ProcessMs().

◆ fvMsComponentsList

◆ fvpAllCanvasPointers

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

◆ fvuSpillBreakBegTs

std::vector<ULong64_t> CbmMcbmSpillFindAlgo::fvuSpillBreakBegTs = {}
private

Definition at line 139 of file CbmMcbmSpillFindAlgo.h.

Referenced by Finish(), and ProcessMs().

◆ fvuSpillBreakEndTs

std::vector<ULong64_t> CbmMcbmSpillFindAlgo::fvuSpillBreakEndTs = {}
private

Definition at line 140 of file CbmMcbmSpillFindAlgo.h.

Referenced by Finish(), and ProcessMs().

◆ fvuSpillBreakMidTs

std::vector<ULong64_t> CbmMcbmSpillFindAlgo::fvuSpillBreakMidTs = {}
private

Definition at line 141 of file CbmMcbmSpillFindAlgo.h.

Referenced by Finish().

◆ kiMaxNbFlibLinks

const Int_t CbmMcbmSpillFindAlgo::kiMaxNbFlibLinks = 32
staticprivate

Constants.

Definition at line 101 of file CbmMcbmSpillFindAlgo.h.

◆ kuBytesPerMessage

const UInt_t CbmMcbmSpillFindAlgo::kuBytesPerMessage = 8
staticprivate

Definition at line 102 of file CbmMcbmSpillFindAlgo.h.

Referenced by ProcessMs().

◆ kuNbChanDiamond

const UInt_t CbmMcbmSpillFindAlgo::kuNbChanDiamond = 8
staticprivate

Definition at line 103 of file CbmMcbmSpillFindAlgo.h.


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