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

#include <CbmTrdUnpackMonitor.h>

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

Public Types

enum class  eDigiHistos : size_t {
  kMap = 0 , kMap_St , kMap_Nt , kChannel ,
  kChannel_St , kChannel_Nt , kCharge , kCharge_St ,
  kCharge_Nt , kTriggerType , kDigiDeltaT , kDigiNtCorr
}
 Enum for the predefined digi histograms. More...
 
enum class  eRawHistos : size_t {
  kSignalshape = 0 , kSignalshape_St , kSignalshape_Nt , kMap ,
  kMap_St , kMap_Nt , kElinkId , kSampleDistStdDev ,
  kSample0perChannel , kHitType , kRawRate
}
 Enum for the predefined raw histograms. More...
 
enum class  eOtherHistos : size_t {
  kSpadic_Info_Types = 0 , kMs_Flags , kBomRate , kBufRate ,
  kBomPerRawRate
}
 Enum for the predefined other histograms. More...
 

Public Member Functions

 CbmTrdUnpackMonitor ()
 Create the Cbm Trd Unpack AlgoBase object.
 
virtual ~CbmTrdUnpackMonitor ()
 Destroy the Cbm Trd Unpack Task object.
 
 CbmTrdUnpackMonitor (const CbmTrdUnpackMonitor &)=delete
 Copy constructor - not implemented.
 
CbmTrdUnpackMonitoroperator= (const CbmTrdUnpackMonitor &)=delete
 Assignment operator - not implemented.
 
void FillHistos (CbmTrdDigi *digi, CbmTrdRawMessageSpadic *raw=nullptr)
 fill the stored digi histograms
 
void FillHisto (Spadic::MsInfoType type, std::uint32_t moduleid)
 Fill the given histo with the information on the info type.
 
void FillHisto (fles::MicrosliceFlags flag, std::uint32_t moduleid)
 Fill the given histo with the information on the flag.
 
void Finish ()
 Actions at the end of the run, e.g. write histos to file if flag is set.
 
Bool_t Init (CbmTrdParSetDigi *digiParSet, CbmTrdParSetAsic *asicParSet=nullptr)
 Init all required parameter informations.
 
void SetActiveHistos (std::vector< eDigiHistos > vec)
 transfer the enums for the histos to be activated to the member vector
 
void SetActiveHistos (std::vector< eRawHistos > vec)
 transfer the enums for the histos to be activated to the member vector
 
void SetActiveHistos (std::vector< eOtherHistos > vec)
 transfer the enums for the histos to be activated to the member vector
 
void SetSpadicObject (std::shared_ptr< CbmTrdSpadic > value)
 Set the Spadic Object.
 
void SetWriteToFile (std::string filename)
 Set the output filename, automatically also sets the flag to create an output file.
 
void SetDigiOutputVec (std::vector< CbmTrdDigi > *digiOutputVec)
 Set digi outpout vector (to make it usable for correlations)
 
void SetCurrentTimesliceStartTime (std::uint64_t time)
 Set the start time of the current timeslice in ns.
 

Static Public Attributes

static const std::uint32_t kTimeplotLenghtSeconds = 600
 Constant which defines the lenght of the time axis in seconds of plots which display a quantity over time.
 

Protected Member Functions

template<class histotype >
void addHistoToMap (std::shared_ptr< TH1 > histo, std::map< histotype, std::map< std::uint32_t, std::shared_ptr< TH1 > > > *histomap, std::uint32_t moduleid, histotype kHisto)
 
template<typename THistotype >
bool checkIfHistoExists (THistotype etype, std::map< THistotype, std::map< std::uint32_t, std::shared_ptr< TH1 > > > *histomap, std::uint32_t moduleid)
 
virtual void createHistos ()
 Create the actual TH1 shared_ptrs.
 
virtual void createHisto (eDigiHistos kHisto)
 Create the actual TH1 shared_ptrs of the Digi histos.
 
virtual void createHisto (eRawHistos kHisto)
 Create the actual TH1 shared_ptrs of the Raw histos.
 
virtual void createHisto (eOtherHistos kHisto)
 Create the actual TH1 shared_ptrs of the Others histos.
 
virtual void fillHisto (CbmTrdDigi *digi, eDigiHistos kHisto, std::uint32_t moduleid, std::shared_ptr< TH1 > histo)
 Fill the given histo with the information from the digi.
 
