PandaRoot
BSEmcFwEndcapCosmicWaveformGeneration Class Reference

Process to create Cosmic Waveforms out of BSEmcMCDeposits based on BSEmcFwEndcapDigi. More...

#include <BSEmcFwEndcapCosmicWaveformGeneration.h>

Inheritance diagram for BSEmcFwEndcapCosmicWaveformGeneration:
BSEmcWaveformGenerationProcess PndProcess

Public Member Functions

 BSEmcFwEndcapCosmicWaveformGeneration ()
 
virtual ~BSEmcFwEndcapCosmicWaveformGeneration ()
 
virtual void SetDetectorName (const std::string &t_detectorName)
 Sets the detectorname and fills the parameterlist with names of all required parameter. More...
 
virtual void SetupParameters (const PndParameterRegister *t_parameterRegister)
 Fetches the parameteres requested in SetDetectorName. More...
 
void SetWaveformGenParName (const std::string &t_waveformGenParName)
 Set the Waveform Generation Parameter Name. More...
 
void SetPulseshapeLUTName (const std::string &t_pulseshapeLUTName)
 Set the Waveform Generation Parameter Name. More...
 
- Public Member Functions inherited from BSEmcWaveformGenerationProcess
 BSEmcWaveformGenerationProcess (BSEmcAbsWaveformSimulator *t_simulator=nullptr, Bool_t t_storewaves=kTRUE, Bool_t t_storeData=kTRUE, Bool_t t_timebased=kFALSE)
 
virtual ~BSEmcWaveformGenerationProcess ()
 
virtual void RequestDataContainer (PndContainerRegister *t_register)
 Pass the container register to the process, and get the processes container requirements. More...
 
virtual void GetDataContainer (PndContainerRegister *t_register)
 Pass the container register to the process, and set the processes container requirements. More...
 
virtual void Process ()
 The actual data transformation (digitizing, clustering, etc.) should be defined here. More...
 
void AddDepositData (const BSEmcMCDeposit *t_deposit, const Int_t t_depositIndex)
 
void RunTimebased (Bool_t t_timebased=kTRUE)
 
void SetStorageOfData (Bool_t t_storeWaves=kTRUE)
 
void StoreDataClass (Bool_t t_storeData=kTRUE)
 
void SetMCDepositBranchName (const TString &t_branchName)
 
void SetWaveformBranchName (const TString &t_branchName)
 
void SetWaveformDataBranchName (const TString &t_branchName)
 
void SetPhotonStatisticParName (const std::string &t_photonStatParName)
 
- Public Member Functions inherited from PndProcess
 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 void SetupSimulator ()
 Defines the waveform simulator. More...
 
 ClassDef (BSEmcFwEndcapCosmicWaveformGeneration, 1)
 
- Protected Member Functions inherited from BSEmcWaveformGenerationProcess
void SetSimulator (BSEmcAbsWaveformSimulator *t_simulator)
 
 ClassDef (BSEmcWaveformGenerationProcess, 2)
 

Protected Attributes

std::string fPulseshapeLUT {"LUTCosmicWaveformSADC2022FwEC_APD.txt"}
 
std::string fWaveformGenerationParName {""}
 
BSEmcFwEndcapCosmicWaveformGenParfWaveformGenerationPar {nullptr}
 
- Protected Attributes inherited from BSEmcWaveformGenerationProcess
TString fMCDepositBranchname {""}
 
TString fWaveformBranchName {""}
 
TString fWaveformDataBranchName {""}
 
PndContainerI< BSEmcMCDeposit > * fMCDepositArray {nullptr}
 
BSEmcWaveformBufferfWaveformBuffer {nullptr}
 
BSEmcAbsWaveformSimulatorfSimulator {nullptr}
 
Bool_t fStoreWaves {kFALSE}
 
Bool_t fStoreDataClass {kFALSE}
 
Bool_t fActivateBuffering {kFALSE}
 
std::string fPhotonStatisticParName {""}
 
BSEmcDigiParfPhotonStatisticPar {nullptr}
 
Bool_t fUse_photon_statistic {kFALSE}
 
Double_t fNPhotoElectronsPerMeV {0}
 
Double_t fExcessNoiseFactor {0}
 
Double_t fOverlapTime {0}
 
- Protected Attributes inherited from PndProcess
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 {"PndProcess"}
 Name of current PndProcess (for debugging) More...
 
TStopwatch fTimer {}
 Timer to monitor Process() time. More...
 
Double_t fTotalTime {0}
 Time taken by this Process' Process() More...
 
