CbmRoot
CbmUnpack< T > Class Template Referenceabstract

#include <CbmUnpack.h>

Public Member Functions

 CbmUnpack ()
 
virtual ~CbmUnpack ()=default
 
 CbmUnpack (const CbmUnpack &)=delete
 
CbmUnpackoperator= (const CbmUnpack &)=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 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 monitoring of internal processes. 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 AssignOutputVector (std::vector< T > &rVect)
 Output vector. More...
 
void AssignErrorVector (std::vector< CbmErrorMessage > &rVect)
 
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 = nullptr
 Parameter management. More...
 
std::vector< size_t > fvMsComponentsList
 Parameters related to FLES containers. More...
 
size_t fuNbCoreMsPerTs
 List of components used in the TS, updated internaly by the Algos. More...
 
size_t fuNbOverMsPerTs
 Number of Core MS in the TS. More...
 
size_t fuNbMsLoop
 Number of Overlap MS at the end of the TS. More...
 
Bool_t fbIgnoreOverlapMs
 Number of MS for the loop in each MS, updated internaly by the Algos to read OverMS or not. More...
 
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< CbmErrorMessage > & fErrVect = {}
 Vector of digis FIXME: check that the reference works as expected. More...
 
std::map< std::string, std::string > fParameterMap
 Vector of error messages. More...
 

Detailed Description

template<class T>
class CbmUnpack< T >

Definition at line 42 of file CbmUnpack.h.

Constructor & Destructor Documentation

◆ CbmUnpack() [1/2]

template<class T >
CbmUnpack< T >::CbmUnpack ( )
inline

Definition at line 44 of file CbmUnpack.h.

◆ ~CbmUnpack()

template<class T >
virtual CbmUnpack< T >::~CbmUnpack ( )
virtualdefault

◆ CbmUnpack() [2/2]

template<class T >
CbmUnpack< T >::CbmUnpack ( const CbmUnpack< T > &  )
delete

Member Function Documentation

◆ AddCanvasToVector()

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

Definition at line 86 of file CbmUnpack.h.

References CbmUnpack< T >::fvpAllCanvasPointers.

◆ AddHistoToVector()

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

For monitoring of internal processes.

Definition at line 79 of file CbmUnpack.h.

References CbmUnpack< T >::fvpAllHistoPointers.

◆ AssignErrorVector()

template<class T >
void CbmUnpack< T >::AssignErrorVector ( std::vector< CbmErrorMessage > &  rVect)
inline

Definition at line 96 of file CbmUnpack.h.

References CbmUnpack< T >::fErrVect.

◆ AssignOutputVector()

template<class T >
void CbmUnpack< T >::AssignOutputVector ( std::vector< T > &  rVect)
inline

Output vector.

Definition at line 95 of file CbmUnpack.h.

References CbmUnpack< T >::fDigiVect.

◆ CheckParameterValidity()

template<class T >
Bool_t CbmUnpack< T >::CheckParameterValidity ( std::string  ,
std::string   
)
inlineprotected

Map of parameter name and type.

Definition at line 151 of file CbmUnpack.h.

◆ Finish()

template<class T >
virtual void CbmUnpack< T >::Finish ( )
pure virtual

◆ GetCanvasVector()

template<class T >
std::vector<std::pair<TCanvas*, std::string> > CbmUnpack< T >::GetCanvasVector ( )
inline

Definition at line 90 of file CbmUnpack.h.

References CbmUnpack< T >::fvpAllCanvasPointers.

◆ GetHistoVector()

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

Definition at line 83 of file CbmUnpack.h.

References CbmUnpack< T >::fvpAllHistoPointers.

◆ GetParameter()

template<class T >
virtual std::string CbmUnpack< T >::GetParameter ( std::string  )
inlinevirtual

Definition at line 74 of file CbmUnpack.h.

◆ GetParList()

template<class T >
virtual TList* CbmUnpack< T >::GetParList ( )
pure virtual

◆ Init()

template<class T >
virtual Bool_t CbmUnpack< T >::Init ( )
pure virtual

◆ InitContainers()

template<class T >
virtual Bool_t CbmUnpack< T >::InitContainers ( )
pure virtual

◆ operator=()

template<class T >
CbmUnpack& CbmUnpack< T >::operator= ( const CbmUnpack< T > &  )
delete

◆ ProcessTs()

template<class T >
virtual Bool_t CbmUnpack< T >::ProcessTs ( const fles::Timeslice &  ts)
pure virtual

