CbmRoot
CbmMcbm2018MonitorStsSync Class Reference

#include <CbmMcbm2018MonitorStsSync.h>

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

Public Member Functions

 CbmMcbm2018MonitorStsSync ()
 
virtual ~CbmMcbm2018MonitorStsSync ()
 
virtual Bool_t Init ()
 
virtual Bool_t DoUnpack (const fles::Timeslice &ts, size_t component)
 
virtual void Reset ()
 
virtual void Finish ()
 
void SetParContainers ()
 
Bool_t InitContainers ()
 
Bool_t ReInitContainers ()
 
virtual void AddMsComponentToList (size_t component, UShort_t usDetectorId)
 
virtual void SetNbMsInTs (size_t uCoreMsNb, size_t uOverlapMsNb)
 
void SetMsOverlap (size_t uOverlapMsNb=1)
 
size_t GetMsOverlap ()
 
void SetRunStart (Int_t dateIn, Int_t timeIn, Int_t iBinSize=5)
 
void ResetAllHistos ()
 
void SaveAllHistos (TString sFileName="")
 
void SavePulserHistos (TString sFileName="")
 
void SetHistoFileName (TString sFileName="data/SetupHistos.root")
 
void SetPrintMessage (Bool_t bPrintMessOn=kTRUE, stsxyter::MessagePrintMask ctrl=stsxyter::MessagePrintMask::msg_print_Hex|stsxyter::MessagePrintMask::msg_print_Human)
 
void SetLongDurationLimits (UInt_t uDurationSeconds=3600, UInt_t uBinSize=1)
 
void SetCoincidenceBorder (Double_t dCenterPos, Double_t dBorderVal)
 
void UseDaqBuffer (Bool_t)
 

Private Member Functions

void UpdatePairMeanValue (UInt_t uAsicA, UInt_t uAsicB, Double_t dNewValue)
 
void CreateHistograms ()
 
void FillHitInfo (stsxyter::Message mess, const UShort_t &usElinkIdx, const UInt_t &uAsicIdx, const UInt_t &uMsIdx)
 
void FillTsMsbInfo (stsxyter::Message mess, UInt_t uMessIdx=0, UInt_t uMsIdx=0)
 
void FillEpochInfo (stsxyter::Message mess)
 
 CbmMcbm2018MonitorStsSync (const CbmMcbm2018MonitorStsSync &)
 
CbmMcbm2018MonitorStsSync operator= (const CbmMcbm2018MonitorStsSync &)
 

Private Attributes

std::vector< size_t > fvMsComponentsList
 
size_t fuNbCoreMsPerTs
 
size_t fuNbOverMsPerTs
 
Bool_t fbIgnoreOverlapMs
 
CbmCern2017UnpackParHodo * fUnpackParHodo
 /‍** Ignore Overlap Ms: all fuOverlapMsNb MS at the end of timeslice **‍/ More...
 
UInt_t fuNrOfDpbs
 
std::map< UInt_t, UInt_t > fDpbIdIndexMap
 Total number of Sts DPBs in system. More...
 
UInt_t fuNbElinksPerDpb
 Map of DPB Identifier to DPB index. More...
 
UInt_t fuNbStsXyters
 Number of possible eLinks per DPB. More...
 
UInt_t fuNbChanPerAsic
 Number of StsXyter ASICs. More...
 
std::vector< std::vector< UInt_t > > fvuElinkToAsic
 Number of channels per StsXyter ASIC => should be constant somewhere!!!! More...
 
TString fsHistoFileFullname
 
Bool_t fbPrintMessages
 
stsxyter::MessagePrintMask fPrintMessCtrl
 
ULong64_t fulCurrentTsIdx
 
ULong64_t fulCurrentMsIdx
 
std::map< stsxyter::MessType, UInt_t > fmMsgCounter
 
UInt_t fuCurrentEquipmentId
 
UInt_t fuCurrDpbId
 Current equipment ID, tells from which DPB the current MS is originating. More...
 
UInt_t fuCurrDpbIdx
 Temp holder until Current equipment ID is properly filled in MS. More...
 
Int_t fiRunStartDateTimeSec
 Index of the DPB from which the MS currently unpacked is coming. More...
 
Int_t fiBinSizeDatePlots
 Start of run time since "epoch" in s, for the plots with date as X axis. More...
 
std::vector< ULong64_t > fvulCurrentTsMsb
 Bin size in s for the plots with date as X axis. More...
 
std::vector< UInt_t > fvuCurrentTsMsbCycle
 Current TS MSB for each DPB. More...
 
std::vector< UInt_t > fvuInitialHeaderDone
 Current TS MSB cycle for DPB. More...
 
std::vector< UInt_t > fvuInitialTsMsbCycleHeader
 Flag set after seeing MS header in 1st MS for DPB. More...
 
std::vector< UInt_t > fvuElinkLastTsHit
 TS MSB cycle from MS header in 1st MS for DPB. More...
 
std::vector< std::vector< ULong64_t > > fvulChanLastHitTime
 TS from last hit for DPB. More...
 
std::vector< std::vector< Double_t > > fvdChanLastHitTime
 Last hit time in bins for each Channel. More...
 
std::vector< Double_t > fvdMsTime
 Last hit time in ns for each Channel. More...
 
std::vector< std::vector< std::vector< UInt_t > > > fvuChanNbHitsInMs
 Header time of each MS. More...
 
std::vector< std::vector< std::vector< Double_t > > > fvdChanLastHitTimeInMs
 Number of hits in each MS for each Channel. More...
 
std::vector< std::vector< std::vector< UShort_t > > > fvusChanLastHitAdcInMs
 Last hit time in bins in each MS for each Channel. More...
 
Double_t fdStartTime
 Last hit ADC in bins in each MS for each Channel. More...
 
Double_t fdStartTimeMsSz
 