void fillHisto (CbmTrdRawMessageSpadic *raw, eRawHistos kHisto, std::shared_ptr< TH1 > histo, CbmTrdDigi *digi)
 Fill the given histo with the information from the raw message.
 
void fillSamplesHisto (std::shared_ptr< TH1 > histo, CbmTrdRawMessageSpadic *raw)
 Fill the passed histo with the samples as function of time.
 
std::double_t getDeltaT (CbmTrdDigi *digi)
 Get the time difference between this digi and the previous one from the channel of this digi.
 
std::string getHistoName (eDigiHistos kHisto)
 Get the Histo Name for the given histo.
 
std::string getHistoName (eRawHistos kHisto)
 Get the Histo Name for the given histo.
 
std::string getHistoName (eOtherHistos kHisto)
 Get the Histo Name for the given histo.
 
std::string getHistoType (std::shared_ptr< TH1 > histo)
 Get the Histo Type, i.e. "Digi/Raw/Other", deduced from the histo name.
 
std::pair< std::uint32_t, std::uint32_t > getRowAndCol (std::uint32_t moduleid, std::uint32_t channelid)
 Get the row and column ids (potentially rotated chambers are adjusted to humand readable rotations)
 
std::float_t getSamplesStdDev (CbmTrdRawMessageSpadic *raw)
 Extract the std deviation of all samples in the message.
 
template<class histotype >
size_t writeHistosToFile (std::map< histotype, std::map< std::uint32_t, std::shared_ptr< TH1 > > > *histomap, TFile *file)
 
void fillNtCorrHisto (std::shared_ptr< TH1 > histo, CbmTrdDigi *digi)
 Fill the NeighborTrigger Checking Histogram.
 
void resetTimeplots ()
 Reset the contents of all timeplots.
 
void adjustTimeplots (std::uint64_t newtime)
 Adjust the boundaries of all timeplots to contain newtime.
 

Static Protected Member Functions

static std::string getTypeName (eDigiHistos kHisto)
 Get the Type Name for the given histo.
 
static std::string getTypeName (eRawHistos kHisto)
 Get the Type Name for the given histo.
 
static std::string getTypeName (eOtherHistos kHisto)
 Get the Type Name for the given histo.
 

Protected Attributes

std::map< eDigiHistos, std::map< std::uint32_t, std::shared_ptr< TH1 > > > fDigiHistoMap = {}
 Digi histogram pointers stored in a map together with the module id.
 
std::map< eRawHistos, std::map< std::uint32_t, std::shared_ptr< TH1 > > > fRawHistoMap = {}
 Raw histogram pointers stored in a map together with the module id.
 
std::map< eOtherHistos, std::map< std::uint32_t, std::shared_ptr< TH1 > > > fOtherHistoMap = {}
 Other histogram pointers stored in a map together with the module id.
 
std::vector< eDigiHistosfActiveDigiHistos = {}
 Enums of Digi histos to be activated.
 
std::vector< eRawHistosfActiveRawHistos = {}
 Enums of Raw histos to be activated.
 
std::vector< eOtherHistosfActiveOtherHistos = {}
 Enums of Raw histos to be activated.
 
THttpServer * fHistoServer = nullptr
 Pointer to the histogram server, in case we run the online monitoring, the pointer is automatically deduced from the run.
 
bool fDoWriteToFile = false
 Flag whether to write histos to file or not, gets activated if a output filename gets set.
 
std::string fOutfilename = ""
 File name for the output file.
 
std::vector< std::uint32_t > fModuleIdsVec = {}
 Vector with the unique module Ids.
 
std::map< std::uint32_t, std::uint8_t > fModuleOrientation = {}
 Map with the orientations of the modules. Performance helper to not go through the extraction from ParModDigi everytime.
 
std::map< std::uint32_t, std::uint8_t > fModuleNrRows = {}
 Map with the number of rows of the modules. Performance helper to not go through the extraction from ParModDigi everytime.
 
std::map< std::uint32_t, std::uint8_t > fModuleNrColumns = {}
 Map with the number of columns of the modules. Performance helper to not go through the extraction from ParModDigi everytime.
 