◆ ReInitContainers()

template<class T >
virtual Bool_t CbmUnpack< T >::ReInitContainers ( )
pure virtual

◆ Reset()

template<class T >
virtual void CbmUnpack< T >::Reset ( )
pure virtual

◆ SetIgnoreOverlapMs()

template<class T >
void CbmUnpack< T >::SetIgnoreOverlapMs ( Bool_t  bFlagIn = kTRUE)
inline

Control flags.

Definition at line 103 of file CbmUnpack.h.

References CbmUnpack< T >::fbIgnoreOverlapMs.

◆ SetParameter()

template<class T >
virtual void CbmUnpack< T >::SetParameter ( std::string  )
inlinevirtual

Definition at line 73 of file CbmUnpack.h.

Member Data Documentation

◆ fbIgnoreOverlapMs

template<class T >
Bool_t CbmUnpack< T >::fbIgnoreOverlapMs
protected

Number of MS for the loop in each MS, updated internaly by the Algos to read OverMS or not.

Definition at line 119 of file CbmUnpack.h.

Referenced by CbmUnpack< T >::SetIgnoreOverlapMs().

◆ fDigiVect

template<class T >
std::vector<T>& CbmUnpack< T >::fDigiVect
protected

Vector of pointers to canvases + optional folder name.

Output vector

Definition at line 144 of file CbmUnpack.h.

Referenced by CbmUnpack< T >::AssignOutputVector().

◆ fdMsSizeInNs

template<class T >
Double_t CbmUnpack< T >::fdMsSizeInNs
protected

Ignore Overlap Ms: all fuOverlapMsNb MS at the end of timeslice.

Definition at line 120 of file CbmUnpack.h.

◆ fdTsCoreSizeInNs

template<class T >
Double_t CbmUnpack< T >::fdTsCoreSizeInNs
protected

Size of a single MS, [nanoseconds].

Definition at line 122 of file CbmUnpack.h.

◆ fdTsFullSizeInNs

template<class T >
Double_t CbmUnpack< T >::fdTsFullSizeInNs
protected

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

Definition at line 124 of file CbmUnpack.h.

◆ fErrVect

template<class T >
std::vector<CbmErrorMessage>& CbmUnpack< T >::fErrVect = {}
protected

Vector of digis FIXME: check that the reference works as expected.

Definition at line 145 of file CbmUnpack.h.

Referenced by CbmUnpack< T >::AssignErrorVector().

◆ fParameterMap

template<class T >
std::map<std::string, std::string> CbmUnpack< T >::fParameterMap
protected

Vector of error messages.

For any algo

Definition at line 149 of file CbmUnpack.h.

◆ fParCList

template<class T >
TList* CbmUnpack< T >::fParCList = nullptr
protected

Parameter management.

Definition at line 109 of file CbmUnpack.h.

◆ fuNbCoreMsPerTs

template<class T >
size_t CbmUnpack< T >::fuNbCoreMsPerTs
protected

List of components used in the TS, updated internaly by the Algos.

Definition at line 114 of file CbmUnpack.h.

◆ fuNbMsLoop

template<class T >
size_t CbmUnpack< T >::fuNbMsLoop
protected

Number of Overlap MS at the end of the TS.

Definition at line 117 of file CbmUnpack.h.

◆ fuNbOverMsPerTs

template<class T >
size_t CbmUnpack< T >::fuNbOverMsPerTs
protected

Number of Core MS in the TS.

Definition at line 115 of file CbmUnpack.h.

◆ fvMsComponentsList

template<class T >
std::vector<size_t> CbmUnpack< T >::fvMsComponentsList
protected

Parameters related to FLES containers.

Definition at line 113 of file CbmUnpack.h.

◆ fvpAllCanvasPointers

template<class T >
std::vector<std::pair<TCanvas*, std::string> > CbmUnpack< T >::fvpAllCanvasPointers
protected

Vector of pointers to histograms + optional folder name.

Definition at line 140 of file CbmUnpack.h.

Referenced by CbmUnpack< T >::AddCanvasToVector(), and CbmUnpack< T >::GetCanvasVector().

◆ fvpAllHistoPointers

template<class T >
std::vector<std::pair<TNamed*, std::string> > CbmUnpack< T >::fvpAllHistoPointers
protected

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

For monitoring of internal processes. => 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 138 of file CbmUnpack.h.

Referenced by CbmUnpack< T >::AddHistoToVector(), and CbmUnpack< T >::GetHistoVector().


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