std::chrono::steady_clock::time_point ftStartTimeUnix
 
std::vector< stsxyter::FinalHitfvmHitsInMs
 
std::vector< std::vector< stsxyter::FinalHit > > fvmAsicHitsInMs
 All hits (time in bins, ADC in bins, asic, channel) in last TS, sorted with "<" operator. More...
 
UInt_t fuMaxNbMicroslices
 All hits (time in bins, ADC in bins, asic, channel) in last TS, per ASIC, sorted with "<" operator. More...
 
Bool_t fbLongHistoEnable
 
UInt_t fuLongHistoNbSeconds
 
UInt_t fuLongHistoBinSizeSec
 
UInt_t fuLongHistoBinNb
 
Double_t fdCoincCenter
 
Double_t fdCoincBorder
 
Double_t fdCoincMin
 
Double_t fdCoincMax
 
CbmHistManagerfHM
 
TH1 * fhPulserMessType
 Histogram manager. More...
 
TH1 * fhPulserSysMessType
 
TH2 * fhPulserMessTypePerDpb
 
TH2 * fhPulserSysMessTypePerDpb
 
TH2 * fhPulserMessTypePerElink
 
TH2 * fhPulserSysMessTypePerElink
 
TH2 * fhPulserStatusMessType
 
TH2 * fhPulserMsStatusFieldType
 
std::vector< TH1 * > fhPulserChanCntRaw
 
std::vector< TH1 * > fhPulserChanCntRawGood
 
std::vector< TH2 * > fhPulserChanAdcRaw
 
std::vector< TProfile * > fhPulserChanAdcRawProf
 
std::vector< TH2 * > fhPulserChanRawTs
 
std::vector< TH2 * > fhPulserChanMissEvt
 
std::vector< TH2 * > fhPulserChanMissEvtEvo
 
std::vector< TH2 * > fhPulserChanHitRateEvo
 
std::vector< TH1 * > fhPulserFebRateEvo
 
std::vector< TH1 * > fhPulserFebMissEvtEvo
 
std::vector< TH2 * > fhPulserChanHitRateEvoLong
 
std::vector< TH1 * > fhPulserFebRateEvoLong
 
TCanvas * fcMsSizeAll
 
TH1 * fhMsSz [kiMaxNbFlibLinks]
 
TProfile * fhMsSzTime [kiMaxNbFlibLinks]
 
Double_t fdStartTs
 Pulser time difference histos. More...
 
std::vector< stsxyter::FinalHitfvmLastHitAsic
 Last hits in each ASIC. More...
 
std::vector< TH2 * > fhPulserTimeDiffPerAsic
 Last hits in each ASIC. More...
 
std::vector< std::vector< TH1 * > > fhPulserTimeDiffPerAsicPair
 
std::vector< std::vector< TH1 * > > fhPulserTimeDiffClkPerAsicPair
 
std::vector< std::vector< TH2 * > > fhPulserTimeDiffEvoPerAsicPair
 
std::vector< std::vector< TProfile * > > fhPulserTimeDiffEvoPerAsicPairProf
 
std::vector< std::vector< TProfile * > > fhPulserRawTimeDiffEvoPerAsicPairProf
 
std::vector< std::vector< TH2 * > > fhPulserTsLsbMatchPerAsicPair
 
std::vector< std::vector< TH2 * > > fhPulserTsMsbMatchPerAsicPair
 
std::vector< std::vector< TProfile * > > fhPulserTsLsbDiffEvoPerAsicPairProf
 
std::vector< std::vector< TProfile * > > fhPulserTsMsbDiffEvoPerAsicPairProf
 
std::vector< TH1 * > fhPulserIntervalAsic
 
std::vector< TH1 * > fhPulserIntervalLongAsic
 
std::vector< std::vector< std::vector< Double_t > > > fvdLastTimeDiffValuesAsicPair
 
std::vector< std::vector< UInt_t > > fvuLastTimeDiffSlotAsicPair
 
std::vector< std::vector< Double_t > > fvdMeanTimeDiffAsicPair
 

Static Private Attributes

static const Int_t kiMaxNbFlibLinks = 16
 Vector holding for each link the corresponding ASIC index [fuNrOfDpbs * fuNbElinksPerDpb]. More...
 
static const UInt_t kuBytesPerMessage = 4
 
static const UInt_t kuNbValuesForTimeDiffMean = 100
 
constexpr static const double kdPulserPeriod = 154000
 
constexpr static const double kdTimeDiffToMeanMargin = 50
 ns More...
 

Detailed Description

Definition at line 32 of file CbmMcbm2018MonitorStsSync.h.

Constructor & Destructor Documentation

◆ CbmMcbm2018MonitorStsSync() [1/2]

CbmMcbm2018MonitorStsSync::CbmMcbm2018MonitorStsSync ( )

Definition at line 44 of file CbmMcbm2018MonitorStsSync.cxx.

◆ ~CbmMcbm2018MonitorStsSync()

CbmMcbm2018MonitorStsSync::~CbmMcbm2018MonitorStsSync ( )
virtual

Definition at line 135 of file CbmMcbm2018MonitorStsSync.cxx.

◆ CbmMcbm2018MonitorStsSync() [2/2]

CbmMcbm2018MonitorStsSync::CbmMcbm2018MonitorStsSync ( const CbmMcbm2018MonitorStsSync )
private

Member Function Documentation

◆ AddMsComponentToList()

void CbmMcbm2018MonitorStsSync::AddMsComponentToList ( size_t  component,
UShort_t  usDetectorId 
)
virtual

Check for duplicates and ignore if it is the case

Add to list

Create MS size monitoring histos

Implements CbmMcbmUnpack.

Definition at line 286 of file CbmMcbm2018MonitorStsSync.cxx.

References CbmHistManager::Add(), fcMsSizeAll, fHM, fhMsSz, fhMsSzTime, fvMsComponentsList, and kiMaxNbFlibLinks.

