CbmRoot
Loading...
Searching...
No Matches
cbm::algo::evbuild::EventbuildChain Class Reference

Steering class for event building from digi timeslices. More...

#include <EventbuildChain.h>

Inheritance diagram for cbm::algo::evbuild::EventbuildChain:
[legend]
Collaboration diagram for cbm::algo::evbuild::EventbuildChain:
[legend]

Public Types

using ResultType = std::pair<std::vector<DigiEvent>, EventbuildChainMonitorData>
 

Public Member Functions

 EventbuildChain (const Config &config, std::shared_ptr< HistogramSender > sender=nullptr)
 Constructor.
 
 ~EventbuildChain ()
 Destructor.
 
ResultType Run (const DigiData &, const RecoResults &)
 Execution.
 
void Status () const
 Status info to logger.
 
void RegisterSetup (std::shared_ptr< RecoSetup > pSetup)
 Registers tracking setup.
 
void SetV0TriggerQa (std::shared_ptr< V0TriggerQa > pQa)
 Sets V0 trigger QA.
 
const ChainContextGetContext ()
 
void SetContext (const ChainContext *ctx)
 
const OptionsOpts () const
 
const RecoParamsParams () const
 
bool HasMonitor () const
 
MonitorGetMonitor () const
 

Private Member Functions

std::vector< double > GetDigiTimes (const DigiData &timeslice, ECbmModuleId system)
 Extract digi times from CbmDigiTimeslice.
 

Private Attributes

Config fConfig
 Global configuration.
 
ECbmModuleId fTriggerDet = ECbmModuleId::kNotExist
 Trigger detector.
 
TimeClusterTrigger fDigiMultTrigger
 Digi multiplicity trigger algorithm.
 
HitMultTrigger fHitMultTrigger
 Hit multiplicity trigger algorithm.
 
V0Trigger fV0Trigger
 V0 trigger algorithm.
 
EventBuilder fBuilder
 Event builder algorithm.
 
DigiEventSelector fSelector
 Event selector algorithm.
 
DigiEventQa fQa
 Event QA algorithm.
 
std::shared_ptr< HistogramSenderfSender
 Histogram sender.
 
const ChainContextfContext = nullptr
 

Detailed Description

Steering class for event building from digi timeslices.

Author
Volker Friese v.fri.nosp@m.ese@.nosp@m.gsi.d.nosp@m.e
Since
11 July 2023

Constructs a vector of CbmDigiEvents from a CbmDigiTimeslice. Uses the algorithms

Definition at line 47 of file EventbuildChain.h.

Member Typedef Documentation

◆ ResultType

Constructor & Destructor Documentation

◆ EventbuildChain()

EventbuildChain::EventbuildChain ( const Config & config,
std::shared_ptr< HistogramSender > sender = nullptr )

Constructor.

FIXME: based on JdC question, decide whether config re-emitted on each iteration instead of only at startup? => Header for multi-part message with Configuration + data => Format: std::pair< Nb histogram configs, Nb canvas configs >

=> Histograms configuration = destination folder in http browser, mandatory but can be empty (= root folder) => 1 ZMQ message per histogram (= 1 part) => If no (new) histograms declared (e.g. new canvas declaration), has to be en empty message + 0 in the header

=> Canvas configuration => 1 ZMQ message per canvas (= 1 part) => If no (new) canvas declared (e.g. only histos declaration), has to be en empty message + 0 in the header

=> (empty) Histograms serialization and emission to close multi-part message

Definition at line 20 of file EventbuildChain.cxx.

References fBuilder, fConfig, fDigiMultTrigger, fHitMultTrigger, fQa, fSelector, fSender, fTriggerDet, fV0Trigger, and Status().

◆ ~EventbuildChain()

EventbuildChain::~EventbuildChain ( )

Destructor.

Definition at line 63 of file EventbuildChain.cxx.

Member Function Documentation

◆ GetContext()

const ChainContext * cbm::algo::SubChain::GetContext ( )
inlineinherited

Definition at line 16 of file SubChain.h.

References fContext.

◆ GetDigiTimes()

