CbmRoot
CbmStar2019Algo< T > Class Template Referenceabstract

#include <CbmStar2019Algo.h>

Inheritance diagram for CbmStar2019Algo< T >:
[legend]

Public Member Functions

 CbmStar2019Algo ()
 
virtual ~CbmStar2019Algo ()=default
 
 CbmStar2019Algo (const CbmStar2019Algo &)=delete
 
CbmStar2019Algooperator= (const CbmStar2019Algo &)=delete
 
virtual Bool_t Init ()=0
 
virtual void Reset ()=0
 
virtual void Finish ()=0
 
virtual Bool_t ProcessTs (const fles::Timeslice &ts)=0
 
virtual Bool_t ProcessTs (const fles::Timeslice &ts, size_t component)=0
 
virtual Bool_t ProcessMs (const fles::Timeslice &ts, size_t uMsCompIdx, size_t uMsIdx)=0
 
virtual Bool_t InitContainers ()=0
 
virtual Bool_t ReInitContainers ()=0
 
virtual TList * GetParList ()=0
 
virtual void SetParameter (std::string)
 
virtual std::string GetParameter (std::string)
 
void AddHistoToVector (TNamed *pointer, std::string sFolder="")
 For monitor algos. More...
 
std::vector< std::pair< TNamed *, std::string > > GetHistoVector ()
 
void AddCanvasToVector (TCanvas *pointer, std::string sFolder="")
 
std::vector< std::pair< TCanvas *, std::string > > GetCanvasVector ()
 
void ClearVector ()
 For unpacker algos. More...
 
std::vector< T > & GetVector ()
 
void ClearErrorVector ()
 
std::vector< CbmErrorMessage > & GetErrorVector ()
 
void SetIgnoreOverlapMs (Bool_t bFlagIn=kTRUE)
 Control flags. More...
 

Protected Member Functions

Bool_t CheckParameterValidity (std::string, std::string)
 Map of parameter name and type. More...
 

Protected Attributes

TList * fParCList
 Parameter management. More...
 
std::vector< size_t > fvMsComponentsList
 Parameters related to FLES containers. More...
 
size_t fuNbCoreMsPerTs
 
size_t fuNbOverMsPerTs
 
size_t fuNbMsLoop
 
Bool_t fbIgnoreOverlapMs
 
Double_t fdMsSizeInNs
 /‍** Ignore Overlap Ms: all fuOverlapMsNb MS at the end of timeslice **‍/ More...
 
Double_t fdTsCoreSizeInNs
 Size of a single MS, [nanoseconds]. More...
 
Double_t fdTsFullSizeInNs
 Total size of the core MS in a TS, [nanoseconds]. More...
 
std::vector< std::pair< TNamed *, std::string > > fvpAllHistoPointers
 Total size of the core MS in a TS, [nanoseconds]. More...
 
std::vector< std::pair< TCanvas *, std::string > > fvpAllCanvasPointers
 Vector of pointers to histograms + optional folder name. More...
 
std::vector< T > fDigiVect
 Vector of pointers to canvases + optional folder name. More...
 
std::vector< CbmErrorMessagefErrVect = {}
 
std::map< std::string, std::string > fParameterMap
 For any algo. More...
 

Detailed Description

template<typename T>
class CbmStar2019Algo< T >

Definition at line 43 of file CbmStar2019Algo.h.

Constructor & Destructor Documentation

◆ CbmStar2019Algo() [1/2]

template<typename T >
CbmStar2019Algo< T >::CbmStar2019Algo ( )
inline

Definition at line 45 of file CbmStar2019Algo.h.

◆ ~CbmStar2019Algo()

template<typename T >
virtual CbmStar2019Algo< T >::~CbmStar2019Algo ( )
virtualdefault

◆ CbmStar2019Algo() [2/2]

template<typename T >
CbmStar2019Algo< T >::CbmStar2019Algo ( const CbmStar2019Algo< T > &  )
delete

Member Function Documentation

◆ AddCanvasToVector()

template<typename T >
void CbmStar2019Algo< T >::AddCanvasToVector ( TCanvas *  pointer,
std::string  sFolder = "" 
)
inline

Definition at line 87 of file CbmStar2019Algo.h.

◆ AddHistoToVector()