◆ CreateHistograms()

void CbmMcbm2018MonitorStsSync::CreateHistograms ( )
private

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++///

Coincidences inside each detector -------------------------—///

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++///

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++///

Create summary Canvases for CERN 2017

Recovers/Create Ms Size Canvase for CERN 2016

Definition at line 378 of file CbmMcbm2018MonitorStsSync.cxx.

References fcMsSizeAll, fhMsSz, fhMsSzTime, fhPulserChanAdcRaw, fhPulserChanAdcRawProf, fhPulserChanCntRaw, fhPulserChanCntRawGood, fhPulserChanHitRateEvo, fhPulserChanHitRateEvoLong, fhPulserChanMissEvt, fhPulserChanMissEvtEvo, fhPulserChanRawTs, fhPulserFebMissEvtEvo, fhPulserFebRateEvo, fhPulserFebRateEvoLong, fhPulserIntervalAsic, fhPulserIntervalLongAsic, fhPulserMessType, fhPulserMessTypePerDpb, fhPulserMessTypePerElink, fhPulserMsStatusFieldType, fhPulserRawTimeDiffEvoPerAsicPairProf, fhPulserStatusMessType, fhPulserSysMessType, fhPulserSysMessTypePerDpb, fhPulserSysMessTypePerElink, fhPulserTimeDiffClkPerAsicPair, fhPulserTimeDiffEvoPerAsicPair, fhPulserTimeDiffEvoPerAsicPairProf, fhPulserTimeDiffPerAsic, fhPulserTimeDiffPerAsicPair, fhPulserTsLsbDiffEvoPerAsicPairProf, fhPulserTsLsbMatchPerAsicPair, fhPulserTsMsbDiffEvoPerAsicPairProf, fhPulserTsMsbMatchPerAsicPair, fuLongHistoBinNb, fuLongHistoBinSizeSec, fuLongHistoNbSeconds, fuNbChanPerAsic, fuNbElinksPerDpb, fuNbStsXyters, fuNrOfDpbs, fvdLastTimeDiffValuesAsicPair, fvdMeanTimeDiffAsicPair, fvuLastTimeDiffSlotAsicPair, stsxyter::kdClockCycleNs, kiMaxNbFlibLinks, stsxyter::kuHitNbAdcBins, and stsxyter::kuHitNbTsBins.

Referenced by InitContainers().

◆ DoUnpack()

Bool_t CbmMcbm2018MonitorStsSync::DoUnpack ( const fles::Timeslice &  ts,
size_t  component 
)
virtual

Check Flags field of MS header

Check the current TS_MSb cycle and correct it if wrong

Always print status messages

Pulses time difference calculation and plotting using the fully time sorted hits

Data in vector are not needed anymore as all possible matches are already checked

Implements CbmMcbmUnpack.

Definition at line 1237 of file CbmMcbm2018MonitorStsSync.cxx.

References bMcbm2018ResetStsSync, bMcbm2018WriteStsSync, stsxyter::Dummy, stsxyter::Empty, stsxyter::Epoch, fbIgnoreOverlapMs, fbPrintMessages, fDpbIdIndexMap, fdStartTimeMsSz, fdStartTs, fhMsSz, fhMsSzTime, fhPulserIntervalAsic, fhPulserIntervalLongAsic, fhPulserMessType, fhPulserMessTypePerDpb, fhPulserMessTypePerElink, fhPulserMsStatusFieldType, fhPulserRawTimeDiffEvoPerAsicPairProf, fhPulserStatusMessType, fhPulserTimeDiffClkPerAsicPair, fhPulserTimeDiffEvoPerAsicPair, fhPulserTimeDiffEvoPerAsicPairProf, fhPulserTimeDiffPerAsic, fhPulserTimeDiffPerAsicPair, fhPulserTsLsbDiffEvoPerAsicPairProf, fhPulserTsLsbMatchPerAsicPair, fhPulserTsMsbDiffEvoPerAsicPairProf, fhPulserTsMsbMatchPerAsicPair, FillEpochInfo(), FillHitInfo(), FillTsMsbInfo(), fmMsgCounter, fPrintMessCtrl, fsHistoFileFullname, fuCurrDpbId, fuCurrDpbIdx, fuCurrentEquipmentId, fulCurrentMsIdx, fulCurrentTsIdx, fuMaxNbMicroslices, fuNbCoreMsPerTs, fuNbElinksPerDpb, fuNbOverMsPerTs, fuNbStsXyters, fuNrOfDpbs, fvdMsTime, fvmAsicHitsInMs, fvmHitsInMs, fvmLastHitAsic, fvMsComponentsList, fvuCurrentTsMsbCycle, fvuElinkToAsic, fvuInitialHeaderDone, fvuInitialTsMsbCycleHeader, fvulCurrentTsMsb, stsxyter::Message::GetLinkIndex(), stsxyter::Message::GetMessType(), stsxyter::Message::GetStatusLink(), stsxyter::Message::GetStatusStatus(), stsxyter::Hit, stsxyter::kdClockCycleNs, kdPulserPeriod, kiMaxNbFlibLinks, kuBytesPerMessage, stsxyter::kuHitNbTsBins, stsxyter::kulTsCycleNbBins, stsxyter::Message::PrintMess(), ResetAllHistos(), SaveAllHistos(), SavePulserHistos(), stsxyter::Status, stsxyter::TsMsb, and UpdatePairMeanValue().

◆ FillEpochInfo()

void CbmMcbm2018MonitorStsSync::FillEpochInfo ( stsxyter::Message  mess)
private

Definition at line 1765 of file CbmMcbm2018MonitorStsSync.cxx.

Referenced by DoUnpack().

◆ FillHitInfo()

◆ FillTsMsbInfo()

