PandaRoot
BSEmcOnlineFeatureExtractionProcess Class Referenceabstract

Online feature extraction process intended as baseclass. Online like, but not actually online. More...

#include <BSEmcOnlineFeatureExtractionProcess.h>

Inheritance diagram for BSEmcOnlineFeatureExtractionProcess:
PndProcess< BSEmcDigitizationData > BSEmcFwEndcapOnlineFeatureExtraction

Public Member Functions

 BSEmcOnlineFeatureExtractionProcess ()
 
virtual ~BSEmcOnlineFeatureExtractionProcess ()
 
virtual void SetDetectorName (const std::string &t_detectorName)
 Set the Detector name. Important, as most EmcParameter need to know for which detector they need to be fetched (each Emc Subdetector has its own set of parameters) More...
 
virtual void SetData (BSEmcDigitizationData *t_data)
 Pass the data container ptrs to the process, and store pointers in class members. More...
 
virtual void SetupParameters (const PndParameterRegister *t_parameterRegister)
 Fetch all parameters from the PndParameterRegister. More...
 
virtual void Process ()
 The actual data transformation (digitizing, clustering, etc.) should be defined here. More...
 
void SetStorageOfData (Bool_t t_val)
 
void SetPSA (BSEmcAbsPSA *t_psa)
 
std::vector< BSEmcDigi * > ExtractDigis (const std::vector< const BSEmcMultiWaveform *> &t_waveforms) const
 
void SetWaveformBranchName (const TString &t_branchname)
 
- Public Member Functions inherited from PndProcess< BSEmcDigitizationData >
 PndProcess ()
 
 PndProcess (const std::string &t_processname)
 
virtual ~PndProcess ()
 
const std::vector< std::string > & GetListOfRequiredParameters () const
 Get the List Of Required Parameters. More...
 
virtual void PreProcess ()
 PreProcess() is called before the actual Process() call in each event. More...
 
virtual void PostProcess ()
 Immediately after calling Process() PostProcess() is called for cleanup of internal process data, or if not needed, to end the time and memory increase measurement started by PreProcess() More...
 
virtual void TearDown ()
 Last actions at the end of the run. More...
 

Protected Member Functions

virtual Double_t GetTimeStamp (const BSEmcWaveform *t_waveform, Double_t t_digi_time) const
 
virtual BSEmcDigi::eGAIN GetGainType (const BSEmcWaveform *t_waveform, Int_t t_hit) const =0
 
 ClassDef (BSEmcOnlineFeatureExtractionProcess, 1)
 

Protected Attributes

Double_t fTimebunchCutTime {0}
 
TString fHitBranchName {""}
 
TString fWaveformBranchName {""}
 
PndOutputContainerI< BSEmcDigi > * fDigiArray {nullptr}
 
PndInputContainer< BSEmcMultiWaveformfWaveformArray {}
 
Double_t fEnergyDigiThreshold {0}
 
BSEmcAbsPSAfPSA {nullptr}
 
- Protected Attributes inherited from PndProcess< BSEmcDigitizationData >
std::vector< std::string > fParameterList
 Parameter names required by this PndProcess. Needs to be populated in derived class. More...
 
std::string fDetectorName
 Set Detector name this PndProcess transforms data for. Required for example by EMC Processes to fetch right parameters. More...
 
std::string fProcessName
 Name of current PndProcess (for debugging) More...
 
TStopwatch fTimer
 Timer to monitor Process() time. More...
 
Double_t fTotalTime
 Time taken by this Process' Process() More...
 
ProcInfo_t fProcInfo
 Helper to access cpu process Memory Info. More...
 
Long_t fLastMemSize
 

Detailed Description

Online feature extraction process intended as baseclass. Online like, but not actually online.

Derived processes only need to implement and set the PSA that should be used. Extracts Features (energy and time) from BSEmcMultiWaveform objects and creates BSEmcDigis out of those Features

Author
Ph. Mahlberg mahlb.nosp@m.erg@.nosp@m.hiskp.nosp@m..uni.nosp@m.-bonn.nosp@m..de, process changes -> Ben Salisbury salis.nosp@m.bury.nosp@m.@hisk.nosp@m.p.un.nosp@m.i-bon.nosp@m.n.de

Definition at line 39 of file BSEmcOnlineFeatureExtractionProcess.h.

Constructor & Destructor Documentation

◆ BSEmcOnlineFeatureExtractionProcess()

BSEmcOnlineFeatureExtractionProcess::BSEmcOnlineFeatureExtractionProcess ( )

◆ ~BSEmcOnlineFeatureExtractionProcess()

virtual BSEmcOnlineFeatureExtractionProcess::~BSEmcOnlineFeatureExtractionProcess ( )
virtual