std::map< std::uint32_t, std::vector< size_t > > fLastDigiTimeMap = {}
 Map with the last digi time for each channel of a given module.
 
std::vector< CbmTrdDigi > * fDigiOutputVec = {}
 Variable which holds a reference to the TRD digi output vector (for correlations)
 
std::shared_ptr< CbmTrdSpadicfSpadic = nullptr
 
std::uint64_t fCurrentTimeplotStartNs = 0
 Variable which holds the start time in ns of the current time axis of plots which display a quantity over time.
 
std::uint64_t fCurrentTimesliceStartTimeNs = 0
 Variable which holds the start time in ns of the current timeslice.
 
std::uint64_t fLastRawTime = 0
 Variable which holds the time in ns of the last processed raw message.
 

Detailed Description

Definition at line 50 of file CbmTrdUnpackMonitor.h.

Member Enumeration Documentation

◆ eDigiHistos

enum class CbmTrdUnpackMonitor::eDigiHistos : size_t
strong

Enum for the predefined digi histograms.

Enumerator
kMap 
kMap_St 
kMap_Nt 
kChannel 
kChannel_St 
kChannel_Nt 
kCharge 
kCharge_St 
kCharge_Nt 
kTriggerType 
kDigiDeltaT 
kDigiNtCorr 

Definition at line 53 of file CbmTrdUnpackMonitor.h.

◆ eOtherHistos

enum class CbmTrdUnpackMonitor::eOtherHistos : size_t
strong

Enum for the predefined other histograms.

Enumerator
kSpadic_Info_Types 
kMs_Flags 
kBomRate 
kBufRate 
kBomPerRawRate 

Definition at line 86 of file CbmTrdUnpackMonitor.h.

◆ eRawHistos

enum class CbmTrdUnpackMonitor::eRawHistos : size_t
strong

Enum for the predefined raw histograms.

Enumerator
kSignalshape 
kSignalshape_St 
kSignalshape_Nt 
kMap 
kMap_St 
kMap_Nt 
kElinkId 
kSampleDistStdDev 
kSample0perChannel 
kHitType 
kRawRate 

Definition at line 70 of file CbmTrdUnpackMonitor.h.

Constructor & Destructor Documentation

◆ CbmTrdUnpackMonitor() [1/2]

CbmTrdUnpackMonitor::CbmTrdUnpackMonitor ( )

Create the Cbm Trd Unpack AlgoBase object.

Definition at line 36 of file CbmTrdUnpackMonitor.cxx.

◆ ~CbmTrdUnpackMonitor()

CbmTrdUnpackMonitor::~CbmTrdUnpackMonitor ( )
virtual

Destroy the Cbm Trd Unpack Task object.

Definition at line 38 of file CbmTrdUnpackMonitor.cxx.

◆ CbmTrdUnpackMonitor() [2/2]

CbmTrdUnpackMonitor::CbmTrdUnpackMonitor ( const CbmTrdUnpackMonitor & )
delete

Copy constructor - not implemented.

Member Function Documentation

◆ addHistoToMap()

template<class histotype >
void CbmTrdUnpackMonitor::addHistoToMap ( std::shared_ptr< TH1 > histo,
std::map< histotype, std::map< std::uint32_t, std::shared_ptr< TH1 > > > * histomap,
std::uint32_t moduleid,
histotype kHisto )
inlineprotected

◆ adjustTimeplots()

void CbmTrdUnpackMonitor::adjustTimeplots ( std::uint64_t newtime)
protected

Adjust the boundaries of all timeplots to contain newtime.

Definition at line 734 of file CbmTrdUnpackMonitor.cxx.

References fCurrentTimeplotStartNs, kTimeplotLenghtSeconds, and resetTimeplots().

Referenced by fillHisto().

◆ checkIfHistoExists()

template<typename THistotype >
bool CbmTrdUnpackMonitor::checkIfHistoExists ( THistotype etype,
std::map< THistotype, std::map< std::uint32_t, std::shared_ptr< TH1 > > > * histomap,
std::uint32_t moduleid )
inlineprotected

Definition at line 196 of file CbmTrdUnpackMonitor.h.

Referenced by addHistoToMap().

◆ createHisto() [1/3]

◆ createHisto() [2/3]

◆ createHisto() [3/3]

void CbmTrdUnpackMonitor::createHisto ( eRawHistos kHisto)
protectedvirtual

