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

Task class for associating digis to events. More...

#include <CbmTaskBuildEvents.h>

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

Public Member Functions

 CbmTaskBuildEvents ()
 Constructor.
 
 CbmTaskBuildEvents (const CbmTaskBuildEvents &)=delete
 Copy constructor (disabled)
 
virtual ~CbmTaskBuildEvents ()
 Destructor.
 
virtual void Exec (Option_t *opt)
 Task execution.
 
virtual void Finish ()
 Finish timeslice.
 
CbmTaskBuildEventsoperator= (const CbmTaskBuildEvents &)=delete
 Assignment operator (disabled)
 
void SetConfig (const cbm::algo::evbuild::EventBuilderConfig &config)
 Configure the event builder algorithm.
 
void SetDigiEventSelector (cbm::algo::evbuild::DigiEventSelectorConfig config)
 Activate event selector which requires a minimum number of fired layers.
 

Private Member Functions

virtual InitStatus Init ()
 Task initialisation.
 
CbmDigiTimeslice FillTimeSlice ()
 Construct a DigiTimeslice from the data in CbmDigiManager.
 
size_t GetNumDigis (const CbmDigiData &data, ECbmModuleId system)
 Number of digis for a given system.
 
 ClassDef (CbmTaskBuildEvents, 1)
 

Private Attributes

const CbmDigiTimeslicefTimeslice = nullptr
 
CbmDigiManagerfDigiMan = nullptr
 Input data (from unpacking)
 
const std::vector< double > * fTriggers = nullptr
 Input data (from simulation)
 
std::vector< CbmDigiEvent > * fEvents = nullptr
 Input data (triggers)
 
std::unique_ptr< cbm::algo::evbuild::DigiEventSelectorfSelector
 Output data (events)
 
std::unique_ptr< cbm::algo::evbuild::EventBuilderfAlgo
 Event selector.
 
std::unique_ptr< cbm::algo::evbuild::EventBuilderConfigfConfig
 Algorithm.
 
std::map< ECbmModuleId, size_t > fNumDigisTs
 Event builder configuration.
 
std::map< ECbmModuleId, size_t > fNumDigisEv
 
size_t fNumTs = 0
 
size_t fNumTriggers = 0
 
size_t fNumEvents = 0
 
double fTimeFillTs = 0.
 
double fTimeBuildEvt = 0.
 
double fTimeSelectorEvt = 0.
 
double fTimeTot = 0.
 

Detailed Description

Task class for associating digis to events.

Author
Volker Friese v.fri.nosp@m.ese@.nosp@m.gsi.d.nosp@m.e
Since
15.11.2021

Creates objects of class CbmDigiEvent and fills them with digi objects, using the algorithm EventBuilder.

TOFO: The current implementation is for STS only and with a dummy trigger list just to establish the framework integration of algorithm and data interfaces.

Definition at line 32 of file CbmTaskBuildEvents.h.

Constructor & Destructor Documentation

◆ CbmTaskBuildEvents() [1/2]

CbmTaskBuildEvents::CbmTaskBuildEvents ( )

Constructor.

Definition at line 22 of file CbmTaskBuildEvents.cxx.

◆ CbmTaskBuildEvents() [2/2]

CbmTaskBuildEvents::CbmTaskBuildEvents ( const CbmTaskBuildEvents & )
delete

Copy constructor (disabled)

◆ ~CbmTaskBuildEvents()

CbmTaskBuildEvents::~CbmTaskBuildEvents ( )
virtual

Destructor.

Definition at line 27 of file CbmTaskBuildEvents.cxx.

References fEvents.

Member Function Documentation

◆ ClassDef()

CbmTaskBuildEvents::ClassDef ( CbmTaskBuildEvents ,
1  )
private

◆ Exec()

◆ FillTimeSlice()

◆ Finish()

void CbmTaskBuildEvents::Finish ( )
virtual

◆ GetNumDigis()

size_t CbmTaskBuildEvents::GetNumDigis ( const CbmDigiData & data,
ECbmModuleId system )
private

Number of digis for a given system.

Parameters
dataCbmDigiData object (DigiTimeslice or DigiEvent)
systemSystem identifier (enum ECbmModuleId)
Returns
Number of digis for the system

Definition at line 230 of file CbmTaskBuildEvents.cxx.

References CbmDigiData::fBmon, CbmBmonDigiData::fDigis, CbmMuchDigiData::fDigis, CbmPsdDigiData::fDigis, CbmRichDigiData::fDigis, CbmStsDigiData::fDigis, CbmTofDigiData::fDigis, CbmTrdDigiData::fDigis, CbmDigiData::fMuch, CbmDigiData::fPsd, CbmDigiData::fRich, CbmDigiData::fSts, CbmDigiData::fTof, CbmDigiData::fTrd, CbmDigiData::fTrd2d, kBmon, kMuch, kPsd, kRich, kSts, kTof, kTrd, and kTrd2d.