void CbmMcbm2018MonitorStsSync::FillTsMsbInfo ( stsxyter::Message  mess,
UInt_t  uMessIdx = 0,
UInt_t  uMsIdx = 0 
)
private

◆ Finish()

void CbmMcbm2018MonitorStsSync::Finish ( )
virtual

◆ GetMsOverlap()

size_t CbmMcbm2018MonitorStsSync::GetMsOverlap ( )
inline

Definition at line 54 of file CbmMcbm2018MonitorStsSync.h.

References fuNbOverMsPerTs.

◆ Init()

Bool_t CbmMcbm2018MonitorStsSync::Init ( )
virtual

Implements CbmMcbmUnpack.

Definition at line 137 of file CbmMcbm2018MonitorStsSync.cxx.

◆ InitContainers()

Bool_t CbmMcbm2018MonitorStsSync::InitContainers ( )
virtual

Reimplemented from CbmMcbmUnpack.

Definition at line 155 of file CbmMcbm2018MonitorStsSync.cxx.

References CreateHistograms(), and ReInitContainers().

◆ operator=()

CbmMcbm2018MonitorStsSync CbmMcbm2018MonitorStsSync::operator= ( const CbmMcbm2018MonitorStsSync )
private

◆ ReInitContainers()

◆ Reset()

void CbmMcbm2018MonitorStsSync::Reset ( )
virtual

Implements CbmMcbmUnpack.

Definition at line 1779 of file CbmMcbm2018MonitorStsSync.cxx.

◆ ResetAllHistos()

◆ SaveAllHistos()

◆ SavePulserHistos()

void CbmMcbm2018MonitorStsSync::SavePulserHistos ( TString  sFileName = "")

◆ SetCoincidenceBorder()

void CbmMcbm2018MonitorStsSync::SetCoincidenceBorder ( Double_t  dCenterPos,
Double_t  dBorderVal 
)

Definition at line 370 of file CbmMcbm2018MonitorStsSync.cxx.

References fdCoincBorder, fdCoincCenter, fdCoincMax, and fdCoincMin.

◆ SetHistoFileName()

void CbmMcbm2018MonitorStsSync::SetHistoFileName ( TString  sFileName = "data/SetupHistos.root")
inline

Definition at line 61 of file CbmMcbm2018MonitorStsSync.h.

References fsHistoFileFullname.

◆ SetLongDurationLimits()

void CbmMcbm2018MonitorStsSync::SetLongDurationLimits ( UInt_t  uDurationSeconds = 3600,
UInt_t  uBinSize = 1 
)

◆ SetMsOverlap()

void CbmMcbm2018MonitorStsSync::SetMsOverlap ( size_t  uOverlapMsNb = 1)
inline

Definition at line 53 of file CbmMcbm2018MonitorStsSync.h.

References fuNbOverMsPerTs.

◆ SetNbMsInTs()

void CbmMcbm2018MonitorStsSync::SetNbMsInTs ( size_t  uCoreMsNb,
size_t  uOverlapMsNb 
)
virtual

◆ SetParContainers()

void CbmMcbm2018MonitorStsSync::SetParContainers ( )
virtual

Implements CbmMcbmUnpack.

Definition at line 146 of file CbmMcbm2018MonitorStsSync.cxx.

References fUnpackParHodo.

◆ SetPrintMessage()

void CbmMcbm2018MonitorStsSync::SetPrintMessage ( Bool_t  bPrintMessOn = kTRUE,
stsxyter::MessagePrintMask  ctrl = stsxyter::MessagePrintMask::msg_print_Hex | stsxyter::MessagePrintMask::msg_print_Human 
)
inline

Definition at line 65 of file CbmMcbm2018MonitorStsSync.h.

References fbPrintMessages, and fPrintMessCtrl.

◆ SetRunStart()

void CbmMcbm2018MonitorStsSync::SetRunStart ( Int_t  dateIn,
Int_t  timeIn,
Int_t  iBinSize = 5 
)

Definition at line 2032 of file CbmMcbm2018MonitorStsSync.cxx.

References fiBinSizeDatePlots, and fiRunStartDateTimeSec.

◆ UpdatePairMeanValue()

void CbmMcbm2018MonitorStsSync::UpdatePairMeanValue ( UInt_t  uAsicA,
UInt_t  uAsicB,
Double_t  dNewValue 
)
private

◆ UseDaqBuffer()

void CbmMcbm2018MonitorStsSync::UseDaqBuffer ( Bool_t  )
inline

Definition at line 76 of file CbmMcbm2018MonitorStsSync.h.

Member Data Documentation

◆ fbIgnoreOverlapMs

Bool_t CbmMcbm2018MonitorStsSync::fbIgnoreOverlapMs
private

Definition at line 85 of file CbmMcbm2018MonitorStsSync.h.

Referenced by DoUnpack().

◆ fbLongHistoEnable

Bool_t CbmMcbm2018MonitorStsSync::fbLongHistoEnable
private

Definition at line 160 of file CbmMcbm2018MonitorStsSync.h.

Referenced by SetLongDurationLimits().

◆ fbPrintMessages

Bool_t CbmMcbm2018MonitorStsSync::fbPrintMessages
private

Definition at line 106 of file CbmMcbm2018MonitorStsSync.h.

Referenced by DoUnpack(), and SetPrintMessage().

◆ fcMsSizeAll

TCanvas* CbmMcbm2018MonitorStsSync::fcMsSizeAll
private

Definition at line 200 of file CbmMcbm2018MonitorStsSync.h.

Referenced by AddMsComponentToList(), and CreateHistograms().

◆ fdCoincBorder

Double_t CbmMcbm2018MonitorStsSync::fdCoincBorder
private

Definition at line 167 of file CbmMcbm2018MonitorStsSync.h.

Referenced by SetCoincidenceBorder().

◆ fdCoincCenter

Double_t CbmMcbm2018MonitorStsSync::fdCoincCenter
private