Member Function Documentation

◆ ClassDef()

BSEmcOnlineFeatureExtractionProcess::ClassDef ( BSEmcOnlineFeatureExtractionProcess  ,
 
)
protected

◆ ExtractDigis()

std::vector<BSEmcDigi *> BSEmcOnlineFeatureExtractionProcess::ExtractDigis ( const std::vector< const BSEmcMultiWaveform *> &  t_waveforms) const

Referenced by SetPSA().

◆ GetGainType()

virtual BSEmcDigi::eGAIN BSEmcOnlineFeatureExtractionProcess::GetGainType ( const BSEmcWaveform t_waveform,
Int_t  t_hit 
) const
protectedpure virtual

◆ GetTimeStamp()

virtual Double_t BSEmcOnlineFeatureExtractionProcess::GetTimeStamp ( const BSEmcWaveform t_waveform,
Double_t  t_digi_time 
) const
protectedvirtual

Referenced by SetWaveformBranchName().

◆ Process()

virtual void BSEmcOnlineFeatureExtractionProcess::Process ( )
virtual

The actual data transformation (digitizing, clustering, etc.) should be defined here.

Implements PndProcess< BSEmcDigitizationData >.

◆ SetData()

virtual void BSEmcOnlineFeatureExtractionProcess::SetData ( BSEmcDigitizationData t_data)
virtual

Pass the data container ptrs to the process, and store pointers in class members.

Parameters
t_data

Implements PndProcess< BSEmcDigitizationData >.

◆ SetDetectorName()

virtual void BSEmcOnlineFeatureExtractionProcess::SetDetectorName ( const std::string &  t_detectorname)
virtual

Set the Detector name. Important, as most EmcParameter need to know for which detector they need to be fetched (each Emc Subdetector has its own set of parameters)

Parameters
t_detectorname

Reimplemented from PndProcess< BSEmcDigitizationData >.

Reimplemented in BSEmcFwEndcapOnlineFeatureExtraction.

◆ SetPSA()

void BSEmcOnlineFeatureExtractionProcess::SetPSA ( BSEmcAbsPSA t_psa)
inline

Definition at line 50 of file BSEmcOnlineFeatureExtractionProcess.h.

References ExtractDigis(), and fPSA.

◆ SetStorageOfData()

void BSEmcOnlineFeatureExtractionProcess::SetStorageOfData ( Bool_t  t_val)

◆ SetupParameters()

virtual void BSEmcOnlineFeatureExtractionProcess::SetupParameters ( const PndParameterRegister t_parameter)
virtual

Fetch all parameters from the PndParameterRegister.

Parameters
t_parameter

Implements PndProcess< BSEmcDigitizationData >.

Reimplemented in BSEmcFwEndcapOnlineFeatureExtraction.

◆ SetWaveformBranchName()

void BSEmcOnlineFeatureExtractionProcess::SetWaveformBranchName ( const TString &  t_branchname)
inline

Member Data Documentation

◆ fDigiArray

PndOutputContainerI<BSEmcDigi>* BSEmcOnlineFeatureExtractionProcess::fDigiArray {nullptr}
protected

Definition at line 63 of file BSEmcOnlineFeatureExtractionProcess.h.

◆ fEnergyDigiThreshold

Double_t BSEmcOnlineFeatureExtractionProcess::fEnergyDigiThreshold {0}
protected

Definition at line 66 of file BSEmcOnlineFeatureExtractionProcess.h.

◆ fHitBranchName

TString BSEmcOnlineFeatureExtractionProcess::fHitBranchName {""}
protected

Definition at line 60 of file BSEmcOnlineFeatureExtractionProcess.h.

◆ fPSA

BSEmcAbsPSA* BSEmcOnlineFeatureExtractionProcess::fPSA {nullptr}
protected

Definition at line 68 of file BSEmcOnlineFeatureExtractionProcess.h.

Referenced by SetPSA().

◆ fTimebunchCutTime

Double_t BSEmcOnlineFeatureExtractionProcess::fTimebunchCutTime {0}
protected

Definition at line 59 of file BSEmcOnlineFeatureExtractionProcess.h.

◆ fWaveformArray

PndInputContainer<BSEmcMultiWaveform> BSEmcOnlineFeatureExtractionProcess::fWaveformArray {}
protected

Definition at line 64 of file BSEmcOnlineFeatureExtractionProcess.h.

◆ fWaveformBranchName

TString BSEmcOnlineFeatureExtractionProcess::fWaveformBranchName {""}
protected

Definition at line 61 of file BSEmcOnlineFeatureExtractionProcess.h.

Referenced by SetWaveformBranchName().


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