ProcInfo_t fProcInfo
 Helper to access cpu process Memory Info. More...
 
Long_t fLastMemSize
 

Detailed Description

Process to create Cosmic Waveforms out of BSEmcMCDeposits based on BSEmcFwEndcapDigi.

Specific implementation of the Waveformsimulator for the FwEndcap then used in BSEmcWaveformGenerationProcess to transform BSEmcMCDeposits into BSEmcMultiWaveforms New Cosmic Waveform based on near final setup measurements (APD-submodule) at -25 degree (2021/2022)

Author
Ph. Mahlberg mahlb.nosp@m.erg@.nosp@m.hiskp.nosp@m..uni.nosp@m.-bonn.nosp@m..de, HISKP Bonn
Ben Salisbury salis.nosp@m.bury.nosp@m.@hisk.nosp@m.p.un.nosp@m.i-bon.nosp@m.n.de, HISKP Bonn
Celina Frenkel frenk.nosp@m.el@h.nosp@m.iskp..nosp@m.uni-.nosp@m.bonn..nosp@m.de, HISKP Bonn

Definition at line 30 of file BSEmcFwEndcapCosmicWaveformGeneration.h.

Constructor & Destructor Documentation

◆ BSEmcFwEndcapCosmicWaveformGeneration()

BSEmcFwEndcapCosmicWaveformGeneration::BSEmcFwEndcapCosmicWaveformGeneration ( )

◆ ~BSEmcFwEndcapCosmicWaveformGeneration()

virtual BSEmcFwEndcapCosmicWaveformGeneration::~BSEmcFwEndcapCosmicWaveformGeneration ( )
virtual

Member Function Documentation

◆ ClassDef()

BSEmcFwEndcapCosmicWaveformGeneration::ClassDef ( BSEmcFwEndcapCosmicWaveformGeneration  ,
 
)
protected

◆ SetDetectorName()

virtual void BSEmcFwEndcapCosmicWaveformGeneration::SetDetectorName ( const std::string &  t_detectorName)
virtual

Sets the detectorname and fills the parameterlist with names of all required parameter.

Parameters
t_detectorName

Reimplemented from BSEmcWaveformGenerationProcess.

◆ SetPulseshapeLUTName()

void BSEmcFwEndcapCosmicWaveformGeneration::SetPulseshapeLUTName ( const std::string &  t_pulseshapeLUTName)
inline

Set the Waveform Generation Parameter Name.

Parameters
t_waveformGenParName

Definition at line 62 of file BSEmcFwEndcapCosmicWaveformGeneration.h.

References fPulseshapeLUT, and SetupSimulator().

◆ SetupParameters()

virtual void BSEmcFwEndcapCosmicWaveformGeneration::SetupParameters ( const PndParameterRegister t_parameterRegister)
virtual

Fetches the parameteres requested in SetDetectorName.

Parameters
t_parameterRegister

Reimplemented from BSEmcWaveformGenerationProcess.

◆ SetupSimulator()

virtual void BSEmcFwEndcapCosmicWaveformGeneration::SetupSimulator ( )
protectedvirtual

Defines the waveform simulator.

Referenced by SetPulseshapeLUTName().

◆ SetWaveformGenParName()

void BSEmcFwEndcapCosmicWaveformGeneration::SetWaveformGenParName ( const std::string &  t_waveformGenParName)
inline

Set the Waveform Generation Parameter Name.

Parameters
t_waveformGenParName

Definition at line 55 of file BSEmcFwEndcapCosmicWaveformGeneration.h.

References fWaveformGenerationParName.

Member Data Documentation

◆ fPulseshapeLUT

std::string BSEmcFwEndcapCosmicWaveformGeneration::fPulseshapeLUT {"LUTCosmicWaveformSADC2022FwEC_APD.txt"}
protected

Definition at line 71 of file BSEmcFwEndcapCosmicWaveformGeneration.h.

Referenced by SetPulseshapeLUTName().

◆ fWaveformGenerationPar

BSEmcFwEndcapCosmicWaveformGenPar* BSEmcFwEndcapCosmicWaveformGeneration::fWaveformGenerationPar {nullptr}
protected

Definition at line 73 of file BSEmcFwEndcapCosmicWaveformGeneration.h.

◆ fWaveformGenerationParName

std::string BSEmcFwEndcapCosmicWaveformGeneration::fWaveformGenerationParName {""}
protected

Definition at line 72 of file BSEmcFwEndcapCosmicWaveformGeneration.h.

Referenced by SetWaveformGenParName().


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