PandaRoot
PndEmcMultiWaveformSimulator Class Reference

Simulator to create PndEmcMultiWaveform. More...

#include <PndEmcMultiWaveformSimulator.h>

Inheritance diagram for PndEmcMultiWaveformSimulator:
PndEmcFullStackedWaveformSimulator PndEmcAbsWaveformSimulator

Public Member Functions

 PndEmcMultiWaveformSimulator ()
 
 PndEmcMultiWaveformSimulator (Double_t sampleRate, PndEmcAbsPulseshape *pulseshape, Int_t wfMultiplicity)
 
virtual void AddModifier (PndEmcAbsWaveformModifier *wfModifier, Int_t wfIndex)
 
virtual Double_t GetTotalScale (Int_t wfIndex)
 
- Public Member Functions inherited from PndEmcFullStackedWaveformSimulator
 PndEmcFullStackedWaveformSimulator ()
 
 PndEmcFullStackedWaveformSimulator (Double_t sampleRate, PndEmcAbsPulseshape *pulseShape)
 
virtual ~PndEmcFullStackedWaveformSimulator ()
 
virtual void Init (Double_t samplingBeforeFirstPulse, Double_t samplingAfterLastPulse, Double_t cutoff, Double_t activeTimeIncrement)
 
virtual void GetAbsoluteTimeInterval (PndEmcWaveformData *wfData, Double_t &startTime, Double_t &activeTime)
 
virtual Double_t GetTimeBeforeFirstHit (PndEmcWaveformData *)
 
virtual Double_t GetScale ()
 
virtual PndEmcWaveformGet1GevWaveform ()
 
virtual Double_t GetPulseRiseTime ()
 
- Public Member Functions inherited from PndEmcAbsWaveformSimulator
virtual PndEmcWaveformSimulate (PndEmcWaveformData *wfData, TClonesArray *arrayToStore=nullptr)
 
virtual PndEmcWaveformSimulateSinglePulse (Double_t hitEnergy, Double_t hitTime, TClonesArray *arrayToStore=nullptr, Int_t detId=-1, Int_t trackId=-1, Int_t hitIndex=-1)
 
virtual Double_t GetTotalScale ()
 
virtual Double_t GetSampleRate ()
 
virtual void AddModifier (PndEmcAbsWaveformModifier *wfModifier)
 

Protected Member Functions

virtual PndEmcWaveformCallModifiers (PndEmcWaveform *wf)
 
virtual PndEmcWaveformMakeWaveform (PndEmcWaveformData *wfData, TClonesArray *arrayToStore=nullptr)
 
virtual PndEmcWaveformMakeSingleWaveform (Double_t hitEnergy, Double_t hitTime, TClonesArray *arrayToStore=nullptr, Int_t detId=-1, Int_t trackId=-1, Int_t hitIndex=-1)
 
- Protected Member Functions inherited from PndEmcFullStackedWaveformSimulator
virtual Double_t CalcWaveForTime (Double_t absoluteTime, PndEmcWaveformData *wfData)
 
Double_t CalcSingleWaveForTime (Double_t absoluteTime, Double_t energy, Double_t pulseTime)
 
- Protected Member Functions inherited from PndEmcAbsWaveformSimulator
 PndEmcAbsWaveformSimulator ()
 
 PndEmcAbsWaveformSimulator (Double_t sampleRate)
 
void SyncWithADCClock (Double_t &time)
 
 ClassDef (PndEmcAbsWaveformSimulator, 3)
 

Additional Inherited Members

- Protected Attributes inherited from PndEmcAbsWaveformSimulator
TList fListOfWaveformModifiers
 
Double_t fSampleRate
 sampling rate of SADC. In 1/ns More...
 

Detailed Description

Constructor & Destructor Documentation

◆ PndEmcMultiWaveformSimulator() [1/2]

PndEmcMultiWaveformSimulator::PndEmcMultiWaveformSimulator ( )

◆ PndEmcMultiWaveformSimulator() [2/2]

PndEmcMultiWaveformSimulator::PndEmcMultiWaveformSimulator ( Double_t  sampleRate,
PndEmcAbsPulseshape pulseshape,
Int_t  wfMultiplicity 
)

Member Function Documentation

◆ AddModifier()

virtual void PndEmcMultiWaveformSimulator::AddModifier ( PndEmcAbsWaveformModifier wfModifier,
Int_t  wfIndex 
)
virtual

wfIndex characterizes wf, the modifier will apllied on* If the modifier itself will work on the multiwaveform itself, pass a -1. In this case, the Modifier is considered to scale all waveforms equally.

◆ CallModifiers()

virtual PndEmcWaveform* PndEmcMultiWaveformSimulator::CallModifiers ( PndEmcWaveform wf)
protectedvirtual

Reimplemented from PndEmcAbsWaveformSimulator.

◆ GetTotalScale()

virtual Double_t PndEmcMultiWaveformSimulator::GetTotalScale ( Int_t  wfIndex)
virtual

◆ MakeSingleWaveform()

virtual PndEmcWaveform* PndEmcMultiWaveformSimulator::MakeSingleWaveform ( Double_t  hitEnergy,
Double_t  hitTime,
TClonesArray *  arrayToStore = nullptr,
Int_t  detId = -1,
Int_t  trackId = -1,
Int_t  hitIndex = -1 
)
protectedvirtual

◆ MakeWaveform()

virtual PndEmcWaveform* PndEmcMultiWaveformSimulator::MakeWaveform ( PndEmcWaveformData wfData,
TClonesArray *  arrayToStore = nullptr 
)
protectedvirtual

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