Referenced by Exec().

◆ Init()

InitStatus CbmTaskBuildEvents::Init ( )
privatevirtual

◆ operator=()

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

Assignment operator (disabled)

◆ SetConfig()

void CbmTaskBuildEvents::SetConfig ( const cbm::algo::evbuild::EventBuilderConfig & config)
inline

Configure the event builder algorithm.

Definition at line 60 of file CbmTaskBuildEvents.h.

References fConfig.

◆ SetDigiEventSelector()

void CbmTaskBuildEvents::SetDigiEventSelector ( cbm::algo::evbuild::DigiEventSelectorConfig config)
inline

Activate event selector which requires a minimum number of fired layers.

Parameters
paramsStruct with minimum number of layers for different detectors

Definition at line 70 of file CbmTaskBuildEvents.h.

References fSelector.

Member Data Documentation

◆ fAlgo

std::unique_ptr<cbm::algo::evbuild::EventBuilder> CbmTaskBuildEvents::fAlgo
private

Event selector.

Definition at line 98 of file CbmTaskBuildEvents.h.

Referenced by Exec(), and Init().

◆ fConfig

std::unique_ptr<cbm::algo::evbuild::EventBuilderConfig> CbmTaskBuildEvents::fConfig
private

Algorithm.

Definition at line 99 of file CbmTaskBuildEvents.h.

Referenced by Exec(), FillTimeSlice(), Finish(), Init(), and SetConfig().

◆ fDigiMan

CbmDigiManager* CbmTaskBuildEvents::fDigiMan = nullptr
private

Input data (from unpacking)

Definition at line 94 of file CbmTaskBuildEvents.h.

Referenced by FillTimeSlice(), and Init().

◆ fEvents

std::vector<CbmDigiEvent>* CbmTaskBuildEvents::fEvents = nullptr
private

Input data (triggers)

Definition at line 96 of file CbmTaskBuildEvents.h.

Referenced by Exec(), Init(), and ~CbmTaskBuildEvents().

◆ fNumDigisEv

std::map<ECbmModuleId, size_t> CbmTaskBuildEvents::fNumDigisEv
private

Definition at line 103 of file CbmTaskBuildEvents.h.

Referenced by Exec(), Finish(), and Init().

◆ fNumDigisTs

std::map<ECbmModuleId, size_t> CbmTaskBuildEvents::fNumDigisTs
private

Event builder configuration.

Definition at line 102 of file CbmTaskBuildEvents.h.

Referenced by Exec(), Finish(), and Init().

◆ fNumEvents

size_t CbmTaskBuildEvents::fNumEvents = 0
private

Definition at line 106 of file CbmTaskBuildEvents.h.

Referenced by Exec(), and Finish().

◆ fNumTriggers

size_t CbmTaskBuildEvents::fNumTriggers = 0
private

Definition at line 105 of file CbmTaskBuildEvents.h.

Referenced by Exec(), and Finish().

◆ fNumTs

size_t CbmTaskBuildEvents::fNumTs = 0
private

Definition at line 104 of file CbmTaskBuildEvents.h.

Referenced by Exec(), and Finish().

◆ fSelector

std::unique_ptr<cbm::algo::evbuild::DigiEventSelector> CbmTaskBuildEvents::fSelector
private

Output data (events)

Definition at line 97 of file CbmTaskBuildEvents.h.

Referenced by Exec(), Init(), and SetDigiEventSelector().

◆ fTimeBuildEvt

double CbmTaskBuildEvents::fTimeBuildEvt = 0.
private

Definition at line 108 of file CbmTaskBuildEvents.h.

Referenced by Exec(), and Finish().

◆ fTimeFillTs

double CbmTaskBuildEvents::fTimeFillTs = 0.
private

Definition at line 107 of file CbmTaskBuildEvents.h.

Referenced by Exec(), and Finish().

◆ fTimeSelectorEvt

double CbmTaskBuildEvents::fTimeSelectorEvt = 0.
private

Definition at line 109 of file CbmTaskBuildEvents.h.

Referenced by Exec(), and Finish().

◆ fTimeslice

const CbmDigiTimeslice* CbmTaskBuildEvents::fTimeslice = nullptr
private

Definition at line 93 of file CbmTaskBuildEvents.h.

Referenced by Exec(), and Init().

◆ fTimeTot

double CbmTaskBuildEvents::fTimeTot = 0.
private

Definition at line 110 of file CbmTaskBuildEvents.h.

Referenced by Exec(), and Finish().

◆ fTriggers

const std::vector<double>* CbmTaskBuildEvents::fTriggers = nullptr
private

Input data (from simulation)

Definition at line 95 of file CbmTaskBuildEvents.h.

Referenced by Exec(), and Init().


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