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

#include <CbmTrdUnpackFaspMonitor.h>

Inheritance diagram for CbmTrdUnpackFaspMonitor:
[legend]
Collaboration diagram for CbmTrdUnpackFaspMonitor:
[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

 CbmTrdUnpackFaspMonitor ()
 Create the Cbm Trd Unpack AlgoBase object.
 
virtual ~CbmTrdUnpackFaspMonitor ()
 Destroy the Cbm Trd Unpack Task object.
 
 CbmTrdUnpackFaspMonitor (const CbmTrdUnpackFaspMonitor &)=delete
 Copy constructor - not implemented.
 
CbmTrdUnpackFaspMonitoroperator= (const CbmTrdUnpackFaspMonitor &)=delete
 Assignment operator - not implemented.
 
void FillHistos (CbmTrdDigi *digi)
 fill the stored digi histograms
 
void Finish ()
 Actions at the end of the run, e.g. write histos to file if flag is set.
 
Bool_t Init ()
 Init all required parameter informations.
 
void MapMaskedChannels (const CbmTrdParSetAsic *asics)
 Special call for monitoring the masked channel map.
 
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 FillHistos (CbmTrdDigi *digi, CbmTrdRawMessageSpadic *raw=nullptr)
 fill the stored digi histograms
 
void FillHisto (Spadic::MsInfoType type, uint32_t moduleid)
 Fill the given histo with the information on the info type.
 
void FillHisto (fles::MicrosliceFlags flag, uint32_t moduleid)
 Fill the given histo with the information on the flag.
 
Bool_t Init (CbmTrdParSetDigi *digiParSet, CbmTrdParSetAsic *asicParSet=nullptr)
 Init all required parameter informations.
 
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 (uint64_t time)
 Set the start time of the current timeslice in ns.
 

Static Public Attributes

static const 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

void addParam (uint32_t madd, const CbmTrdParModAsic *asics)
 Init module and link asics properties.
 
void addParam (uint32_t madd, CbmTrdParModDigi *pp)
 Init module pad-plane parameters.
 
void createHisto (eDigiHistos kHisto)
 Create the actual TH1 shared_ptrs of the Digi histos.
 
virtual void fillHisto (CbmTrdDigi *digi, eDigiHistos kHisto, uint32_t moduleid, std::shared_ptr< TH1 > histo)
 Fill the given histo with the information from the digi. Reimplement from CbmTrdUnpackMonitor.
 
virtual uint64_t getDeltaT (uint32_t modid, int32_t ch=-1, uint64_t daqt=0)
 Paralell implementation of the omonime function from CbmTrdUnpackMonitor for the case of FASP digis. The default values of the input parameters mark missing information.
 
template<class histotype>
void addHistoToMap (std::shared_ptr< TH1 > histo, std::map< histotype, std::map< uint32_t, std::shared_ptr< TH1 > > > *histomap, uint32_t moduleid, histotype kHisto)
 
template<typename THistotype>
bool checkIfHistoExists (THistotype etype, std::map< THistotype, std::map< uint32_t, std::shared_ptr< TH1 > > > *histomap, uint32_t moduleid)
 
virtual void createHistos ()
 Create the actual TH1 shared_ptrs.
 
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.
 
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< uint32_t, uint32_t > getRowAndCol (uint32_t moduleid, 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< 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 (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< uint32_t, std::shared_ptr< TH1 > > > fDigiHistoMap = {}
 Digi histogram pointers stored in a map together with the module id.
 
std::map< eRawHistos, std::map< uint32_t, std::shared_ptr< TH1 > > > fRawHistoMap = {}
 Raw histogram pointers stored in a map together with the module id.
 
std::map< eOtherHistos, std::map< 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< uint32_t > fModuleIdsVec = {}
 Vector with the unique module Ids.
 
std::map< uint32_t, uint8_t > fModuleOrientation = {}
 Map with the orientations of the modules. Performance helper to not go through the extraction from ParModDigi everytime.
 
std::map< uint32_t, 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< uint32_t, 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< 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
 
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.
 
uint64_t fCurrentTimesliceStartTimeNs = 0
 Variable which holds the start time in ns of the current timeslice.
 
uint64_t fLastRawTime = 0
 Variable which holds the time in ns of the last processed raw message.
 

Private Attributes

const double fFaspInvClk = 1.e6 / CbmTrdDigi::Clk(CbmTrdDigi::eCbmTrdAsicType::kFASP)
 save 1/clk for the FASP FEE in kHz
 
std::map< uint32_t, std::tuple< std::vector< int32_t >, uint8_t, uint8_t > > fModuleDef = {}
 Map of definitions for each module under monitoring : std::get<0> : pad to FASP channel mapping std::get<1> : no of pad columns in the module std::get<2> : no of pad rows in the module.
 

Friends

class CbmTrdUnpackFaspAlgo
 

Detailed Description

Definition at line 47 of file CbmTrdUnpackFaspMonitor.h.

Member Enumeration Documentation

◆ eDigiHistos

enum class CbmTrdUnpackMonitor::eDigiHistos : size_t
stronginherited

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
stronginherited

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
stronginherited

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

◆ CbmTrdUnpackFaspMonitor() [1/2]

CbmTrdUnpackFaspMonitor::CbmTrdUnpackFaspMonitor ( )

Create the Cbm Trd Unpack AlgoBase object.

Definition at line 35 of file CbmTrdUnpackFaspMonitor.cxx.

Referenced by CbmTrdUnpackFaspMonitor(), and operator=().

◆ ~CbmTrdUnpackFaspMonitor()

CbmTrdUnpackFaspMonitor::~CbmTrdUnpackFaspMonitor ( )
virtual

Destroy the Cbm Trd Unpack Task object.

Definition at line 38 of file CbmTrdUnpackFaspMonitor.cxx.

◆ CbmTrdUnpackFaspMonitor() [2/2]

CbmTrdUnpackFaspMonitor::CbmTrdUnpackFaspMonitor ( const CbmTrdUnpackFaspMonitor & )
delete

Copy constructor - not implemented.

References CbmTrdUnpackFaspMonitor().

Member Function Documentation

◆ addHistoToMap()

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

◆ addParam() [1/2]

void CbmTrdUnpackFaspMonitor::addParam ( uint32_t madd,
CbmTrdParModDigi * pp )
protected

Init module pad-plane parameters.

Parameters
maddmodule address to be checked
digispad-plane properties for the current module

Definition at line 175 of file CbmTrdUnpackFaspMonitor.cxx.

References fModuleDef, CbmTrdParModDigi::GetNofColumns(), and CbmTrdParModDigi::GetNofRows().

◆ addParam() [2/2]

void CbmTrdUnpackFaspMonitor::addParam ( uint32_t madd,
const CbmTrdParModAsic * asics )
protected

Init module and link asics properties.

Parameters
maddmodule address to be added
asicsasic properties for the current module

Definition at line 151 of file CbmTrdUnpackFaspMonitor.cxx.

References fModuleDef, CbmTrdParModAsic::GetAsicAddresses(), CbmTrdParModAsic::GetAsicPar(), CbmTrdParAsic::GetChannelAddresses(), NFASPCH, and NFASPMOD.

◆ adjustTimeplots()

void CbmTrdUnpackMonitor::adjustTimeplots ( uint64_t newtime)
protectedinherited

Adjust the boundaries of all timeplots to contain newtime.

Definition at line 731 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< uint32_t, std::shared_ptr< TH1 > > > * histomap,
uint32_t moduleid )
inlineprotectedinherited

Definition at line 196 of file CbmTrdUnpackMonitor.h.

Referenced by addHistoToMap().

◆ createHisto() [1/3]

◆ createHisto() [2/3]

void CbmTrdUnpackMonitor::createHisto ( eOtherHistos kHisto)
protectedvirtualinherited

◆ createHisto() [3/3]

void CbmTrdUnpackMonitor::createHisto ( eRawHistos kHisto)
protectedvirtualinherited

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 ( )
protectedvirtualinherited

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,
uint32_t moduleid )
inherited

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,
uint32_t moduleid )
inherited

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 CbmTrdUnpackFaspMonitor::fillHisto ( CbmTrdDigi * digi,
eDigiHistos kHisto,
uint32_t moduleid,
std::shared_ptr< TH1 > histo )
protectedvirtual

