PandaRoot
BSEmcFullStackedWaveformSimulator Class Reference

Waveform simulator. More...

#include <BSEmcFullStackedWaveformSimulator.h>

Inheritance diagram for BSEmcFullStackedWaveformSimulator:
BSEmcAbsWaveformSimulator BSEmcMultiWaveformSimulator

Public Member Functions

 BSEmcFullStackedWaveformSimulator ()
 
 BSEmcFullStackedWaveformSimulator (Double_t t_sampleRate, BSEmcAbsPulseshape *t_pulseShape)
 
virtual ~BSEmcFullStackedWaveformSimulator ()
 
virtual void Init (Double_t t_samplingBeforeFirstPulse, Double_t t_samplingAfterLastPulse, Double_t t_cutoff, Double_t t_activeTimeIncrement)
 
virtual void GetAbsoluteTimeInterval (BSEmcWaveformData *t_wfData, Double_t &t_startTime, Double_t &t_activeTime)
 
virtual Double_t GetTimeBeforeFirstHit (BSEmcWaveformData *)
 
virtual Double_t GetScale ()
 
virtual BSEmcWaveformGet1GevWaveform ()
 
virtual Double_t GetPulseRiseTime ()
 
- Public Member Functions inherited from BSEmcAbsWaveformSimulator
virtual BSEmcWaveformSimulate (BSEmcWaveformData *t_wfData, TClonesArray *t_arrayToStore=nullptr)
 
virtual BSEmcWaveformSimulateSinglePulse (Double_t t_depositEnergy, Double_t t_depositTime, TClonesArray *t_arrayToStore=nullptr, Int_t t_detId=-1, Int_t t_trackId=-1, Int_t t_depositIndex=-1)
 
virtual Double_t GetTimeBeforeFirstDeposit (BSEmcWaveformData *)
 
virtual Double_t GetTotalScale ()
 
virtual Double_t GetSampleRate ()
 
virtual void AddModifier (BSEmcAbsWaveformModifier *t_wfModifier)
 
void SetMCDepositBranchName (const TString &t_branchname)
 

Protected Member Functions

virtual BSEmcWaveformMakeWaveform (BSEmcWaveformData *t_wfData, TClonesArray *t_arrayToStore=nullptr)
 
virtual BSEmcWaveformMakeSingleWaveform (Double_t t_depositEnergy, Double_t t_depositTime, TClonesArray *t_arrayToStore=nullptr, Int_t t_detId=-1, Int_t t_trackId=-1, Int_t t_depositIndex=-1)
 
virtual Double_t CalcWaveForTime (Double_t t_absoluteTime, BSEmcWaveformData *t_wfData)
 
Double_t CalcSingleWaveForTime (Double_t t_absoluteTime, Double_t t_energy, Double_t t_pulseTime)
 
- Protected Member Functions inherited from BSEmcAbsWaveformSimulator
 BSEmcAbsWaveformSimulator ()
 
 BSEmcAbsWaveformSimulator (Double_t sampleRate)
 
void SyncWithADCClock (Double_t &t_time)
 
virtual BSEmcWaveformCallModifiers (BSEmcWaveform *t_wf)
 
 ClassDef (BSEmcAbsWaveformSimulator, 3)
 

Additional Inherited Members

- Protected Attributes inherited from BSEmcAbsWaveformSimulator
TList fListOfWaveformModifiers {}
 
Double_t fSampleRate {-1}
 sampling rate of SADC. In 1/ns More...
 
TString fMCDepositBranchName {""}
 

Detailed Description

Waveform simulator.

Author
Ph. Mahlberg mahlb.nosp@m.erg@.nosp@m.hiskp.nosp@m..uni.nosp@m.-bonn.nosp@m..de

Definition at line 27 of file BSEmcFullStackedWaveformSimulator.h.

Constructor & Destructor Documentation

◆ BSEmcFullStackedWaveformSimulator() [1/2]

BSEmcFullStackedWaveformSimulator::BSEmcFullStackedWaveformSimulator ( )

Referenced by GetPulseRiseTime().

