![]() |
PandaRoot
|
Abstract base class for waveform simulator. More...
#include <PndEmcAbsWaveformSimulator.h>
Public Member Functions | |
virtual PndEmcWaveform * | Simulate (PndEmcWaveformData *wfData, TClonesArray *arrayToStore=nullptr) |
virtual PndEmcWaveform * | SimulateSinglePulse (Double_t hitEnergy, Double_t hitTime, TClonesArray *arrayToStore=nullptr, Int_t detId=-1, Int_t trackId=-1, Int_t hitIndex=-1) |
virtual PndEmcWaveform * | Get1GevWaveform ()=0 |
virtual void | GetAbsoluteTimeInterval (PndEmcWaveformData *wfData, Double_t &startTime, Double_t &activeTime)=0 |
virtual Double_t | GetTimeBeforeFirstHit (PndEmcWaveformData *) |
virtual Double_t | GetScale ()=0 |
virtual Double_t | GetTotalScale () |
virtual Double_t | GetSampleRate () |
virtual void | AddModifier (PndEmcAbsWaveformModifier *wfModifier) |
Protected Member Functions | |
PndEmcAbsWaveformSimulator () | |
PndEmcAbsWaveformSimulator (Double_t sampleRate) | |
virtual PndEmcWaveform * | MakeWaveform (PndEmcWaveformData *wfData, TClonesArray *arrayToStore=nullptr)=0 |
virtual PndEmcWaveform * | MakeSingleWaveform (Double_t hitEnergy, Double_t hitTime, TClonesArray *arrayToStore=nullptr, Int_t detId=-1, Int_t trackId=-1, Int_t hitIndex=-1)=0 |
void | SyncWithADCClock (Double_t &time) |
virtual PndEmcWaveform * | CallModifiers (PndEmcWaveform *wf) |
ClassDef (PndEmcAbsWaveformSimulator, 3) | |
Protected Attributes | |
TList | fListOfWaveformModifiers |
Double_t | fSampleRate |
sampling rate of SADC. In 1/ns More... | |
Abstract base class for waveform simulator.
Definition at line 36 of file PndEmcAbsWaveformSimulator.h.
|
inlineprotected |
Definition at line 85 of file PndEmcAbsWaveformSimulator.h.
|
inlineprotected |
Definition at line 86 of file PndEmcAbsWaveformSimulator.h.
References MakeSingleWaveform(), and MakeWaveform().
|
inlinevirtual |
Definition at line 82 of file PndEmcAbsWaveformSimulator.h.
References fListOfWaveformModifiers.
|
inlineprotectedvirtual |
Reimplemented in PndEmcMultiWaveformSimulator.
Definition at line 95 of file PndEmcAbsWaveformSimulator.h.
References fListOfWaveformModifiers.
Referenced by Simulate(), and SimulateSinglePulse().
|
protected |
|
pure virtual |
returns 1GeV equivalent waveform
might be used for calibration etc.
Implemented in PndEmcFullStackedWaveformSimulator.
Referenced by SimulateSinglePulse().
|
pure virtual |
returns absolute livetime interval of waveform
times in ns
Implemented in PndEmcFullStackedWaveformSimulator.
Referenced by SimulateSinglePulse().
|
inlinevirtual |
Definition at line 80 of file PndEmcAbsWaveformSimulator.h.
References fSampleRate.
|
pure virtual |
Get 1GeV pulse height equivalient of simulator generated waveform
Implemented in PndEmcFullStackedWaveformSimulator.
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 PndEmcFullStackedWaveformSimulator.
Definition at line 62 of file PndEmcAbsWaveformSimulator.h.
References GetScale().
|
inlinevirtual |
Get 1GeV pulse height equivalent of waveform at end of modification chain
Definition at line 68 of file PndEmcAbsWaveformSimulator.h.
References fListOfWaveformModifiers, and GetScale().
|
protectedpure virtual |
Implemented in PndEmcFullStackedWaveformSimulator, and PndEmcMultiWaveformSimulator.
Referenced by PndEmcAbsWaveformSimulator(), and SimulateSinglePulse().
|
protectedpure virtual |
Implemented in PndEmcFullStackedWaveformSimulator, and PndEmcMultiWaveformSimulator.
Referenced by PndEmcAbsWaveformSimulator(), and Simulate().
|
inlinevirtual |
Simulate Waveform based on wfData object
The PndEmcWaveformData object is used by the emc timebased simulation
Definition at line 41 of file PndEmcAbsWaveformSimulator.h.
References CallModifiers(), and MakeWaveform().
|
inlinevirtual |
Simulate waveform consisting of single pusle
Definition at line 44 of file PndEmcAbsWaveformSimulator.h.
References CallModifiers(), Get1GevWaveform(), GetAbsoluteTimeInterval(), and MakeSingleWaveform().
|
inlineprotected |
Definition at line 93 of file PndEmcAbsWaveformSimulator.h.
References fSampleRate.
|
protected |
Definition at line 104 of file PndEmcAbsWaveformSimulator.h.
Referenced by AddModifier(), CallModifiers(), and GetTotalScale().
|
protected |
sampling rate of SADC. In 1/ns
Definition at line 105 of file PndEmcAbsWaveformSimulator.h.
Referenced by GetSampleRate(), and SyncWithADCClock().