Fill the given histo with the information from the digi. Reimplement from CbmTrdUnpackMonitor.

Parameters
[in]digiCbmTrdDigi
[in]kHistoHisto definition
[in]moduleidUnique module Id from which the digi came
[out]histopointer to the histo

Reimplemented from CbmTrdUnpackMonitor.

Definition at line 257 of file CbmTrdUnpackFaspMonitor.cxx.

References fFaspInvClk, fModuleDef, CbmTrdDigi::GetAddressChannel(), CbmTrdDigi::GetCharge(), getDeltaT(), CbmTrdDigi::GetTimeDAQ(), CbmTrdUnpackMonitor::kChannel, CbmTrdUnpackMonitor::kCharge, CbmTrdUnpackMonitor::kDigiDeltaT, and CbmTrdUnpackMonitor::kMap.

Referenced by FillHistos().

◆ fillHisto() [2/2]

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

◆ FillHistos() [1/2]

void CbmTrdUnpackFaspMonitor::FillHistos ( CbmTrdDigi * digi)

fill the stored digi histograms

Parameters
digipointer to the digi
rawpointer to the raw msg

Definition at line 41 of file CbmTrdUnpackFaspMonitor.cxx.

References CbmTrdUnpackMonitor::fDigiHistoMap, fillHisto(), and CbmTrdDigi::GetAddressModule().