Definition at line 166 of file CbmMcbm2018MonitorStsSync.h.

Referenced by SetCoincidenceBorder().

◆ fdCoincMax

Double_t CbmMcbm2018MonitorStsSync::fdCoincMax
private

Definition at line 169 of file CbmMcbm2018MonitorStsSync.h.

Referenced by SetCoincidenceBorder().

◆ fdCoincMin

Double_t CbmMcbm2018MonitorStsSync::fdCoincMin
private

Definition at line 168 of file CbmMcbm2018MonitorStsSync.h.

Referenced by SetCoincidenceBorder().

◆ fDpbIdIndexMap

std::map<UInt_t, UInt_t> CbmMcbm2018MonitorStsSync::fDpbIdIndexMap
private

Total number of Sts DPBs in system.

Definition at line 90 of file CbmMcbm2018MonitorStsSync.h.

Referenced by DoUnpack(), and ReInitContainers().

◆ fdStartTime

Double_t CbmMcbm2018MonitorStsSync::fdStartTime
private

Last hit ADC in bins in each MS for each Channel.

Definition at line 146 of file CbmMcbm2018MonitorStsSync.h.

Referenced by FillHitInfo(), and ResetAllHistos().

◆ fdStartTimeMsSz

Double_t CbmMcbm2018MonitorStsSync::fdStartTimeMsSz
private

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

Definition at line 148 of file CbmMcbm2018MonitorStsSync.h.

Referenced by DoUnpack(), and ResetAllHistos().

◆ fdStartTs

Double_t CbmMcbm2018MonitorStsSync::fdStartTs
private

Pulser time difference histos.

Definition at line 205 of file CbmMcbm2018MonitorStsSync.h.

Referenced by DoUnpack().

◆ fHM

CbmHistManager* CbmMcbm2018MonitorStsSync::fHM
private

◆ fhMsSz

TH1* CbmMcbm2018MonitorStsSync::fhMsSz[kiMaxNbFlibLinks]
private

Definition at line 201 of file CbmMcbm2018MonitorStsSync.h.

Referenced by AddMsComponentToList(), CreateHistograms(), and DoUnpack().

◆ fhMsSzTime

TProfile* CbmMcbm2018MonitorStsSync::fhMsSzTime[kiMaxNbFlibLinks]
private

Definition at line 202 of file CbmMcbm2018MonitorStsSync.h.

Referenced by AddMsComponentToList(), CreateHistograms(), and DoUnpack().

◆ fhPulserChanAdcRaw

std::vector<TH2*> CbmMcbm2018MonitorStsSync::fhPulserChanAdcRaw
private

◆ fhPulserChanAdcRawProf

std::vector<TProfile*> CbmMcbm2018MonitorStsSync::fhPulserChanAdcRawProf
private

◆ fhPulserChanCntRaw

std::vector<TH1*> CbmMcbm2018MonitorStsSync::fhPulserChanCntRaw
private

◆ fhPulserChanCntRawGood

std::vector<TH1*> CbmMcbm2018MonitorStsSync::fhPulserChanCntRawGood
private

Definition at line 188 of file CbmMcbm2018MonitorStsSync.h.

Referenced by CreateHistograms().

◆ fhPulserChanHitRateEvo

std::vector<TH2*> CbmMcbm2018MonitorStsSync::fhPulserChanHitRateEvo
private

◆ fhPulserChanHitRateEvoLong

std::vector<TH2*> CbmMcbm2018MonitorStsSync::fhPulserChanHitRateEvoLong
private

◆ fhPulserChanMissEvt

std::vector<TH2*> CbmMcbm2018MonitorStsSync::fhPulserChanMissEvt
private

◆ fhPulserChanMissEvtEvo

std::vector<TH2*> CbmMcbm2018MonitorStsSync::fhPulserChanMissEvtEvo
private

◆ fhPulserChanRawTs

std::vector<TH2*> CbmMcbm2018MonitorStsSync::fhPulserChanRawTs
private

◆ fhPulserFebMissEvtEvo

std::vector<TH1*> CbmMcbm2018MonitorStsSync::fhPulserFebMissEvtEvo
private

◆ fhPulserFebRateEvo

std::vector<TH1*> CbmMcbm2018MonitorStsSync::fhPulserFebRateEvo
private

◆ fhPulserFebRateEvoLong

std::vector<TH1*> CbmMcbm2018MonitorStsSync::fhPulserFebRateEvoLong
private

◆ fhPulserIntervalAsic

std::vector<TH1*> CbmMcbm2018MonitorStsSync::fhPulserIntervalAsic
private

◆ fhPulserIntervalLongAsic

std::vector<TH1*> CbmMcbm2018MonitorStsSync::fhPulserIntervalLongAsic
private

◆ fhPulserMessType

TH1* CbmMcbm2018MonitorStsSync::fhPulserMessType
private

Histogram manager.

Definition at line 173 of file CbmMcbm2018MonitorStsSync.h.

Referenced by CreateHistograms(), DoUnpack(), ResetAllHistos(), and SaveAllHistos().

◆ fhPulserMessTypePerDpb

TH2* CbmMcbm2018MonitorStsSync::fhPulserMessTypePerDpb
private

◆ fhPulserMessTypePerElink

TH2* CbmMcbm2018MonitorStsSync::fhPulserMessTypePerElink
private

◆ fhPulserMsStatusFieldType

TH2* CbmMcbm2018MonitorStsSync::fhPulserMsStatusFieldType
private

◆ fhPulserRawTimeDiffEvoPerAsicPairProf

std::vector<std::vector<TProfile*> > CbmMcbm2018MonitorStsSync::fhPulserRawTimeDiffEvoPerAsicPairProf
private

◆ fhPulserStatusMessType

TH2* CbmMcbm2018MonitorStsSync::fhPulserStatusMessType
private

