13#ifndef CbmStar2019Algo_H
14#define CbmStar2019Algo_H
20#include "Timeslice.hpp"
27#include <boost/any.hpp>
42 if (
auto q = boost::any_cast<T>(&varValue))
return true;
72 virtual Bool_t
ProcessTs(
const fles::Timeslice& ts) = 0;
73 virtual Bool_t
ProcessTs(
const fles::Timeslice& ts,
size_t component) = 0;
74 virtual Bool_t
ProcessMs(
const fles::Timeslice& ts,
size_t uMsCompIdx,
size_t uMsIdx) = 0;
80 virtual std::string
GetParameter(std::string ) {
return std::string {
""}; }
128 std::vector<std::pair<TNamed*, std::string>>
130 std::vector<std::pair<TCanvas*, std::string>>
bool is_this_type(const boost::any &varValue)
Double_t fdTsCoreSizeInNs
Size of a single MS, [nanoseconds].
virtual Bool_t ProcessTs(const fles::Timeslice &ts, size_t component)=0
virtual std::string GetParameter(std::string)
virtual Bool_t ProcessTs(const fles::Timeslice &ts)=0
CbmStar2019Algo(const CbmStar2019Algo &)=delete
std::vector< CbmErrorMessage > fErrVect
void AddHistoToVector(TNamed *pointer, std::string sFolder="")
For monitor algos.
std::vector< size_t > fvMsComponentsList
Parameters related to FLES containers.
std::vector< std::pair< TNamed *, std::string > > GetHistoVector()
CbmStar2019Algo & operator=(const CbmStar2019Algo &)=delete
std::vector< T > & GetVector()
virtual TList * GetParList()=0
TList * fParCList
Parameter management.
virtual void SetParameter(std::string)
virtual Bool_t InitContainers()=0
void SetIgnoreOverlapMs(Bool_t bFlagIn=kTRUE)
Control flags.
virtual ~CbmStar2019Algo()=default
std::map< std::string, std::string > fParameterMap
For any algo.
void AddCanvasToVector(TCanvas *pointer, std::string sFolder="")
std::vector< std::pair< TNamed *, std::string > > fvpAllHistoPointers
Total size of the core MS in a TS, [nanoseconds].
std::vector< std::pair< TCanvas *, std::string > > GetCanvasVector()
Bool_t CheckParameterValidity(std::string, std::string)
Map of parameter name and type.
std::vector< CbmErrorMessage > & GetErrorVector()
void ClearVector()
For unpacker algos.
Double_t fdMsSizeInNs
/** Ignore Overlap Ms: all fuOverlapMsNb MS at the end of timeslice **/
std::vector< std::pair< TCanvas *, std::string > > fvpAllCanvasPointers
Vector of pointers to histograms + optional folder name.
virtual Bool_t ProcessMs(const fles::Timeslice &ts, size_t uMsCompIdx, size_t uMsIdx)=0
virtual Bool_t ReInitContainers()=0
std::vector< T > fDigiVect
Vector of pointers to canvases + optional folder name.
Double_t fdTsFullSizeInNs
Total size of the core MS in a TS, [nanoseconds].