◆ FillHistos() [2/2]

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

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 )
protectedinherited

◆ fillSamplesHisto()

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

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

Parameters
histo
raw

Definition at line 534 of file CbmTrdUnpackMonitor.cxx.

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

Referenced by fillHisto().

◆ Finish()

void CbmTrdUnpackFaspMonitor::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 52 of file CbmTrdUnpackFaspMonitor.cxx.

References CbmTrdUnpackMonitor::fDigiHistoMap, CbmTrdUnpackMonitor::fDoWriteToFile, CbmTrdUnpackMonitor::fOutfilename, CbmTrdUnpackMonitor::fRawHistoMap, and CbmTrdUnpackMonitor::writeHistosToFile().

◆ getDeltaT() [1/2]

uint64_t CbmTrdUnpackFaspMonitor::getDeltaT ( uint32_t modid,
int32_t ch = -1,
uint64_t daqt = 0 )
protectedvirtual

Paralell implementation of the omonime function from CbmTrdUnpackMonitor for the case of FASP digis. The default values of the input parameters mark missing information.

Parameters
[in]modidmodule address
[in]chmodule-wise channel address of the signal
[in]daqtDAQ time [clk] for the "ch" paired signal
Returns

Definition at line 310 of file CbmTrdUnpackFaspMonitor.cxx.

References CbmTrdUnpackMonitor::fLastDigiTimeMap, and fModuleDef.

Referenced by fillHisto().

◆ getDeltaT() [2/2]

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

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 542 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)
protectedinherited

Get the Histo Name for the given histo.

Parameters
kHistoeDigiHistos
Returns
std::string

Definition at line 593 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)
protectedinherited

Get the Histo Name for the given histo.

Parameters
kHistoeOtherHistos
Returns
std::string

Definition at line 636 of file CbmTrdUnpackMonitor.cxx.

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

◆ getHistoName() [3/3]

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

Get the Histo Name for the given histo.

Parameters
kHistoeRawHistos
Returns
std::string

