![]() |
PandaRoot
|
Abstract base class for waveform simulator. More...
#include <BSEmcAbsWaveformSimulator.h>
Public Member Functions | |
virtual BSEmcWaveform * | Simulate (BSEmcWaveformData *t_wfData, TClonesArray *t_arrayToStore=nullptr) |
virtual BSEmcWaveform * | SimulateSinglePulse (Double_t t_hitEnergy, Double_t t_hitTime, TClonesArray *t_arrayToStore=nullptr, Int_t t_detId=-1, Int_t t_trackId=-1, Int_t t_hitIndex=-1) |
virtual BSEmcWaveform * | Get1GevWaveform ()=0 |
virtual void | GetAbsoluteTimeInterval (BSEmcWaveformData *t_wfData, Double_t &t_startTime, Double_t &t_activeTime)=0 |
virtual Double_t | GetTimeBeforeFirstHit (BSEmcWaveformData *) |
virtual Double_t | GetScale ()=0 |
virtual Double_t | GetTotalScale () |
virtual Double_t | GetSampleRate () |
virtual void | AddModifier (BSEmcAbsWaveformModifier *t_wfModifier) |
void | SetHitBranchName (const TString &t_branchname) |
Protected Member Functions | |
BSEmcAbsWaveformSimulator () | |
BSEmcAbsWaveformSimulator (Double_t sampleRate) | |
virtual BSEmcWaveform * | MakeWaveform (BSEmcWaveformData *t_wfData, TClonesArray *t_arrayToStore=nullptr)=0 |
virtual BSEmcWaveform * | MakeSingleWaveform (Double_t t_hitEnergy, Double_t t_hitTime, TClonesArray *t_arrayToStore=nullptr, Int_t t_detId=-1, Int_t t_trackId=-1, Int_t t_hitIndex=-1)=0 |
void | SyncWithADCClock (Double_t &t_time) |
virtual BSEmcWaveform * | CallModifiers (BSEmcWaveform *t_wf) |
ClassDef (BSEmcAbsWaveformSimulator, 3) | |
Protected Attributes | |
TList | fListOfWaveformModifiers {} |
Double_t | fSampleRate {-1} |
sampling rate of SADC. In 1/ns More... | |
TString | fHitBranchName {""} |
Abstract base class for waveform simulator.
Definition at line 22 of file BSEmcAbsWaveformSimulator.h.
|
inlineprotected |
Definition at line 74 of file BSEmcAbsWaveformSimulator.h.
|
inlineprotected |
Definition at line 75 of file BSEmcAbsWaveformSimulator.h.
References MakeSingleWaveform(), and MakeWaveform().
|
inlinevirtual |
Definition at line 69 of file BSEmcAbsWaveformSimulator.h.
References fListOfWaveformModifiers.
|
inlineprotectedvirtual |
Reimplemented in BSEmcMultiWaveformSimulator.
Definition at line 84 of file BSEmcAbsWaveformSimulator.h.
References fListOfWaveformModifiers.
Referenced by Simulate(), and SimulateSinglePulse().
|
protected |
|
pure virtual |
returns 1GeV equivalent waveform
might be used for calibration etc.
Implemented in BSEmcFullStackedWaveformSimulator.
Referenced by SimulateSinglePulse().
|
pure virtual |
returns absolute livetime interval of waveform
times in ns
Implemented in BSEmcFullStackedWaveformSimulator.
Referenced by SimulateSinglePulse().
|
inlinevirtual |
Definition at line 67 of file BSEmcAbsWaveformSimulator.h.
References fSampleRate.
|
pure virtual |
Get 1GeV pulse height equivalient of simulator generated waveform
Implemented in BSEmcFullStackedWaveformSimulator.
Referenced by GetTimeBeforeFirstHit(), and GetTotalScale().
|
inlinevirtual |
maximum timeinterval generated waveforms are ahead of causal detector hits
Information is needed by timebased simulation framework. E.g. provokeed by simulation of preceding baseline samples
Reimplemented in BSEmcFullStackedWaveformSimulator.
Definition at line 49 of file BSEmcAbsWaveformSimulator.h.
References GetScale().
|
inlinevirtual |
Get 1GeV pulse height equivalent of waveform at end of modification chain
Definition at line 55 of file BSEmcAbsWaveformSimulator.h.
References fListOfWaveformModifiers, and GetScale().
|
protectedpure virtual |
Implemented in BSEmcFullStackedWaveformSimulator, and BSEmcMultiWaveformSimulator.
Referenced by BSEmcAbsWaveformSimulator(), and SimulateSinglePulse().
|
protectedpure virtual |
Implemented in BSEmcFullStackedWaveformSimulator, and BSEmcMultiWaveformSimulator.
Referenced by BSEmcAbsWaveformSimulator(), and Simulate().
|
inline |
Definition at line 71 of file BSEmcAbsWaveformSimulator.h.
References fHitBranchName.
Referenced by BSEmcMCHitToTimebasedWaveforms< BSEmcBwEndcapDigiPar >::Init().
|
inlinevirtual |
Simulate Waveform based on wfData object
The BSEmcWaveformData object is used by the emc timebased simulation
Definition at line 27 of file BSEmcAbsWaveformSimulator.h.
References CallModifiers(), and MakeWaveform().
|
inlinevirtual |
Simulate waveform consisting of single pusle
Definition at line 31 of file BSEmcAbsWaveformSimulator.h.
References CallModifiers(), Get1GevWaveform(), GetAbsoluteTimeInterval(), and MakeSingleWaveform().
|
inlineprotected |
Definition at line 82 of file BSEmcAbsWaveformSimulator.h.
References fSampleRate.
|
protected |
Definition at line 96 of file BSEmcAbsWaveformSimulator.h.
Referenced by SetHitBranchName().
|
protected |
Definition at line 93 of file BSEmcAbsWaveformSimulator.h.
Referenced by AddModifier(), CallModifiers(), and GetTotalScale().
|
protected |
sampling rate of SADC. In 1/ns
Definition at line 94 of file BSEmcAbsWaveformSimulator.h.
Referenced by GetSampleRate(), and SyncWithADCClock().