Create the actual TH1 shared_ptrs of the Raw histos.

Todo
the part below is in principle copy paste for all histo types, so we should be able to move this to a single function

Definition at line 279 of file CbmTrdUnpackMonitor.cxx.

References addHistoToMap(), fModuleIdsVec, fModuleNrColumns, fModuleNrRows, fRawHistoMap, getHistoName(), getTypeName(), kElinkId, Spadic::kGlobal, kHitType, kMap, kMap_Nt, kMap_St, kRawRate, kSample0perChannel, kSampleDistStdDev, Spadic::kSandN, kSignalshape, kSignalshape_Nt, kSignalshape_St, and kTimeplotLenghtSeconds.

◆ createHistos()

void CbmTrdUnpackMonitor::createHistos ( )
protectedvirtual

Create the actual TH1 shared_ptrs.

Definition at line 406 of file CbmTrdUnpackMonitor.cxx.

References createHisto(), fActiveDigiHistos, fActiveOtherHistos, and fActiveRawHistos.

Referenced by CbmTrdUnpackFaspMonitor::Init(), and Init().

◆ FillHisto() [1/2]

void CbmTrdUnpackMonitor::FillHisto ( fles::MicrosliceFlags flag,
std::uint32_t moduleid )

Fill the given histo with the information on the flag.

Parameters
[in]flagfles::MicrosliceFlags
[in]moduleidunique CbmAddress moduleid

Definition at line 115 of file CbmTrdUnpackMonitor.cxx.

References fOtherHistoMap, and kMs_Flags.

◆ FillHisto() [2/2]

void CbmTrdUnpackMonitor::FillHisto ( Spadic::MsInfoType type,
std::uint32_t moduleid )

Fill the given histo with the information on the info type.

Parameters
[in]typeSpadic::MsInfoType
[in]moduleidunique CbmAddress moduleid

Definition at line 66 of file CbmTrdUnpackMonitor.cxx.

References fCurrentTimeplotStartNs, fLastRawTime, fOtherHistoMap, fRawHistoMap, Spadic::kBOM, kBomPerRawRate, kBomRate, Spadic::kBUF, kBufRate, kRawRate, and kSpadic_Info_Types.

◆ fillHisto() [1/2]

void CbmTrdUnpackMonitor::fillHisto ( CbmTrdDigi * digi,
eDigiHistos kHisto,
std::uint32_t moduleid,
std::shared_ptr< TH1 > histo )
protectedvirtual

Fill the given histo with the information from the digi.

Parameters
[in]digiCbmTrdDigi
[in]kHistoHisto definition
[in]moduleidUnique module Id from which the digi came
[out]histopointer to the histo (we do not want to extract it a snd time from the map)

Reimplemented in CbmTrdUnpackFaspMonitor.

Definition at line 420 of file CbmTrdUnpackMonitor.cxx.

References fillNtCorrHisto(), CbmTrdDigi::GetAddressChannel(), CbmTrdDigi::GetCharge(), getDeltaT(), getRowAndCol(), CbmTrdDigi::GetTriggerPair(), CbmTrdDigi::GetTriggerType(), kChannel, kChannel_Nt, kChannel_St, kCharge, kCharge_Nt, kCharge_St, kDigiDeltaT, kDigiNtCorr, kMap, kMap_Nt, kMap_St, CbmTrdDigi::kMulti, CbmTrdDigi::kNeighbor, CbmTrdDigi::kSelf, and kTriggerType.

Referenced by FillHistos().

◆ fillHisto() [2/2]

void CbmTrdUnpackMonitor::fillHisto ( CbmTrdRawMessageSpadic * raw,
eRawHistos kHisto,
std::shared_ptr< TH1 > histo,
CbmTrdDigi * digi )
protected

◆ FillHistos()

void CbmTrdUnpackMonitor::FillHistos ( CbmTrdDigi * digi,
CbmTrdRawMessageSpadic * raw = nullptr )

fill the stored digi histograms

Parameters
digipointer to the digi
rawpointer to the raw msg

Definition at line 41 of file CbmTrdUnpackMonitor.cxx.

References fCurrentTimesliceStartTimeNs, fDigiHistoMap, fillHisto(), fLastRawTime, fRawHistoMap, CbmTrdDigi::GetAddressModule(), and CbmTrdRawMessageSpadic::GetTime().

