PandaRoot
BSEmcDigitizerTask Class Reference

Task managing all processes required to create BSEmcDigis from BSEmcMCDeposits. More...

#include <BSEmcDigitizerTask.h>

Inheritance diagram for BSEmcDigitizerTask:
PndProcessTask PndPersistencyTask PndProcessHandler

Public Member Functions

 BSEmcDigitizerTask (const std::string &t_detectorname="Barrel", Bool_t t_storedigis=kTRUE)
 
virtual ~BSEmcDigitizerTask ()
 
void SetMCDepositBranchName (const std::string &t_depositbranchname)
 
void SetDigiBranchName (const std::string &t_digibranchname)
 
void SetWaveformBranchName (const std::string &t_waveformbranchname)
 
- Public Member Functions inherited from PndProcessTask
 PndProcessTask (const std::string &t_detectorName)
 
virtual ~PndProcessTask ()
 
virtual InitStatus Init () final
 Initialise this task. This must be called AFTER SetParContainers(), otherwise we will try to pass the parameters to the PndProcesses, while the parameter were not fetched yet. More...
 
virtual void Exec (Option_t *t_opt=nullptr)
 Prepare Task for processing of PndProcess (e.g. reset data arrays), process the PndProcesses and do cleanup during the PostProcessing. More...
 
virtual void Finish ()
 End the task, call TearDown for all PndProcesses. More...
 
- Public Member Functions inherited from PndPersistencyTask
 PndPersistencyTask ()
 
 PndPersistencyTask (const char *name, Int_t iVerbose=1)
 
virtual ~PndPersistencyTask ()
 
void SetPersistency (Bool_t val=kTRUE)
 
Bool_t GetPersistency ()
 
- Public Member Functions inherited from PndProcessHandler
 PndProcessHandler (const std::string &t_detectorname="")
 
virtual ~PndProcessHandler ()
 
void AddProcess (PndProcess *)
 Add a PndProcess of appropriate type to the list of PndProcesses to be managed. More...
 
void CallProcesses ()
 Call for all PndProcesses the PreProcess/Process/PosProcess functions. More...
 
void SetupProcesses ()
 Call for each PndProcess the SetupParameter. More...
 
const std::vector< PndProcess * > & GetProcesses ()
 
PndParameterRegisterGetParameterRegister ()
 
const PndParameterRegisterGetParameterRegister () const
 
const std::string & GetDetectorName () const
 
virtual void GetRequiredDataContainerInfo ()
 
virtual void PassDataContainersToProcesses ()
 

Protected Member Functions

virtual void PreProcessing (Option_t *)
 Do some task preparation before PndProcesses are run once per event. More...
 
virtual void PostProcessing (Option_t *)
 Do some task post clean up after PndProcesses are run once per event. More...
 
virtual void SetupDataArrays ()
 Define which data containers need to be fetched from the FairRootManager, pass the data container addresses into a simple struct to distribute the addresses to the PndProcesses so they can read and write the data to them. Needs to be implemented in the derived PndProcessTask, such as the BSEmcClusteringTask. More...
 
- Protected Member Functions inherited from PndProcessTask
void SetParContainers () final
 Fetch the FairRuntimeDb and populate the PndParameterRegister with all requested parameter. Has to be called before Init() More...
 
template<class T >
Bool_t DispatchRequest (const PndContainerRegister::PndContainerType_t &t_container, PndContainerRegister *t_register, const TString &t_defaultName)
 
TClonesArray * GetInputArray (const TString &t_branchname, const TString &t_classtype)
 
TClonesArray * GetOutputArray (const TString &t_branchname, const TString &t_classtype, const TString &t_foldername, Bool_t t_persistenxy)
 
template<class T >
Bool_t HandledRequest (const PndContainerRegister::PndContainerType_t &t_container, PndContainerRegister *t_register, const TString &t_defaultName)
 
- Protected Member Functions inherited from PndProcessHandler
virtual void SetupProcess (PndProcess *t_process)
 

Additional Inherited Members

- Protected Attributes inherited from PndProcessHandler
std::vector< PndProcess * > fProcesses {}
 
std::unique_ptr< PndParameterRegisterfParameterRegister {new PndParameterRegister}
 
std::unique_ptr< PndContainerRegisterfContainerRegister {new PndContainerRegister}
 
std::string fDetectorName {""}
 

Detailed Description

Task managing all processes required to create BSEmcDigis from BSEmcMCDeposits.

Author
Ben Salisbury salis.nosp@m.bury.nosp@m.@hisk.nosp@m.p.un.nosp@m.i-bon.nosp@m.n.de, HISKP Bonn
Date
2021-01

Definition at line 29 of file BSEmcDigitizerTask.h.

Constructor & Destructor Documentation

◆ BSEmcDigitizerTask()

BSEmcDigitizerTask::BSEmcDigitizerTask ( const std::string &  t_detectorname = "Barrel",
Bool_t  t_storedigis = kTRUE 
)

◆ ~BSEmcDigitizerTask()

virtual BSEmcDigitizerTask::~BSEmcDigitizerTask ( )
virtual

Member Function Documentation

◆ PostProcessing()

virtual void BSEmcDigitizerTask::PostProcessing ( Option_t *  )
protectedvirtual

Do some task post clean up after PndProcesses are run once per event.

Reimplemented from PndProcessTask.

Referenced by SetWaveformBranchName().

◆ PreProcessing()

virtual void BSEmcDigitizerTask::PreProcessing ( Option_t *  )
protectedvirtual

Do some task preparation before PndProcesses are run once per event.

Reimplemented from PndProcessTask.

Referenced by SetWaveformBranchName().

◆ SetDigiBranchName()

void BSEmcDigitizerTask::SetDigiBranchName ( const std::string &  t_digibranchname)
inline

Definition at line 35 of file BSEmcDigitizerTask.h.

35 { fDigiBranchname = t_digibranchname; }

◆ SetMCDepositBranchName()

void BSEmcDigitizerTask::SetMCDepositBranchName ( const std::string &  t_depositbranchname)
inline

Definition at line 34 of file BSEmcDigitizerTask.h.

34 { fMCDepositBranchname = t_depositbranchname; }

◆ SetupDataArrays()

virtual void BSEmcDigitizerTask::SetupDataArrays ( )
protectedvirtual

Define which data containers need to be fetched from the FairRootManager, pass the data container addresses into a simple struct to distribute the addresses to the PndProcesses so they can read and write the data to them. Needs to be implemented in the derived PndProcessTask, such as the BSEmcClusteringTask.

Implements PndProcessTask.

Referenced by SetWaveformBranchName().

◆ SetWaveformBranchName()

void BSEmcDigitizerTask::SetWaveformBranchName ( const std::string &  t_waveformbranchname)
inline

Definition at line 36 of file BSEmcDigitizerTask.h.

References PostProcessing(), PreProcessing(), and SetupDataArrays().

36 { fWaveformBranchname = t_waveformbranchname; }

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