1 #ifndef BSEMCPSAFPGASAMPLEANALYSER_HH 2 #define BSEMCPSAFPGASAMPLEANALYSER_HH 8 #include "RtypesCore.h" 19 class TMemberInspector;
22 constexpr
static Int_t fgMaxNumberOfHits{100};
30 virtual void reset() = 0;
31 virtual void put(Float_t t_valueToStore) = 0;
43 virtual void GetHit(Int_t t_i, Double_t &t_energy, Double_t &t_time);
44 virtual void GetHit(Int_t t_i, Double_t &t_energy, Double_t &t_time, Int_t &t_PileupType);
46 virtual void Init(
const std::vector<Double_t> &t_params);
94 Float_t
fTime[fgMaxNumberOfHits]{};
Baseclass for pulseshapeanalysis ( featureextraction )
BSEmcPSAFPGAFilterDelay * fMA_delay
virtual Float_t baseline()=0
BSEmcPSAFPGAFilterDelay * fSignal_buffer
virtual void GetHit(Int_t t_i, Double_t &t_energy, Double_t &t_time)
Get energy and time of hit.
Int_t samplePileup(Int_t t_index)
ClassDef(BSEmcPSAFPGASampleAnalyser, 2)
Float_t fTime[fgMaxNumberOfHits]
virtual void initFromFile(const std::string &t_fname)
Int_t fCF_zero_crossing_points
BSEmcPSAFPGALinFitter * fCF_Fitter
BSEmcPSAFPGAFilterMA * fMA_triggering
BSEmcPSAFPGASampleAnalyser()
BSEmcPSAFPGAFilterCF * fCF_filter2
Int_t fRough_pulse_timing
Float_t sampleAmplitude(Int_t t_index)
virtual void put(Float_t t_valueToStore)=0
BSEmcPSAFPGAFilterCF * fCF_filter
Float_t sampleTime(Int_t t_index)
Float_t fAmplitude[fgMaxNumberOfHits]
virtual Int_t Process(const BSEmcWaveform *t_waveform)
Find Hits in Waveform.
Float_t sampleIntegral(Int_t t_index)
Int_t fPileups[fgMaxNumberOfHits]
Float_t rough_timing_corr
virtual void setBaseline(Float_t t_newBaseline)
virtual void Init(const std::vector< Double_t > &t_params)
virtual ~BSEmcPSAFPGASampleAnalyser()
virtual void Reset()
reset found hits
SampleAnalyserParams fAnalyserParams
Float_t fIntegral[fgMaxNumberOfHits]
BSEmcPSAFPGAFilterDelay * fSignal_delay
BSEmcPSAFPGAFilterDelay * fCF_delay
virtual void init(SampleAnalyserParams &t_params)