template<typename T >
void CbmStar2019Algo< T >::AddHistoToVector ( TNamed *  pointer,
std::string  sFolder = "" 
)
inline

For monitor algos.

Definition at line 80 of file CbmStar2019Algo.h.

◆ CheckParameterValidity()

template<typename T >
Bool_t CbmStar2019Algo< T >::CheckParameterValidity ( std::string  ,
std::string   
)
inlineprotected

Map of parameter name and type.

Definition at line 147 of file CbmStar2019Algo.h.

◆ ClearErrorVector()

template<typename T >
void CbmStar2019Algo< T >::ClearErrorVector ( )
inline

◆ ClearVector()

◆ Finish()

◆ GetCanvasVector()

◆ GetErrorVector()

template<typename T >
std::vector<CbmErrorMessage>& CbmStar2019Algo< T >::GetErrorVector ( )
inline

◆ GetHistoVector()

template<typename T >
std::vector<std::pair<TNamed*, std::string> > CbmStar2019Algo< T >::GetHistoVector ( )
inline

Definition at line 84 of file CbmStar2019Algo.h.

Referenced by CbmDeviceEventBuilderEtofStar2019::Finish(), CbmMcbm2018MonitorTaskPsd::Finish(), CbmMcbm2018MonitorTaskT0::Finish(), CbmMcbm2018UnpackerTaskRich::Finish(), CbmMcbm2018UnpackerTaskTof::Finish(), CbmMcbm2018UnpackerTaskPsd::Finish(), CbmMcbm2018UnpackerTaskHodo::Finish(), CbmMcbm2018UnpackerTaskMuch::Finish(), CbmMcbm2018UnpackerTaskSts::Finish(), CbmMcbm2018UnpackerTaskTrdR::Finish(), CbmDeviceEventBuilderEtofStar2019::InitContainers(), CbmMcbm2018MonitorTaskPsd::InitContainers(), CbmStar2019MonitorTask::InitContainers(), CbmMcbm2018MonitorTaskT0::InitContainers(), CbmStar2019MonitorPulserTask::InitContainers(), CbmMcbm2018MonitorTaskHodo::InitContainers(), CbmMcbm2018MonitorTaskTof::InitContainers(), CbmMcbm2018MonitorTaskTofPulser::InitContainers(), CbmMcbm2018UnpackerTaskRich::InitContainers(), CbmMcbm2018UnpackerTaskTof::InitContainers(), CbmMcbm2018UnpackerTaskPsd::InitContainers(), CbmMcbm2018UnpackerTaskMuch::InitContainers(), CbmMcbm2018UnpackerTaskSts::InitContainers(), CbmMcbm2018UnpackerTaskHodo::InitContainers(), CbmStar2019EventBuilderEtof::InitContainers(), CbmMcbm2018UnpackerTaskTrdR::InitContainers(), CbmDeviceMonitorT0::InitContainers(), CbmDeviceMonitorTof::InitContainers(), CbmMcbm2018MonitorTaskTofPulser::SaveHistograms(), CbmStar2019MonitorPulserTask::SaveHistograms(), CbmMcbm2018MonitorTaskTof::SaveHistograms(), CbmStar2019MonitorTask::SaveHistograms(), CbmMcbm2018MonitorTaskHodo::SaveHistograms(), and CbmStar2019EventBuilderEtof::SaveHistograms().

◆ GetParameter()

template<typename T >
virtual std::string CbmStar2019Algo< T >::GetParameter ( std::string  )
inlinevirtual

Definition at line 75 of file CbmStar2019Algo.h.

◆ GetParList()

◆ GetVector()

◆ Init()

◆ InitContainers()

◆ operator=()

template<typename T >
CbmStar2019Algo& CbmStar2019Algo< T >::operator= ( const CbmStar2019Algo< T > &  )
delete

◆ ProcessMs()

◆ ProcessTs() [1/2]

◆ ProcessTs() [2/2]

◆ ReInitContainers()

◆ Reset()

◆ SetIgnoreOverlapMs()

◆ SetParameter()

template<typename T >
virtual void CbmStar2019Algo< T >::SetParameter ( std::string  )
inlinevirtual

Definition at line 74 of file CbmStar2019Algo.h.

Member Data Documentation

◆ fbIgnoreOverlapMs

template<typename T >
Bool_t CbmStar2019Algo< T >::fbIgnoreOverlapMs
protected