std::vector< double > EventbuildChain::GetDigiTimes ( const DigiData & timeslice,
ECbmModuleId system )
private

◆ GetMonitor()

◆ HasMonitor()

◆ Opts()

◆ Params()

const RecoParams & cbm::algo::SubChain::Params ( ) const
inlineinherited

◆ RegisterSetup()

void cbm::algo::evbuild::EventbuildChain::RegisterSetup ( std::shared_ptr< RecoSetup > pSetup)
inline

Registers tracking setup.

Definition at line 65 of file EventbuildChain.h.

References fSelector.

◆ Run()

◆ SetContext()

void cbm::algo::SubChain::SetContext ( const ChainContext * ctx)
inlineinherited

Definition at line 18 of file SubChain.h.

References fContext.

Referenced by cbm::algo::Reco::Init().

◆ SetV0TriggerQa()

void cbm::algo::evbuild::EventbuildChain::SetV0TriggerQa ( std::shared_ptr< V0TriggerQa > pQa)
inline

Sets V0 trigger QA.

Parameters
pQaQa module

Definition at line 70 of file EventbuildChain.h.

References fV0Trigger.

◆ Status()

void EventbuildChain::Status ( ) const

Status info to logger.

Definition at line 128 of file EventbuildChain.cxx.

References fBuilder, fConfig, fDigiMultTrigger, fHitMultTrigger, fQa, fSelector, fTriggerDet, fV0Trigger, and L_.

Referenced by EventbuildChain().

Member Data Documentation

◆ fBuilder

EventBuilder cbm::algo::evbuild::EventbuildChain::fBuilder
private

Event builder algorithm.

Definition at line 78 of file EventbuildChain.h.

Referenced by EventbuildChain(), Run(), and Status().

◆ fConfig

Config cbm::algo::evbuild::EventbuildChain::fConfig
private

Global configuration.

Definition at line 73 of file EventbuildChain.h.

Referenced by EventbuildChain(), Run(), and Status().

◆ fContext

const ChainContext* cbm::algo::SubChain::fContext = nullptr
privateinherited

Definition at line 34 of file SubChain.h.

Referenced by GetContext(), GetMonitor(), HasMonitor(), Opts(), Params(), and SetContext().

◆ fDigiMultTrigger

TimeClusterTrigger cbm::algo::evbuild::EventbuildChain::fDigiMultTrigger
private

Digi multiplicity trigger algorithm.

Definition at line 75 of file EventbuildChain.h.

Referenced by EventbuildChain(), Run(), and Status().

◆ fHitMultTrigger

HitMultTrigger cbm::algo::evbuild::EventbuildChain::fHitMultTrigger
private

Hit multiplicity trigger algorithm.

Definition at line 76 of file EventbuildChain.h.

Referenced by EventbuildChain(), Run(), and Status().

◆ fQa

DigiEventQa cbm::algo::evbuild::EventbuildChain::fQa
private

Event QA algorithm.

Definition at line 80 of file EventbuildChain.h.

Referenced by EventbuildChain(), Run(), and Status().

◆ fSelector

DigiEventSelector cbm::algo::evbuild::EventbuildChain::fSelector
private

Event selector algorithm.

Definition at line 79 of file EventbuildChain.h.

Referenced by EventbuildChain(), RegisterSetup(), Run(), and Status().

◆ fSender

std::shared_ptr<HistogramSender> cbm::algo::evbuild::EventbuildChain::fSender
private

Histogram sender.

Definition at line 81 of file EventbuildChain.h.

Referenced by EventbuildChain(), and Run().

◆ fTriggerDet

ECbmModuleId cbm::algo::evbuild::EventbuildChain::fTriggerDet = ECbmModuleId::kNotExist
private

Trigger detector.

Definition at line 74 of file EventbuildChain.h.

Referenced by EventbuildChain(), Run(), and Status().

◆ fV0Trigger

V0Trigger cbm::algo::evbuild::EventbuildChain::fV0Trigger
private

V0 trigger algorithm.

Definition at line 77 of file EventbuildChain.h.

Referenced by EventbuildChain(), Run(), SetV0TriggerQa(), and Status().


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