◆ fhPulserSysMessType

TH1* CbmMcbm2018MonitorStsSync::fhPulserSysMessType
private

Definition at line 174 of file CbmMcbm2018MonitorStsSync.h.

Referenced by CreateHistograms(), ResetAllHistos(), and SaveAllHistos().

◆ fhPulserSysMessTypePerDpb

TH2* CbmMcbm2018MonitorStsSync::fhPulserSysMessTypePerDpb
private

Definition at line 176 of file CbmMcbm2018MonitorStsSync.h.

Referenced by CreateHistograms(), ResetAllHistos(), and SaveAllHistos().

◆ fhPulserSysMessTypePerElink

TH2* CbmMcbm2018MonitorStsSync::fhPulserSysMessTypePerElink
private

Definition at line 183 of file CbmMcbm2018MonitorStsSync.h.

Referenced by CreateHistograms(), ResetAllHistos(), and SaveAllHistos().

◆ fhPulserTimeDiffClkPerAsicPair

std::vector<std::vector<TH1*> > CbmMcbm2018MonitorStsSync::fhPulserTimeDiffClkPerAsicPair
private

◆ fhPulserTimeDiffEvoPerAsicPair

std::vector<std::vector<TH2*> > CbmMcbm2018MonitorStsSync::fhPulserTimeDiffEvoPerAsicPair
private

◆ fhPulserTimeDiffEvoPerAsicPairProf

std::vector<std::vector<TProfile*> > CbmMcbm2018MonitorStsSync::fhPulserTimeDiffEvoPerAsicPairProf
private

◆ fhPulserTimeDiffPerAsic

std::vector<TH2*> CbmMcbm2018MonitorStsSync::fhPulserTimeDiffPerAsic
private

Last hits in each ASIC.

Definition at line 207 of file CbmMcbm2018MonitorStsSync.h.

Referenced by CreateHistograms(), DoUnpack(), ResetAllHistos(), and SaveAllHistos().

◆ fhPulserTimeDiffPerAsicPair

std::vector<std::vector<TH1*> > CbmMcbm2018MonitorStsSync::fhPulserTimeDiffPerAsicPair
private

◆ fhPulserTsLsbDiffEvoPerAsicPairProf

std::vector<std::vector<TProfile*> > CbmMcbm2018MonitorStsSync::fhPulserTsLsbDiffEvoPerAsicPairProf
private

◆ fhPulserTsLsbMatchPerAsicPair

std::vector<std::vector<TH2*> > CbmMcbm2018MonitorStsSync::fhPulserTsLsbMatchPerAsicPair
private

◆ fhPulserTsMsbDiffEvoPerAsicPairProf

std::vector<std::vector<TProfile*> > CbmMcbm2018MonitorStsSync::fhPulserTsMsbDiffEvoPerAsicPairProf
private

◆ fhPulserTsMsbMatchPerAsicPair

std::vector<std::vector<TH2*> > CbmMcbm2018MonitorStsSync::fhPulserTsMsbMatchPerAsicPair
private

◆ fiBinSizeDatePlots

Int_t CbmMcbm2018MonitorStsSync::fiBinSizeDatePlots
private

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

Definition at line 121 of file CbmMcbm2018MonitorStsSync.h.

Referenced by SetRunStart().

◆ fiRunStartDateTimeSec

Int_t CbmMcbm2018MonitorStsSync::fiRunStartDateTimeSec
private

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

Definition at line 120 of file CbmMcbm2018MonitorStsSync.h.

Referenced by SetRunStart().

◆ fmMsgCounter

std::map<stsxyter::MessType, UInt_t> CbmMcbm2018MonitorStsSync::fmMsgCounter
private

Definition at line 112 of file CbmMcbm2018MonitorStsSync.h.

Referenced by DoUnpack(), and Finish().

◆ fPrintMessCtrl

stsxyter::MessagePrintMask CbmMcbm2018MonitorStsSync::fPrintMessCtrl
private

Definition at line 107 of file CbmMcbm2018MonitorStsSync.h.

Referenced by DoUnpack(), and SetPrintMessage().

◆ fsHistoFileFullname

TString CbmMcbm2018MonitorStsSync::fsHistoFileFullname
private

Definition at line 104 of file CbmMcbm2018MonitorStsSync.h.

Referenced by DoUnpack(), Finish(), and SetHistoFileName().

◆ ftStartTimeUnix

std::chrono::steady_clock::time_point CbmMcbm2018MonitorStsSync::ftStartTimeUnix
private

Time of first microslice, used as reference for evolution plots

Definition at line 150 of file CbmMcbm2018MonitorStsSync.h.

◆ fuCurrDpbId

UInt_t CbmMcbm2018MonitorStsSync::fuCurrDpbId
private

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

Definition at line 116 of file CbmMcbm2018MonitorStsSync.h.

Referenced by DoUnpack().

◆ fuCurrDpbIdx

UInt_t CbmMcbm2018MonitorStsSync::fuCurrDpbIdx
private

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

Definition at line 118 of file CbmMcbm2018MonitorStsSync.h.

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

◆ fuCurrentEquipmentId

UInt_t CbmMcbm2018MonitorStsSync::fuCurrentEquipmentId
private

Definition at line 114 of file CbmMcbm2018MonitorStsSync.h.

Referenced by DoUnpack().

◆ fulCurrentMsIdx

ULong64_t CbmMcbm2018MonitorStsSync::fulCurrentMsIdx
private

Definition at line 110 of file CbmMcbm2018MonitorStsSync.h.

Referenced by DoUnpack(), and FillTsMsbInfo().

◆ fulCurrentTsIdx

ULong64_t CbmMcbm2018MonitorStsSync::fulCurrentTsIdx
private

Definition at line 109 of file CbmMcbm2018MonitorStsSync.h.

Referenced by DoUnpack(), and FillTsMsbInfo().