◆ fillNtCorrHisto()

void CbmTrdUnpackMonitor::fillNtCorrHisto ( std::shared_ptr< TH1 > histo,
CbmTrdDigi * digi )
protected

◆ fillSamplesHisto()

void CbmTrdUnpackMonitor::fillSamplesHisto ( std::shared_ptr< TH1 > histo,
CbmTrdRawMessageSpadic * raw )
protected

Fill the passed histo with the samples as function of time.

Parameters
histo
raw

Definition at line 536 of file CbmTrdUnpackMonitor.cxx.

References CbmTrdRawMessageSpadic::GetSamples(), and size().

Referenced by fillHisto().

◆ Finish()

void CbmTrdUnpackMonitor::Finish ( )

Actions at the end of the run, e.g. write histos to file if flag is set.

Save old global file and folder pointer to avoid messing with FairRoot

(Re-)Create ROOT file to store the histos

Restore old global file and folder pointer to avoid messing with FairRoot

Definition at line 125 of file CbmTrdUnpackMonitor.cxx.

References fDigiHistoMap, fDoWriteToFile, fOtherHistoMap, fOutfilename, fRawHistoMap, and writeHistosToFile().

◆ getDeltaT()

std::double_t CbmTrdUnpackMonitor::getDeltaT ( CbmTrdDigi * digi)
protected

Get the time difference between this digi and the previous one from the channel of this digi.

Parameters
digiCbmTrdDigi
Returns
delta t [ns]

Definition at line 544 of file CbmTrdUnpackMonitor.cxx.

References fLastDigiTimeMap, fModuleNrColumns, fModuleNrRows, CbmTrdDigi::GetAddressChannel(), CbmTrdDigi::GetAddressModule(), and CbmTrdDigi::GetTime().

Referenced by fillHisto().

◆ getHistoName() [1/3]

std::string CbmTrdUnpackMonitor::getHistoName ( eDigiHistos kHisto)
protected

Get the Histo Name for the given histo.

Parameters
kHistoeDigiHistos
Returns
std::string

Definition at line 595 of file CbmTrdUnpackMonitor.cxx.

References kChannel, kChannel_Nt, kChannel_St, kCharge, kCharge_Nt, kCharge_St, kDigiDeltaT, kDigiNtCorr, kMap, kMap_Nt, kMap_St, and kTriggerType.

Referenced by CbmTrdUnpackFaspMonitor::createHisto(), createHisto(), createHisto(), and createHisto().

◆ getHistoName() [2/3]

std::string CbmTrdUnpackMonitor::getHistoName ( eOtherHistos kHisto)
protected

Get the Histo Name for the given histo.

Parameters
kHistoeOtherHistos
Returns
std::string

Definition at line 638 of file CbmTrdUnpackMonitor.cxx.

References kBomPerRawRate, kBomRate, kBufRate, kMs_Flags, and kSpadic_Info_Types.

◆ getHistoName() [3/3]

std::string CbmTrdUnpackMonitor::getHistoName ( eRawHistos kHisto)
protected

Get the Histo Name for the given histo.

Parameters
kHistoeRawHistos
Returns
std::string

Definition at line 617 of file CbmTrdUnpackMonitor.cxx.

References kElinkId, kHitType, kMap, kMap_Nt, kMap_St, kRawRate, kSample0perChannel, kSampleDistStdDev, kSignalshape, kSignalshape_Nt, and kSignalshape_St.

◆ getHistoType()

std::string CbmTrdUnpackMonitor::getHistoType ( std::shared_ptr< TH1 > histo)
protected

Get the Histo Type, i.e. "Digi/Raw/Other", deduced from the histo name.

Parameters
histo
Returns
std::string

Definition at line 653 of file CbmTrdUnpackMonitor.cxx.

Referenced by addHistoToMap().

◆ getRowAndCol()

std::pair< std::uint32_t, std::uint32_t > CbmTrdUnpackMonitor::getRowAndCol ( std::uint32_t moduleid,
std::uint32_t channelid )
protected

Get the row and column ids (potentially rotated chambers are adjusted to humand readable rotations)

Parameters
moduleid
channelid
Returns
std::pair<std::uint32_t, std::uint32_t> {row,col}