◆ fDigiVect

template<typename T >
std::vector<T> CbmStar2019Algo< T >::fDigiVect
protected

Vector of pointers to canvases + optional folder name.

For unpacker algos

Definition at line 140 of file CbmStar2019Algo.h.

Referenced by CbmStar2019Algo< CbmTrdDigi >::ClearVector(), and CbmStar2019Algo< CbmTrdDigi >::GetVector().

◆ fdMsSizeInNs

template<typename T >
Double_t CbmStar2019Algo< T >::fdMsSizeInNs
protected

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

Definition at line 117 of file CbmStar2019Algo.h.

◆ fdTsCoreSizeInNs

template<typename T >
Double_t CbmStar2019Algo< T >::fdTsCoreSizeInNs
protected

Size of a single MS, [nanoseconds].

Definition at line 119 of file CbmStar2019Algo.h.

◆ fdTsFullSizeInNs

template<typename T >
Double_t CbmStar2019Algo< T >::fdTsFullSizeInNs
protected

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

Definition at line 121 of file CbmStar2019Algo.h.

◆ fErrVect

template<typename T >
std::vector<CbmErrorMessage> CbmStar2019Algo< T >::fErrVect = {}
protected

◆ fParameterMap

template<typename T >
std::map<std::string, std::string> CbmStar2019Algo< T >::fParameterMap
protected

For any algo.

Definition at line 145 of file CbmStar2019Algo.h.

◆ fParCList

template<typename T >
TList* CbmStar2019Algo< T >::fParCList
protected

Parameter management.

Definition at line 108 of file CbmStar2019Algo.h.

◆ fuNbCoreMsPerTs

template<typename T >
size_t CbmStar2019Algo< T >::fuNbCoreMsPerTs
protected

Definition at line 112 of file CbmStar2019Algo.h.

◆ fuNbMsLoop

template<typename T >
size_t CbmStar2019Algo< T >::fuNbMsLoop
protected

Definition at line 114 of file CbmStar2019Algo.h.

◆ fuNbOverMsPerTs

template<typename T >
size_t CbmStar2019Algo< T >::fuNbOverMsPerTs
protected

Definition at line 113 of file CbmStar2019Algo.h.

◆ fvMsComponentsList

template<typename T >
std::vector<size_t> CbmStar2019Algo< T >::fvMsComponentsList
protected

Parameters related to FLES containers.

Definition at line 111 of file CbmStar2019Algo.h.

◆ fvpAllCanvasPointers

template<typename T >
std::vector<std::pair<TCanvas*, std::string> > CbmStar2019Algo< T >::fvpAllCanvasPointers
protected

Vector of pointers to histograms + optional folder name.

Definition at line 137 of file CbmStar2019Algo.h.

Referenced by CbmStar2019Algo< CbmTrdDigi >::AddCanvasToVector(), and CbmStar2019Algo< CbmTrdDigi >::GetCanvasVector().

◆ fvpAllHistoPointers

template<typename T >
std::vector<std::pair<TNamed*, std::string> > CbmStar2019Algo< T >::fvpAllHistoPointers
protected

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

For monitor algos => Pointers should be filled with TH1*, TH2*, TProfile*, ... ==> To check if object N is of type T, use "T ObjectPointer = dynamic_cast<T>( fvpAllHistoPointers[N].first );" and check for nullptr ==> To get back the original class name use "fvpAllHistoPointers[N].first->ClassName()" which returns a const char * (e.g. "TH1I") ===> Usage example with feeding a THttpServer: ===> #include "TH2.h" ===> std::string sClassName = vHistos[ uHisto ].first.ClassName(); ===> if( !strncmp( sClassName, "TH1", 3 ) ) ===> server->Register( vHistos[ uHisto ].second.data(), dynamic_cast< TH1 * >(vHistos[ uHisto ].first) ); ===> else if( !strncmp( sClassName, "TH2", 3 ) ) ===> server->Register( vHistos[ uHisto ].second.data(), dynamic_cast< TH2 * >(vHistos[ uHisto ].first) );

Definition at line 135 of file CbmStar2019Algo.h.

Referenced by CbmStar2019Algo< CbmTrdDigi >::AddHistoToVector(), and CbmStar2019Algo< CbmTrdDigi >::GetHistoVector().


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