PandaRoot
PndEmcPSATmaxAnalyser.h
Go to the documentation of this file.
1 //****************************************************************************
2 //* This file is part of PandaRoot. *
3 //* *
4 //* PandaRoot is distributed under the terms of the *
5 //* GNU General Public License (GPL) version 3, *
6 //* copied verbatim in the file "LICENSE". *
7 //* *
8 //* Copyright (C) 2006 - 2024 FAIR GmbH and copyright holders of PandaRoot *
9 //* The copyright holders are listed in the file "COPYRIGHTHOLDERS". *
10 //* The authors are listed in the file "AUTHORS". *
11 //****************************************************************************
12 
13 //-----------------------------------------------------------
14 // Description:
15 // Class of TMAX filter for feature extraction
16 // Guang Zhao
17 //-----------------------------------------------------------
18 
19 #ifndef PNDEMCPSATMAXANALYSER_HH
20 #define PNDEMCPSATMAXANALYSER_HH
21 
22 #include "PndEmcAbsPSA.h"
23 
24 #include "TString.h"
25 
26 class PndEmcWaveform;
27 
29 {
30 
31 public:
32  PndEmcPSATmaxAnalyser(const Double_t* coeff, Int_t taps, Int_t gap, Int_t samplingrate,
33  Double_t hit_threshold, Double_t tut_peak, Double_t hit_val, Int_t verbose);
34  virtual ~PndEmcPSATmaxAnalyser();
35 
36  virtual Int_t Process(const PndEmcWaveform *waveform);
37 
38  virtual void GetHit(Int_t i, Double_t &Energy, Double_t &Time);
39 
40  virtual void Reset();
41 
42 
43 private:
44  Double_t* fir(Double_t*, Int_t);
45  Double_t hit_det(Int_t tut_int);
46 
47  Int_t fTaps;
48  Int_t fGap;
49  Double_t fHitThr;
50  Double_t fTutPeak;
51  Double_t fHitVal;
52  const Double_t *fFIRCoeff;
53  Double_t fTimeStep;
54 
55  std::vector<Double_t> fEnergyList;
56  std::vector<Double_t> fTimeList;
57 
58  Int_t fVerbose;
59 
61 };
62 
63 #endif
64 
PndEmcPSATmaxAnalyser(const Double_t *coeff, Int_t taps, Int_t gap, Int_t samplingrate, Double_t hit_threshold, Double_t tut_peak, Double_t hit_val, Int_t verbose)
virtual Int_t Process(const PndEmcWaveform *waveform)
Find Hits in Waveform.
virtual void Reset()
reset found hits
ClassDef(PndEmcAbsPSA, 1)
unsigned int i
Definition: P4_F32vec4.h:33
represents a simulated waveform in an emc crystal
Baseclass for pulseshapeanalysis ( featureextraction )
Definition: PndEmcAbsPSA.h:33
virtual ~PndEmcPSATmaxAnalyser()
virtual void GetHit(Int_t i, Double_t &Energy, Double_t &Time)
Get energy and time of hit.