Definition at line 668 of file CbmTrdUnpackMonitor.cxx.

References fModuleNrColumns, fModuleNrRows, and fModuleOrientation.

Referenced by fillHisto().

◆ getSamplesStdDev()

std::float_t CbmTrdUnpackMonitor::getSamplesStdDev ( CbmTrdRawMessageSpadic * raw)
protected

Extract the std deviation of all samples in the message.

Definition at line 692 of file CbmTrdUnpackMonitor.cxx.

References CbmTrdRawMessageSpadic::GetNrSamples(), and CbmTrdRawMessageSpadic::GetSamples().

Referenced by fillHisto().

◆ getTypeName() [1/3]

static std::string CbmTrdUnpackMonitor::getTypeName ( eDigiHistos kHisto)
inlinestaticprotected

Get the Type Name for the given histo.

Parameters
kHistoeDigiHistos
Returns
std::string

Definition at line 266 of file CbmTrdUnpackMonitor.h.

Referenced by CbmTrdUnpackFaspMonitor::createHisto(), createHisto(), createHisto(), createHisto(), and writeHistosToFile().

◆ getTypeName() [2/3]

static std::string CbmTrdUnpackMonitor::getTypeName ( eOtherHistos kHisto)
inlinestaticprotected

Get the Type Name for the given histo.

Parameters
kHistoeOtherHistos
Returns
std::string

Definition at line 280 of file CbmTrdUnpackMonitor.h.

◆ getTypeName() [3/3]

static std::string CbmTrdUnpackMonitor::getTypeName ( eRawHistos kHisto)
inlinestaticprotected

Get the Type Name for the given histo.

Parameters
kHistoeRawHistos
Returns
std::string

Definition at line 273 of file CbmTrdUnpackMonitor.h.

◆ Init()

Bool_t CbmTrdUnpackMonitor::Init ( CbmTrdParSetDigi * digiParSet,
CbmTrdParSetAsic * asicParSet = nullptr )

Init all required parameter informations.

Save old global file and folder pointer to avoid messing with FairRoot

Restore old global file and folder pointer to avoid messing with FairRoot

Definition at line 155 of file CbmTrdUnpackMonitor.cxx.

References createHistos(), fHistoServer, fModuleIdsVec, fModuleNrColumns, fModuleNrRows, fModuleOrientation, CbmTrdParSet::GetModuleMap(), CbmTrdParSet::GetModulePar(), and CbmTrdDigi::kSPADIC.

◆ operator=()

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

Assignment operator - not implemented.

◆ resetTimeplots()

void CbmTrdUnpackMonitor::resetTimeplots ( )
protected

Reset the contents of all timeplots.

Definition at line 707 of file CbmTrdUnpackMonitor.cxx.

References fOtherHistoMap, fRawHistoMap, kBomPerRawRate, kBomRate, kBufRate, and kRawRate.

Referenced by adjustTimeplots().

◆ SetActiveHistos() [1/3]

void CbmTrdUnpackMonitor::SetActiveHistos ( std::vector< eDigiHistos > vec)
inline

transfer the enums for the histos to be activated to the member vector

Definition at line 135 of file CbmTrdUnpackMonitor.h.

References fActiveDigiHistos.

◆ SetActiveHistos() [2/3]

void CbmTrdUnpackMonitor::SetActiveHistos ( std::vector< eOtherHistos > vec)
inline

transfer the enums for the histos to be activated to the member vector

Definition at line 141 of file CbmTrdUnpackMonitor.h.

References fActiveOtherHistos.

◆ SetActiveHistos() [3/3]

void CbmTrdUnpackMonitor::SetActiveHistos ( std::vector< eRawHistos > vec)
inline

transfer the enums for the histos to be activated to the member vector

Definition at line 138 of file CbmTrdUnpackMonitor.h.

References fActiveRawHistos.

◆ SetCurrentTimesliceStartTime()

void CbmTrdUnpackMonitor::SetCurrentTimesliceStartTime ( std::uint64_t time)
inline

Set the start time of the current timeslice in ns.

Definition at line 157 of file CbmTrdUnpackMonitor.h.

References fCurrentTimesliceStartTimeNs.

◆ SetDigiOutputVec()

void CbmTrdUnpackMonitor::SetDigiOutputVec ( std::vector< CbmTrdDigi > * digiOutputVec)
inline