Definition at line 615 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)
protectedinherited

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

Parameters
histo
Returns
std::string

Definition at line 651 of file CbmTrdUnpackMonitor.cxx.

Referenced by addHistoToMap().

◆ getRowAndCol()

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

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

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

Definition at line 666 of file CbmTrdUnpackMonitor.cxx.

References fModuleNrColumns, fModuleNrRows, and fModuleOrientation.

Referenced by fillHisto().

◆ getSamplesStdDev()

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

Extract the std deviation of all samples in the message.

Definition at line 689 of file CbmTrdUnpackMonitor.cxx.

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

Referenced by fillHisto().

◆ getTypeName() [1/3]

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

Get the Type Name for the given histo.

Parameters
kHistoeDigiHistos
Returns
std::string

Definition at line 265 of file CbmTrdUnpackMonitor.h.

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

◆ getTypeName() [2/3]

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

Get the Type Name for the given histo.

Parameters
kHistoeOtherHistos
Returns
std::string

Definition at line 279 of file CbmTrdUnpackMonitor.h.

◆ getTypeName() [3/3]

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

Get the Type Name for the given histo.

Parameters
kHistoeRawHistos
Returns
std::string

Definition at line 272 of file CbmTrdUnpackMonitor.h.

◆ Init() [1/2]

Bool_t CbmTrdUnpackFaspMonitor::Init ( )

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 81 of file CbmTrdUnpackFaspMonitor.cxx.

References CbmTrdUnpackMonitor::createHistos(), CbmTrdUnpackMonitor::fHistoServer, and fModuleDef.

◆ Init() [2/2]

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

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.

◆ MapMaskedChannels()

◆ operator=()

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

Assignment operator - not implemented.

References CbmTrdUnpackFaspMonitor().

◆ resetTimeplots()

void CbmTrdUnpackMonitor::resetTimeplots ( )
protectedinherited

Reset the contents of all timeplots.

Definition at line 704 of file CbmTrdUnpackMonitor.cxx.

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

Referenced by adjustTimeplots().

◆ SetActiveHistos() [1/3]

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

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

Definition at line 77 of file CbmTrdUnpackFaspMonitor.h.

References CbmTrdUnpackMonitor::fActiveDigiHistos.

◆ SetActiveHistos() [2/3]

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

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

Definition at line 80 of file CbmTrdUnpackFaspMonitor.h.

References CbmTrdUnpackMonitor::fActiveRawHistos.

◆ SetActiveHistos() [3/3]

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

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

Definition at line 141 of file CbmTrdUnpackMonitor.h.

References fActiveOtherHistos.

◆ SetCurrentTimesliceStartTime()

void CbmTrdUnpackMonitor::SetCurrentTimesliceStartTime ( uint64_t time)
inlineinherited

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)
inlineinherited

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)
inlineinherited

Set the Spadic Object.

Parameters
value

Definition at line 144 of file CbmTrdUnpackMonitor.h.

References fSpadic.

◆ SetWriteToFile()

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

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< uint32_t, std::shared_ptr< TH1 > > > * histomap,
TFile * file )
inlineprotectedinherited

Definition at line 301 of file CbmTrdUnpackMonitor.h.

References getTypeName().

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

Friends And Related Symbol Documentation

◆ CbmTrdUnpackFaspAlgo

friend class CbmTrdUnpackFaspAlgo
friend

Definition at line 48 of file CbmTrdUnpackFaspMonitor.h.

References CbmTrdUnpackFaspAlgo.

Referenced by CbmTrdUnpackFaspAlgo.

Member Data Documentation

◆ fActiveDigiHistos

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

Enums of Digi histos to be activated.

Definition at line 354 of file CbmTrdUnpackMonitor.h.

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

◆ fActiveOtherHistos

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

Enums of Raw histos to be activated.

Definition at line 360 of file CbmTrdUnpackMonitor.h.