◆ BSEmcFullStackedWaveformSimulator() [2/2]

BSEmcFullStackedWaveformSimulator::BSEmcFullStackedWaveformSimulator ( Double_t  t_sampleRate,
BSEmcAbsPulseshape t_pulseShape 
)

◆ ~BSEmcFullStackedWaveformSimulator()

virtual BSEmcFullStackedWaveformSimulator::~BSEmcFullStackedWaveformSimulator ( )
virtual

Member Function Documentation

◆ CalcSingleWaveForTime()

Double_t BSEmcFullStackedWaveformSimulator::CalcSingleWaveForTime ( Double_t  t_absoluteTime,
Double_t  t_energy,
Double_t  t_pulseTime 
)
protected

Referenced by GetPulseRiseTime().

◆ CalcWaveForTime()

virtual Double_t BSEmcFullStackedWaveformSimulator::CalcWaveForTime ( Double_t  t_absoluteTime,
BSEmcWaveformData t_wfData 
)
protectedvirtual

Referenced by GetPulseRiseTime().

◆ Get1GevWaveform()

virtual BSEmcWaveform* BSEmcFullStackedWaveformSimulator::Get1GevWaveform ( )
inlinevirtual

returns 1GeV equivalent waveform

might be used for calibration etc.

Implements BSEmcAbsWaveformSimulator.

Definition at line 40 of file BSEmcFullStackedWaveformSimulator.h.

40 { return f1GeVWaveform; };

◆ GetAbsoluteTimeInterval()

virtual void BSEmcFullStackedWaveformSimulator::GetAbsoluteTimeInterval ( BSEmcWaveformData t_wfData,
Double_t &  t_startTime,
Double_t &  t_activeTime 
)
virtual

returns absolute livetime interval of waveform

times in ns

Implements BSEmcAbsWaveformSimulator.

◆ GetPulseRiseTime()

virtual Double_t BSEmcFullStackedWaveformSimulator::GetPulseRiseTime ( )
inlinevirtual

◆ GetScale()

virtual Double_t BSEmcFullStackedWaveformSimulator::GetScale ( )
inlinevirtual

Get 1GeV pulse height equivalient of simulator generated waveform

Implements BSEmcAbsWaveformSimulator.

Definition at line 39 of file BSEmcFullStackedWaveformSimulator.h.

39 { return fScale; }

◆ GetTimeBeforeFirstHit()

virtual Double_t BSEmcFullStackedWaveformSimulator::GetTimeBeforeFirstHit ( BSEmcWaveformData )
inlinevirtual

Definition at line 37 of file BSEmcFullStackedWaveformSimulator.h.

37 { return fSamplingBeforeFirstPulse; } // in ns //wfData //[R.K.03/2017] unused variable(s)

◆ Init()

virtual void BSEmcFullStackedWaveformSimulator::Init ( Double_t  t_samplingBeforeFirstPulse,
Double_t  t_samplingAfterLastPulse,
Double_t  t_cutoff,
Double_t  t_activeTimeIncrement 
)
virtual

◆ MakeSingleWaveform()

virtual BSEmcWaveform* BSEmcFullStackedWaveformSimulator::MakeSingleWaveform ( Double_t  t_depositEnergy,
Double_t  t_depositTime,
TClonesArray *  t_arrayToStore = nullptr,
Int_t  t_detId = -1,
Int_t  t_trackId = -1,
Int_t  t_depositIndex = -1 
)
protectedvirtual

Implements BSEmcAbsWaveformSimulator.

Reimplemented in BSEmcMultiWaveformSimulator.

Referenced by GetPulseRiseTime().

◆ MakeWaveform()

virtual BSEmcWaveform* BSEmcFullStackedWaveformSimulator::MakeWaveform ( BSEmcWaveformData t_wfData,
TClonesArray *  t_arrayToStore = nullptr 
)
protectedvirtual

Implements BSEmcAbsWaveformSimulator.

Reimplemented in BSEmcMultiWaveformSimulator.

Referenced by GetPulseRiseTime().


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