Set digi outpout vector (to make it usable for correlations)

Definition at line 154 of file CbmTrdUnpackMonitor.h.

References fDigiOutputVec.

◆ SetSpadicObject()

void CbmTrdUnpackMonitor::SetSpadicObject ( std::shared_ptr< CbmTrdSpadic > value)
inline

Set the Spadic Object.

Parameters
value

Definition at line 144 of file CbmTrdUnpackMonitor.h.

References fSpadic.

◆ SetWriteToFile()

void CbmTrdUnpackMonitor::SetWriteToFile ( std::string filename)
inline

Set the output filename, automatically also sets the flag to create an output file.

Parameters
filenameAbsolute path for the output file

Definition at line 147 of file CbmTrdUnpackMonitor.h.

References fDoWriteToFile, and fOutfilename.

◆ writeHistosToFile()

template<class histotype >
size_t CbmTrdUnpackMonitor::writeHistosToFile ( std::map< histotype, std::map< std::uint32_t, std::shared_ptr< TH1 > > > * histomap,
TFile * file )
inlineprotected

Definition at line 302 of file CbmTrdUnpackMonitor.h.

References getTypeName().

Referenced by CbmTrdUnpackFaspMonitor::Finish(), and Finish().

Member Data Documentation

◆ fActiveDigiHistos

std::vector<eDigiHistos> CbmTrdUnpackMonitor::fActiveDigiHistos = {}
protected

Enums of Digi histos to be activated.

Definition at line 355 of file CbmTrdUnpackMonitor.h.

Referenced by createHistos(), CbmTrdUnpackFaspMonitor::SetActiveHistos(), and SetActiveHistos().

◆ fActiveOtherHistos

std::vector<eOtherHistos> CbmTrdUnpackMonitor::fActiveOtherHistos = {}
protected

Enums of Raw histos to be activated.

Definition at line 361 of file CbmTrdUnpackMonitor.h.

Referenced by createHistos(), and SetActiveHistos().

◆ fActiveRawHistos

std::vector<eRawHistos> CbmTrdUnpackMonitor::fActiveRawHistos = {}
protected

Enums of Raw histos to be activated.

Definition at line 358 of file CbmTrdUnpackMonitor.h.

Referenced by createHistos(), CbmTrdUnpackFaspMonitor::SetActiveHistos(), and SetActiveHistos().

◆ fCurrentTimeplotStartNs

std::uint64_t CbmTrdUnpackMonitor::fCurrentTimeplotStartNs = 0
protected

Variable which holds the start time in ns of the current time axis of plots which display a quantity over time.

Definition at line 395 of file CbmTrdUnpackMonitor.h.

Referenced by adjustTimeplots(), FillHisto(), and fillHisto().

◆ fCurrentTimesliceStartTimeNs

std::uint64_t CbmTrdUnpackMonitor::fCurrentTimesliceStartTimeNs = 0
protected

Variable which holds the start time in ns of the current timeslice.

Definition at line 398 of file CbmTrdUnpackMonitor.h.

Referenced by fillHisto(), FillHistos(), and SetCurrentTimesliceStartTime().

◆ fDigiHistoMap

std::map<eDigiHistos, std::map<std::uint32_t, std::shared_ptr<TH1> > > CbmTrdUnpackMonitor::fDigiHistoMap = {}
protected

◆ fDigiOutputVec

std::vector<CbmTrdDigi>* CbmTrdUnpackMonitor::fDigiOutputVec = {}
protected

Variable which holds a reference to the TRD digi output vector (for correlations)

Definition at line 389 of file CbmTrdUnpackMonitor.h.

Referenced by fillNtCorrHisto(), and SetDigiOutputVec().

◆ fDoWriteToFile

bool CbmTrdUnpackMonitor::fDoWriteToFile = false
protected

Flag whether to write histos to file or not, gets activated if a output filename gets set.

Definition at line 367 of file CbmTrdUnpackMonitor.h.

Referenced by CbmTrdUnpackFaspMonitor::Finish(), Finish(), and SetWriteToFile().

◆ fHistoServer

THttpServer* CbmTrdUnpackMonitor::fHistoServer = nullptr
protected

Pointer to the histogram server, in case we run the online monitoring, the pointer is automatically deduced from the run.