◆ fuLongHistoBinNb

UInt_t CbmMcbm2018MonitorStsSync::fuLongHistoBinNb
private

Definition at line 163 of file CbmMcbm2018MonitorStsSync.h.

Referenced by CreateHistograms().

◆ fuLongHistoBinSizeSec

UInt_t CbmMcbm2018MonitorStsSync::fuLongHistoBinSizeSec
private

Definition at line 162 of file CbmMcbm2018MonitorStsSync.h.

Referenced by CreateHistograms(), and SetLongDurationLimits().

◆ fuLongHistoNbSeconds

UInt_t CbmMcbm2018MonitorStsSync::fuLongHistoNbSeconds
private

Definition at line 161 of file CbmMcbm2018MonitorStsSync.h.

Referenced by CreateHistograms(), and SetLongDurationLimits().

◆ fuMaxNbMicroslices

UInt_t CbmMcbm2018MonitorStsSync::fuMaxNbMicroslices
private

All hits (time in bins, ADC in bins, asic, channel) in last TS, per ASIC, sorted with "<" operator.

Definition at line 158 of file CbmMcbm2018MonitorStsSync.h.

Referenced by DoUnpack(), ReInitContainers(), and SetNbMsInTs().

◆ fuNbChanPerAsic

UInt_t CbmMcbm2018MonitorStsSync::fuNbChanPerAsic
private

Number of StsXyter ASICs.

Definition at line 94 of file CbmMcbm2018MonitorStsSync.h.

Referenced by CreateHistograms(), ReInitContainers(), and SetNbMsInTs().

◆ fuNbCoreMsPerTs

size_t CbmMcbm2018MonitorStsSync::fuNbCoreMsPerTs
private

Definition at line 82 of file CbmMcbm2018MonitorStsSync.h.

Referenced by DoUnpack(), and SetNbMsInTs().

◆ fuNbElinksPerDpb

UInt_t CbmMcbm2018MonitorStsSync::fuNbElinksPerDpb
private

Map of DPB Identifier to DPB index.

Definition at line 91 of file CbmMcbm2018MonitorStsSync.h.

Referenced by CreateHistograms(), DoUnpack(), and ReInitContainers().

◆ fuNbOverMsPerTs

size_t CbmMcbm2018MonitorStsSync::fuNbOverMsPerTs
private

Definition at line 83 of file CbmMcbm2018MonitorStsSync.h.

Referenced by DoUnpack(), GetMsOverlap(), SetMsOverlap(), and SetNbMsInTs().

◆ fuNbStsXyters

UInt_t CbmMcbm2018MonitorStsSync::fuNbStsXyters
private

Number of possible eLinks per DPB.

Definition at line 92 of file CbmMcbm2018MonitorStsSync.h.

Referenced by CreateHistograms(), DoUnpack(), ReInitContainers(), ResetAllHistos(), SaveAllHistos(), SavePulserHistos(), and SetNbMsInTs().

◆ fUnpackParHodo

CbmCern2017UnpackParHodo* CbmMcbm2018MonitorStsSync::fUnpackParHodo
private

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

Definition at line 87 of file CbmMcbm2018MonitorStsSync.h.

Referenced by ReInitContainers(), and SetParContainers().

◆ fuNrOfDpbs

UInt_t CbmMcbm2018MonitorStsSync::fuNrOfDpbs
private

Definition at line 88 of file CbmMcbm2018MonitorStsSync.h.

Referenced by CreateHistograms(), DoUnpack(), and ReInitContainers().

◆ fvdChanLastHitTime

std::vector<std::vector<Double_t> > CbmMcbm2018MonitorStsSync::fvdChanLastHitTime
private

Last hit time in bins for each Channel.

Definition at line 135 of file CbmMcbm2018MonitorStsSync.h.

Referenced by FillHitInfo(), and ReInitContainers().

◆ fvdChanLastHitTimeInMs

std::vector<std::vector<std::vector<Double_t> > > CbmMcbm2018MonitorStsSync::fvdChanLastHitTimeInMs
private

Number of hits in each MS for each Channel.

Definition at line 140 of file CbmMcbm2018MonitorStsSync.h.

Referenced by FillHitInfo(), ReInitContainers(), and SetNbMsInTs().

◆ fvdLastTimeDiffValuesAsicPair

std::vector<std::vector<std::vector<Double_t> > > CbmMcbm2018MonitorStsSync::fvdLastTimeDiffValuesAsicPair
private

Definition at line 225 of file CbmMcbm2018MonitorStsSync.h.

Referenced by CreateHistograms(), and UpdatePairMeanValue().

◆ fvdMeanTimeDiffAsicPair

std::vector<std::vector<Double_t> > CbmMcbm2018MonitorStsSync::fvdMeanTimeDiffAsicPair
private

Definition at line 227 of file CbmMcbm2018MonitorStsSync.h.

Referenced by CreateHistograms(), and UpdatePairMeanValue().

◆ fvdMsTime

std::vector<Double_t> CbmMcbm2018MonitorStsSync::fvdMsTime
private

Last hit time in ns for each Channel.

Definition at line 136 of file CbmMcbm2018MonitorStsSync.h.

Referenced by DoUnpack(), ReInitContainers(), and SetNbMsInTs().

◆ fvmAsicHitsInMs

std::vector<std::vector<stsxyter::FinalHit> > CbmMcbm2018MonitorStsSync::fvmAsicHitsInMs
private

All hits (time in bins, ADC in bins, asic, channel) in last TS, sorted with "<" operator.

Definition at line 156 of file CbmMcbm2018MonitorStsSync.h.

Referenced by DoUnpack(), and ReInitContainers().

◆ fvmHitsInMs

std::vector<stsxyter::FinalHit> CbmMcbm2018MonitorStsSync::fvmHitsInMs
private

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

