FairRoot/PandaRoot
|
Class to hold multiple waveforms from one Emc Hit / ADC readout. More...
#include <PndEmcMultiWaveform.h>
Public Member Functions | |
PndEmcMultiWaveform () | |
PndEmcMultiWaveform (Int_t trackid, Long_t detId, Long_t waveform_length=128, Int_t hitIndex=-1) | |
virtual | ~PndEmcMultiWaveform () |
void | SetWaveform (const std::vector< Double_t > &signal, Int_t length, Int_t Waveform) |
virtual void | clearAndReset () |
virtual void | Clear (Option_t *) |
Int_t | GetNumberOfWaveforms () const |
Int_t | GetActiveWaveform () const |
void | SetActiveWaveform (Int_t active=1) |
virtual std::vector< Double_t > | GetSignal () const |
long | GetDetectorId () const |
int | GetTrackId () const |
Short_t | GetModule () const |
PndEmcTwoCoordIndex * | GetTCI () const |
virtual std::vector< Double_t > | GetSignalError () const |
Int_t | GetHitIndex () const |
virtual bool | operator== (const PndEmcWaveform &otherWave) const |
virtual bool | operator< (const PndEmcWaveform &otherWave) const |
virtual bool | operator!= (const PndEmcWaveform &otherWave) const |
virtual bool | equal (FairTimeStamp *data) |
PndEmcWaveform & | operator+= (const PndEmcWaveform &otherWave) |
Double_t | GetSampleRate () const |
Double_t | GetScale (Double_t sampleRate, PndEmcAbsPulseshape *pulseshape) const |
Double_t | GetNormalisation (Double_t sampleRate, PndEmcAbsPulseshape *pulseshape) const |
Int_t | GetWaveformLength () const |
void | SetSampleRate (Double_t rate) |
void | UpdateWaveform (PndEmcHit *hit, Double_t pePerMeV, Bool_t usePhotonStatistic, Double_t excessNoiseFactor, Double_t firstADCBinTime, Double_t sampleRate, PndEmcAbsPulseshape *pulseshape, Double_t=0) |
void | MakeWaveform (Double_t energy, Double_t time, Double_t pePerMeV, Bool_t usePhotonStatistic, Double_t excessNoiseFactor, Double_t firstADCBinTime, Double_t sampleRate, PndEmcAbsPulseshape *pulseshape, Double_t=0) |
void | AddElecNoise (Double_t) |
void | Digitise (Double_t) |
void | AddElecNoiseAndDigitise (Double_t, Double_t, Double_t=0) |
void | AddShapedElecNoiseAndDigitise (Double_t noise_width, Double_t oneBitResolution, PndEmcAbsPulseshape *pulseshape, Double_t firstADCBinTime, Double_t sampleRate, Double_t=0) |
void | SetWaveform (std::vector< Double_t > &signal, Int_t length) |
Double_t | Max () |
Double_t | GetActiveTime () const |
Int_t | GetPileupCount () const |
void | AddEvt (Int_t evtNo) |
const std::vector< Int_t > & | GetEvtList () const |
TGraphErrors * | ToTGraph () const |
Double_t | GetBaseline () const |
Double_t | Integral () const |
Protected Attributes | |
Int_t | fTrackId |
Int_t | fDetectorId |
Int_t | fWaveformLength |
std::vector< Double_t > | fSignal |
std::vector< Double_t > | fSignalError |
Int_t | fHitIndex |
Double_t | fSampleRate |
Double_t | fBaselineValue |
std::vector< Int_t > | fEvt |
Static Protected Attributes | |
static Double_t | BarrelOverlapTime = 700 |
static Double_t | ForwardOverlapTime = 390 |
static Double_t | ShashylikOverlapTime = 130 |
Private Member Functions | |
ClassDef (PndEmcMultiWaveform, 2) | |
Private Attributes | |
std::vector< std::vector < Double_t > > | fSignals |
Int_t | fActiveWaveform |
Friends | |
class | PndEmcAbsWaveformModifier |
Class to hold multiple waveforms from one Emc Hit / ADC readout.
Definition at line 23 of file PndEmcMultiWaveform.h.
|
inline |
Definition at line 29 of file PndEmcMultiWaveform.h.
PndEmcMultiWaveform::PndEmcMultiWaveform | ( | Int_t | trackid, |
Long_t | detId, | ||
Long_t | waveform_length = 128 , |
||
Int_t | hitIndex = -1 |
||
) |
|
inlinevirtual |
Definition at line 33 of file PndEmcMultiWaveform.h.
References PndEmcWaveform::fSignal, and fSignals.
|
inherited |
Definition at line 236 of file PndEmcWaveform.cxx.
References Double_t, PndEmcWaveform::fSignal, PndEmcWaveform::fWaveformLength, and i.
|
inherited |
Definition at line 259 of file PndEmcWaveform.cxx.
References Double_t, PndEmcWaveform::fBaselineValue, PndEmcWaveform::fSignal, PndEmcWaveform::fSignalError, PndEmcWaveform::fWaveformLength, i, and sqrt().
Referenced by PndEmcHitsToWaveform::Exec().
|
inlineinherited |
Definition at line 135 of file PndEmcWaveform.h.
References PndEmcWaveform::fEvt.
Referenced by PndEmcHitsToWaveform::Exec(), and PndEmcWaveform::operator+=().
|
inherited |
Definition at line 291 of file PndEmcWaveform.cxx.
References Double_t, PndEmcWaveform::fBaselineValue, PndEmcWaveform::fSignal, PndEmcWaveform::fSignalError, PndEmcWaveform::fWaveformLength, i, sqrt(), t, and PndEmcAbsPulseshape::value().
Referenced by PndEmcHitsToWaveform::Exec().
|
private |
|
inlinevirtual |
Reimplemented from PndEmcWaveform.
Definition at line 43 of file PndEmcMultiWaveform.h.
References PndEmcWaveform::fSignal, and fSignals.
|
virtual |
Reimplemented from PndEmcWaveform.
Definition at line 25 of file PndEmcMultiWaveform.cxx.
References fSignals, and PndEmcWaveform::fWaveformLength.
|
inherited |
Definition at line 249 of file PndEmcWaveform.cxx.
References Double_t, PndEmcWaveform::fSignal, PndEmcWaveform::fWaveformLength, and i.
|
virtualinherited |
|
inlineinherited |
Definition at line 132 of file PndEmcWaveform.h.
References PndEmcWaveform::fSampleRate, and PndEmcWaveform::fWaveformLength.
Referenced by PndEmcHitsToWaveform::Exec(), PndEmcWaveformWriteoutBuffer::Modify(), and PndEmcWaveform::operator<().
|
inline |
Definition at line 45 of file PndEmcMultiWaveform.h.
References fActiveWaveform.
Referenced by PndEmcHighLowPSA::Process().
|
inlineinherited |
Definition at line 140 of file PndEmcWaveform.h.
References PndEmcWaveform::fBaselineValue.
Referenced by PndEmcAnalysis::Exec(), and PndEmcPSAFPGADigitalFilterAnalyser::Process().
|
inlineinherited |
Definition at line 81 of file PndEmcWaveform.h.
References PndEmcWaveform::fDetectorId.
Referenced by PndEmcWaveform::equal(), PndEmcFWEndcapDigi::Exec(), PndEmcWaveformToDigi::Exec(), PndEmcWaveformToCalibratedDigi::Exec(), PndEmcMultiWaveformToCalibratedDigi::Exec(), PndEmcWaveformWriteoutBuffer::Modify(), PndEmcMultiWaveformSimulator::MultiplyWaveform(), PndEmcWaveform::operator<(), and PndEmcWaveformWriteoutBuffer::WriteToFile().
|
inlineinherited |
Definition at line 136 of file PndEmcWaveform.h.
References PndEmcWaveform::fEvt.
Referenced by PndEmcWaveformToDigi::Exec(), PndEmcAnalysis::Exec(), PndEmcWaveform::operator+=(), and PndEmcWaveformWriteoutBuffer::WriteToFile().
|
inlineinherited |
Definition at line 88 of file PndEmcWaveform.h.
References PndEmcWaveform::fHitIndex.
Referenced by PndEmcFWEndcapDigi::Exec(), PndEmcWaveformToDigi::Exec(), PndEmcWaveformToCalibratedDigi::Exec(), PndEmcMultiWaveformToCalibratedDigi::Exec(), PndEmcAnalysis::Exec(), and PndEmcMultiWaveformSimulator::MultiplyWaveform().
|
inlineinherited |
Definition at line 83 of file PndEmcWaveform.h.
References PndEmcWaveform::fDetectorId.
Referenced by PndEmcWaveformToDigi::Exec(), PndEmcAnalysis::Exec(), PndEmcMultiWaveformToCalibratedDigi::Exec(), PndEmcWaveformWriteoutBuffer::Modify(), and PndEmcWaveform::operator<().
|
inherited |
Definition at line 149 of file PndEmcWaveform.cxx.
References PndEmcWaveform::clearAndReset(), Double_t, PndEmcWaveform::Max(), PndEmcHit::SetEnergy(), PndEmcHit::SetTime(), and PndEmcWaveform::UpdateWaveform().
Referenced by PndEmcWaveform::GetScale().
|
inline |
Definition at line 44 of file PndEmcMultiWaveform.h.
References fSignals.
Referenced by PndEmcMultiWaveformToCalibratedDigi::Exec().
|
inlineinherited |
Definition at line 133 of file PndEmcWaveform.h.
References PndEmcWaveform::fEvt.
Referenced by PndEmcAnalysis::Exec(), and PndEmcWaveformWriteoutBuffer::Modify().
|
inlineinherited |
Definition at line 100 of file PndEmcWaveform.h.
References PndEmcWaveform::fSampleRate.
Referenced by PndEmcFWEndcapDigi::Exec(), and PndEmcMultiWaveformSimulator::MultiplyWaveform().
|
inherited |
Definition at line 143 of file PndEmcWaveform.cxx.
References PndEmcWaveform::GetNormalisation().
Referenced by PndEmcHitsToWaveform::Init().
|
virtual |
Reimplemented from PndEmcWaveform.
Definition at line 30 of file PndEmcMultiWaveform.cxx.
References fActiveWaveform, and fSignals.
|
inlinevirtualinherited |
|
inherited |
Definition at line 339 of file PndEmcWaveform.cxx.
References emcMap, PndEmcWaveform::fDetectorId, PndEmcMapper::GetTCI(), and PndEmcMapper::Instance().
Referenced by PndEmcAnalysis::Exec(), and PndEmcWaveformWriteoutBuffer::Modify().
|
inlineinherited |
Definition at line 82 of file PndEmcWaveform.h.
References PndEmcWaveform::fTrackId.
Referenced by PndEmcFWEndcapDigi::Exec(), PndEmcWaveformToDigi::Exec(), PndEmcWaveformToCalibratedDigi::Exec(), PndEmcMultiWaveformToCalibratedDigi::Exec(), and PndEmcMultiWaveformSimulator::MultiplyWaveform().
|
inlineinherited |
Definition at line 103 of file PndEmcWaveform.h.
References PndEmcWaveform::fWaveformLength.
Referenced by PndEmcAnalysis::Exec().
|
inherited |
Definition at line 432 of file PndEmcWaveform.cxx.
References Double_t, PndEmcWaveform::fSignal, and i.
Referenced by PndEmcWaveformToDigi::Init().
|
inherited |
Definition at line 190 of file PndEmcWaveform.cxx.
References Double_t, fabs(), PndEmcWaveform::fSignal, PndEmcWaveform::fSignalError, PndEmcWaveform::fWaveformLength, i, sqrt(), and PndEmcAbsPulseshape::value().
Referenced by PndEmcWaveform::UpdateWaveform().
|
inherited |
Definition at line 325 of file PndEmcWaveform.cxx.
References Double_t, and PndEmcWaveform::fSignal.
Referenced by PndEmcAnalysis::Exec(), PndEmcWaveform::GetNormalisation(), and PndEmcWaveformToDigi::Init().
|
virtualinherited |
|
inherited |
Definition at line 380 of file PndEmcWaveform.cxx.
References PndEmcWaveform::AddEvt(), PndEmcWaveform::fSampleRate, PndEmcWaveform::fSignal, PndEmcWaveform::fSignalError, PndEmcWaveform::fWaveformLength, PndEmcWaveform::GetEvtList(), i, and sqrt().
|
virtualinherited |
Definition at line 350 of file PndEmcWaveform.cxx.
References PndEmcWaveform::BarrelOverlapTime, Double_t, PndEmcWaveform::ForwardOverlapTime, PndEmcWaveform::GetActiveTime(), PndEmcWaveform::GetDetectorId(), PndEmcWaveform::GetModule(), and PndEmcWaveform::ShashylikOverlapTime.
|
virtualinherited |
|
inline |
Definition at line 46 of file PndEmcMultiWaveform.h.
References fActiveWaveform.
Referenced by PndEmcMultiWaveformSimulator::CallModifiers(), PndEmcMultiWaveformToCalibratedDigi::Exec(), and PndEmcHighLowPSA::Process().
|
inlineinherited |
Definition at line 111 of file PndEmcWaveform.h.
References PndEmcWaveform::fSampleRate.
Referenced by PndEmcFullStackedWaveformSimulator::MakeSingleWaveform(), PndEmcFullStackedWaveformSimulator::MakeWaveform(), and PndEmcMultiWaveformSimulator::MultiplyWaveform().
void PndEmcMultiWaveform::SetWaveform | ( | const std::vector< Double_t > & | signal, |
Int_t | length, | ||
Int_t | Waveform | ||
) |
Definition at line 38 of file PndEmcMultiWaveform.cxx.
References fSignals, and PndEmcWaveform::fWaveformLength.
Referenced by PndEmcReadProto192Data::Exec(), and PndEmcMultiWaveformSimulator::MultiplyWaveform().
|
inherited |
Definition at line 427 of file PndEmcWaveform.cxx.
References PndEmcWaveform::fSignal, and PndEmcWaveform::fWaveformLength.
|
inherited |
Definition at line 415 of file PndEmcWaveform.cxx.
References Double_t, PndEmcWaveform::fSampleRate, PndEmcWaveform::fSignal, PndEmcWaveform::fSignalError, g, and i.
Referenced by PndEmcWaveformWriteoutBuffer::WriteToFile().
|
inherited |
Definition at line 173 of file PndEmcWaveform.cxx.
References Double_t, energy, PndEmcHit::GetEnergy(), and PndEmcWaveform::MakeWaveform().
Referenced by PndEmcHitsToWaveform::Exec(), PndEmcWaveform::GetNormalisation(), PndEmcWaveformToDigi::Init(), PndEmcWaveformToCalibratedDigi::Init(), and PndEmcMultiWaveformToCalibratedDigi::Init().
|
friend |
Definition at line 26 of file PndEmcMultiWaveform.h.
|
staticprotectedinherited |
Definition at line 157 of file PndEmcWaveform.h.
Referenced by PndEmcWaveform::operator<().
|
private |
Definition at line 51 of file PndEmcMultiWaveform.h.
Referenced by GetActiveWaveform(), GetSignal(), and SetActiveWaveform().
|
protectedinherited |
Definition at line 152 of file PndEmcWaveform.h.
Referenced by PndEmcWaveform::AddElecNoiseAndDigitise(), PndEmcWaveform::AddShapedElecNoiseAndDigitise(), and PndEmcWaveform::GetBaseline().
|
protectedinherited |
Definition at line 145 of file PndEmcWaveform.h.
Referenced by PndEmcWaveform::GetDetectorId(), PndEmcWaveform::GetModule(), PndEmcWaveform::GetTCI(), PndEmcWaveform::operator!=(), and PndEmcWaveform::operator==().
|
protectedinherited |
Definition at line 154 of file PndEmcWaveform.h.
Referenced by PndEmcWaveform::AddEvt(), PndEmcWaveform::GetEvtList(), PndEmcWaveform::GetPileupCount(), and PndEmcWaveform::~PndEmcWaveform().
|
protectedinherited |
Definition at line 149 of file PndEmcWaveform.h.
Referenced by PndEmcWaveform::GetHitIndex().
|
staticprotectedinherited |
Definition at line 158 of file PndEmcWaveform.h.
Referenced by PndEmcWaveform::operator<().
|
protectedinherited |
Definition at line 151 of file PndEmcWaveform.h.
Referenced by PndEmcWaveform::GetActiveTime(), PndEmcWaveform::GetSampleRate(), PndEmcWaveform::operator+=(), PndEmcWaveform::SetSampleRate(), and PndEmcWaveform::ToTGraph().
|
protectedinherited |
Definition at line 147 of file PndEmcWaveform.h.
Referenced by PndEmcWaveform::AddElecNoise(), PndEmcWaveform::AddElecNoiseAndDigitise(), PndEmcWaveform::AddShapedElecNoiseAndDigitise(), Clear(), PndEmcWaveform::Clear(), PndEmcWaveform::clearAndReset(), PndEmcWaveform::Digitise(), PndEmcWaveform::GetSignal(), PndEmcAbsWaveformModifier::GetWaveformReference(), PndEmcWaveform::Integral(), PndEmcWaveform::MakeWaveform(), PndEmcWaveform::Max(), PndEmcWaveform::operator+=(), PndEmcWaveform::SetWaveform(), PndEmcWaveform::ToTGraph(), ~PndEmcMultiWaveform(), and PndEmcWaveform::~PndEmcWaveform().
|
protectedinherited |
Definition at line 148 of file PndEmcWaveform.h.
Referenced by PndEmcWaveform::AddElecNoiseAndDigitise(), PndEmcWaveform::AddShapedElecNoiseAndDigitise(), PndEmcWaveform::GetSignalError(), PndEmcWaveform::MakeWaveform(), PndEmcWaveform::operator+=(), PndEmcWaveform::ToTGraph(), and PndEmcWaveform::~PndEmcWaveform().
|
private |
Definition at line 50 of file PndEmcMultiWaveform.h.
Referenced by Clear(), clearAndReset(), GetNumberOfWaveforms(), GetSignal(), SetWaveform(), and ~PndEmcMultiWaveform().
|
protectedinherited |
Definition at line 144 of file PndEmcWaveform.h.
Referenced by PndEmcWaveform::GetTrackId().
|
protectedinherited |
Definition at line 146 of file PndEmcWaveform.h.
Referenced by PndEmcWaveform::AddElecNoise(), PndEmcWaveform::AddElecNoiseAndDigitise(), PndEmcWaveform::AddShapedElecNoiseAndDigitise(), clearAndReset(), PndEmcWaveform::Digitise(), PndEmcWaveform::GetActiveTime(), PndEmcWaveform::GetWaveformLength(), PndEmcWaveform::MakeWaveform(), PndEmcWaveform::operator+=(), SetWaveform(), and PndEmcWaveform::SetWaveform().
|
staticprotectedinherited |
Definition at line 159 of file PndEmcWaveform.h.
Referenced by PndEmcWaveform::operator<().