Definition at line 364 of file CbmTrdUnpackMonitor.h.

Referenced by addHistoToMap(), CbmTrdUnpackFaspMonitor::Init(), and Init().

◆ fLastDigiTimeMap

std::map<std::uint32_t, std::vector<size_t> > CbmTrdUnpackMonitor::fLastDigiTimeMap = {}
protected

Map with the last digi time for each channel of a given module.

Definition at line 386 of file CbmTrdUnpackMonitor.h.

Referenced by CbmTrdUnpackFaspMonitor::getDeltaT(), and getDeltaT().

◆ fLastRawTime

std::uint64_t CbmTrdUnpackMonitor::fLastRawTime = 0
protected

Variable which holds the time in ns of the last processed raw message.

Definition at line 401 of file CbmTrdUnpackMonitor.h.

Referenced by FillHisto(), and FillHistos().

◆ fModuleIdsVec

std::vector<std::uint32_t> CbmTrdUnpackMonitor::fModuleIdsVec = {}
protected

Vector with the unique module Ids.

Definition at line 374 of file CbmTrdUnpackMonitor.h.

Referenced by createHisto(), createHisto(), createHisto(), and Init().

◆ fModuleNrColumns

std::map<std::uint32_t, std::uint8_t> CbmTrdUnpackMonitor::fModuleNrColumns = {}
protected

Map with the number of columns of the modules. Performance helper to not go through the extraction from ParModDigi everytime.

Definition at line 383 of file CbmTrdUnpackMonitor.h.

Referenced by createHisto(), createHisto(), getDeltaT(), getRowAndCol(), and Init().

◆ fModuleNrRows

std::map<std::uint32_t, std::uint8_t> CbmTrdUnpackMonitor::fModuleNrRows = {}
protected

Map with the number of rows of the modules. Performance helper to not go through the extraction from ParModDigi everytime.

Definition at line 380 of file CbmTrdUnpackMonitor.h.

Referenced by createHisto(), createHisto(), getDeltaT(), getRowAndCol(), and Init().

◆ fModuleOrientation

std::map<std::uint32_t, std::uint8_t> CbmTrdUnpackMonitor::fModuleOrientation = {}
protected

Map with the orientations of the modules. Performance helper to not go through the extraction from ParModDigi everytime.

Definition at line 377 of file CbmTrdUnpackMonitor.h.

Referenced by createHisto(), getRowAndCol(), and Init().

◆ fOtherHistoMap

std::map<eOtherHistos, std::map<std::uint32_t, std::shared_ptr<TH1> > > CbmTrdUnpackMonitor::fOtherHistoMap = {}
protected

Other histogram pointers stored in a map together with the module id.

Definition at line 352 of file CbmTrdUnpackMonitor.h.

Referenced by createHisto(), FillHisto(), FillHisto(), Finish(), and resetTimeplots().

◆ fOutfilename

std::string CbmTrdUnpackMonitor::fOutfilename = ""
protected

File name for the output file.

Definition at line 370 of file CbmTrdUnpackMonitor.h.

Referenced by CbmTrdUnpackFaspMonitor::Finish(), Finish(), and SetWriteToFile().

◆ fRawHistoMap

std::map<eRawHistos, std::map<std::uint32_t, std::shared_ptr<TH1> > > CbmTrdUnpackMonitor::fRawHistoMap = {}
protected

Raw histogram pointers stored in a map together with the module id.

Definition at line 349 of file CbmTrdUnpackMonitor.h.

Referenced by createHisto(), FillHisto(), FillHistos(), CbmTrdUnpackFaspMonitor::Finish(), Finish(), and resetTimeplots().

◆ fSpadic

std::shared_ptr<CbmTrdSpadic> CbmTrdUnpackMonitor::fSpadic = nullptr
protected

Definition at line 392 of file CbmTrdUnpackMonitor.h.

Referenced by createHisto(), and SetSpadicObject().

◆ kTimeplotLenghtSeconds

const std::uint32_t CbmTrdUnpackMonitor::kTimeplotLenghtSeconds = 600
static

Constant which defines the lenght of the time axis in seconds of plots which display a quantity over time.

Definition at line 96 of file CbmTrdUnpackMonitor.h.

Referenced by adjustTimeplots(), createHisto(), and createHisto().


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