Referenced by createHistos(), and SetActiveHistos().

◆ fActiveRawHistos

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

Enums of Raw histos to be activated.

Definition at line 357 of file CbmTrdUnpackMonitor.h.

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

◆ fCurrentTimeplotStartNs

uint64_t CbmTrdUnpackMonitor::fCurrentTimeplotStartNs = 0
protectedinherited

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

Definition at line 394 of file CbmTrdUnpackMonitor.h.

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

◆ fCurrentTimesliceStartTimeNs

uint64_t CbmTrdUnpackMonitor::fCurrentTimesliceStartTimeNs = 0
protectedinherited

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

Definition at line 397 of file CbmTrdUnpackMonitor.h.

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

◆ fDigiHistoMap

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

◆ fDigiOutputVec

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

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

Definition at line 388 of file CbmTrdUnpackMonitor.h.

Referenced by fillNtCorrHisto(), and SetDigiOutputVec().

◆ fDoWriteToFile

bool CbmTrdUnpackMonitor::fDoWriteToFile = false
protectedinherited

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

Definition at line 366 of file CbmTrdUnpackMonitor.h.

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

◆ fFaspInvClk

const double CbmTrdUnpackFaspMonitor::fFaspInvClk = 1.e6 / CbmTrdDigi::Clk(CbmTrdDigi::eCbmTrdAsicType::kFASP)
private

save 1/clk for the FASP FEE in kHz

Definition at line 114 of file CbmTrdUnpackFaspMonitor.h.

Referenced by fillHisto().

◆ fHistoServer

THttpServer* CbmTrdUnpackMonitor::fHistoServer = nullptr
protectedinherited

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

Definition at line 363 of file CbmTrdUnpackMonitor.h.

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

◆ fLastDigiTimeMap

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

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

Definition at line 385 of file CbmTrdUnpackMonitor.h.

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

◆ fLastRawTime

uint64_t CbmTrdUnpackMonitor::fLastRawTime = 0
protectedinherited

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

Definition at line 400 of file CbmTrdUnpackMonitor.h.

Referenced by FillHisto(), and FillHistos().

◆ fModuleDef

std::map<uint32_t, std::tuple<std::vector<int32_t>, uint8_t, uint8_t> > CbmTrdUnpackFaspMonitor::fModuleDef = {}
private

Map of definitions for each module under monitoring : std::get<0> : pad to FASP channel mapping std::get<1> : no of pad columns in the module std::get<2> : no of pad rows in the module.

Definition at line 120 of file CbmTrdUnpackFaspMonitor.h.

Referenced by addParam(), addParam(), createHisto(), fillHisto(), getDeltaT(), Init(), and MapMaskedChannels().

◆ fModuleIdsVec

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

Vector with the unique module Ids.

Definition at line 373 of file CbmTrdUnpackMonitor.h.

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

◆ fModuleNrColumns

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

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

Definition at line 382 of file CbmTrdUnpackMonitor.h.

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

◆ fModuleNrRows

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

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

Definition at line 379 of file CbmTrdUnpackMonitor.h.

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

◆ fModuleOrientation

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

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

Definition at line 376 of file CbmTrdUnpackMonitor.h.

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

◆ fOtherHistoMap

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

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

Definition at line 351 of file CbmTrdUnpackMonitor.h.

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

◆ fOutfilename

std::string CbmTrdUnpackMonitor::fOutfilename = ""
protectedinherited

File name for the output file.

Definition at line 369 of file CbmTrdUnpackMonitor.h.

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

◆ fRawHistoMap

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

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

Definition at line 348 of file CbmTrdUnpackMonitor.h.

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

◆ fSpadic

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

Definition at line 391 of file CbmTrdUnpackMonitor.h.

Referenced by createHisto(), and SetSpadicObject().

◆ kTimeplotLenghtSeconds

const uint32_t CbmTrdUnpackMonitor::kTimeplotLenghtSeconds = 600
staticinherited

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: