PandaRoot
PndEmcPSAParabolic.h
Go to the documentation of this file.
1 //-----------------------------------------------------------
2 // Description:
3 // Pulseshape analysis for ADC waveforms
4 // Amplitude and time are determined from the simple parabolic fit
5 // by three points (maximum bin and its left and right neigbours)
6 //
7 //-----------------------------------------------------------
8 
9 #ifndef EMCPSAPARABOLIC_HH
10 #define EMCPSAPARABOLIC_HH
11 
12 // Base Class Headers ----------------
13 #include <vector>
14 #include "PndEmcAbsPSA.h"
15 #include "TObject.h"
16 
17 class PndEmcWaveform;
18 
27  public:
28  // Constructors/Destructors ---------
30  virtual ~PndEmcPSAParabolic() { ; }
31 
32  virtual void Process(const PndEmcWaveform *waveform, Double_t &amplitude, Double_t &time);
33 
34  virtual Int_t Process(const PndEmcWaveform *waveform);
35  virtual void GetHit(Int_t i, Double_t &energy, Double_t &time);
36 
37  void FitPeak(const std::vector<Double_t> &signal, Double_t &ampl, Double_t &pos, Int_t peakBin) const;
38  void FitPeak(const std::vector<Double_t> &signal, Double_t &ampl, Double_t &pos, Int_t start, Int_t end) const;
39  void FitPeak(const std::vector<Double_t> &signal, Double_t &ampl, Double_t &pos) const;
40 
41  private:
42  Double_t lAmplitude;
43  Double_t lTime;
44 };
45 
46 #endif
Pulseshape analysis for ADC waveforms.
virtual void GetHit(Int_t i, Double_t &energy, Double_t &time)
Get energy and time of hit.
unsigned int i
Definition: P4_F32vec4.h:21
represents a simulated waveform in an emc crystal
Baseclass for pulseshapeanalysis ( featureextraction )
Definition: PndEmcAbsPSA.h:21
void FitPeak(const std::vector< Double_t > &signal, Double_t &ampl, Double_t &pos, Int_t peakBin) const
virtual void Process(const PndEmcWaveform *waveform, Double_t &amplitude, Double_t &time)
Deprecated. Do not use.