Definition at line 154 of file CbmMcbm2018MonitorStsSync.h.

Referenced by DoUnpack(), and FillHitInfo().

◆ fvmLastHitAsic

std::vector<stsxyter::FinalHit> CbmMcbm2018MonitorStsSync::fvmLastHitAsic
private

Last hits in each ASIC.

Definition at line 206 of file CbmMcbm2018MonitorStsSync.h.

Referenced by DoUnpack(), and ReInitContainers().

◆ fvMsComponentsList

std::vector<size_t> CbmMcbm2018MonitorStsSync::fvMsComponentsList
private

Definition at line 81 of file CbmMcbm2018MonitorStsSync.h.

Referenced by AddMsComponentToList(), and DoUnpack().

◆ fvuChanNbHitsInMs

std::vector<std::vector<std::vector<UInt_t> > > CbmMcbm2018MonitorStsSync::fvuChanNbHitsInMs
private

Header time of each MS.

Definition at line 138 of file CbmMcbm2018MonitorStsSync.h.

Referenced by FillHitInfo(), ReInitContainers(), and SetNbMsInTs().

◆ fvuCurrentTsMsbCycle

std::vector<UInt_t> CbmMcbm2018MonitorStsSync::fvuCurrentTsMsbCycle
private

Current TS MSB for each DPB.

Definition at line 125 of file CbmMcbm2018MonitorStsSync.h.

Referenced by DoUnpack(), FillHitInfo(), FillTsMsbInfo(), and ReInitContainers().

◆ fvuElinkLastTsHit

std::vector<UInt_t> CbmMcbm2018MonitorStsSync::fvuElinkLastTsHit
private

TS MSB cycle from MS header in 1st MS for DPB.

Definition at line 130 of file CbmMcbm2018MonitorStsSync.h.

Referenced by ReInitContainers().

◆ fvuElinkToAsic

std::vector<std::vector<UInt_t> > CbmMcbm2018MonitorStsSync::fvuElinkToAsic
private

Number of channels per StsXyter ASIC => should be constant somewhere!!!!

Definition at line 96 of file CbmMcbm2018MonitorStsSync.h.

Referenced by DoUnpack(), and ReInitContainers().

◆ fvuInitialHeaderDone

std::vector<UInt_t> CbmMcbm2018MonitorStsSync::fvuInitialHeaderDone
private

Current TS MSB cycle for DPB.

Definition at line 127 of file CbmMcbm2018MonitorStsSync.h.

Referenced by DoUnpack(), and ReInitContainers().

◆ fvuInitialTsMsbCycleHeader

std::vector<UInt_t> CbmMcbm2018MonitorStsSync::fvuInitialTsMsbCycleHeader
private

Flag set after seeing MS header in 1st MS for DPB.

Definition at line 129 of file CbmMcbm2018MonitorStsSync.h.

Referenced by DoUnpack(), and ReInitContainers().

◆ fvuLastTimeDiffSlotAsicPair

std::vector<std::vector<UInt_t> > CbmMcbm2018MonitorStsSync::fvuLastTimeDiffSlotAsicPair
private

Definition at line 226 of file CbmMcbm2018MonitorStsSync.h.

Referenced by CreateHistograms(), and UpdatePairMeanValue().

◆ fvulChanLastHitTime

std::vector<std::vector<ULong64_t> > CbmMcbm2018MonitorStsSync::fvulChanLastHitTime
private

TS from last hit for DPB.

Definition at line 133 of file CbmMcbm2018MonitorStsSync.h.

Referenced by FillHitInfo(), and ReInitContainers().

◆ fvulCurrentTsMsb

std::vector<ULong64_t> CbmMcbm2018MonitorStsSync::fvulCurrentTsMsb
private

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

Definition at line 124 of file CbmMcbm2018MonitorStsSync.h.

Referenced by DoUnpack(), FillHitInfo(), FillTsMsbInfo(), and ReInitContainers().

◆ fvusChanLastHitAdcInMs

std::vector<std::vector<std::vector<UShort_t> > > CbmMcbm2018MonitorStsSync::fvusChanLastHitAdcInMs
private

Last hit time in bins in each MS for each Channel.

Definition at line 142 of file CbmMcbm2018MonitorStsSync.h.

Referenced by FillHitInfo(), ReInitContainers(), and SetNbMsInTs().

◆ kdPulserPeriod

constexpr static const double CbmMcbm2018MonitorStsSync::kdPulserPeriod = 154000
staticconstexprprivate

Definition at line 222 of file CbmMcbm2018MonitorStsSync.h.

Referenced by DoUnpack().

◆ kdTimeDiffToMeanMargin

constexpr static const double CbmMcbm2018MonitorStsSync::kdTimeDiffToMeanMargin = 50
staticconstexprprivate

ns

Definition at line 223 of file CbmMcbm2018MonitorStsSync.h.

◆ kiMaxNbFlibLinks

const Int_t CbmMcbm2018MonitorStsSync::kiMaxNbFlibLinks = 16
staticprivate

Vector holding for each link the corresponding ASIC index [fuNrOfDpbs * fuNbElinksPerDpb].

Definition at line 99 of file CbmMcbm2018MonitorStsSync.h.

Referenced by AddMsComponentToList(), CreateHistograms(), DoUnpack(), ResetAllHistos(), and SaveAllHistos().

◆ kuBytesPerMessage

const UInt_t CbmMcbm2018MonitorStsSync::kuBytesPerMessage = 4
staticprivate

Definition at line 100 of file CbmMcbm2018MonitorStsSync.h.

Referenced by DoUnpack().

◆ kuNbValuesForTimeDiffMean

const UInt_t CbmMcbm2018MonitorStsSync::kuNbValuesForTimeDiffMean = 100
staticprivate

Definition at line 221 of file CbmMcbm2018MonitorStsSync.h.

Referenced by UpdatePairMeanValue().


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