FairRoot/PandaRoot
PndEmcPSAFPGAPileupAnalyser.h
Go to the documentation of this file.
1 #ifndef PNDEMCFPGAPILEUPANALYSER_HH
2 #define PNDEMCFPGAPILEUPANALYSER_HH
3 
5 #include <string>
6 
7 class PndEmcWaveform;
13 class TF1;
14 
15 #define MAX_NUMBER_OF_HITS 100
16 
18 
19  public:
22  virtual void SetVerbose(Int_t verbose=0) { fVerbose = verbose; }
23 
25 
26  virtual void initFromFile() {};
27  virtual void Init(const std::vector<Double_t> &params, TF1* R_thres, TF1* R_mean, float extBaselineValue=0);
28  virtual void Init(const std::vector<Double_t> &params, TF1* R_thres, TF1* R_mean, unsigned int baselineStartSample, unsigned int baselineStopSample);
29 
30  virtual void GetHit(Int_t i, Double_t &Energy, Double_t &Time);
31  virtual void GetHit(Int_t i, Double_t &Energy, Double_t &Time, pileup_t &PileupType);
32 
33  void GetEnergyMeasures(Int_t i, Double_t &Amplitude, Double_t &Integral);
34  virtual void reset();
35  virtual void put(float valueToStore);
36 
37  virtual float baseline() {return baseline_value;};
38 
39 
40 protected:
42 
43  virtual void setBaseline(float newBaseline);
44  virtual void setBaselineWindow(unsigned int startSample, unsigned int stopSample);
45  virtual void InitParameters(const std::vector<Double_t> &params);
46  virtual void Init2(const std::vector<Double_t> &params, TF1* R_thres, TF1* R_mean);
47  Int_t fVerbose;
48  TF1* Int_thres;
49  TF1* Int_mean;
50 
51  unsigned int BaselineStartSample;
52  unsigned int BaselineStopSample;
53  float BaselineSum;
54 
59 
63 
64  unsigned int cf_crossing;
65  bool in_cfRise;
69 
70 
71 
72 
74 };
75 
76 
77 
78 
79 
80 #endif
Int_t i
Definition: run_full.C:25
PndEmcPSAFPGAFilterMWD * MWD_filter2
virtual void Init2(const std::vector< Double_t > &params, TF1 *R_thres, TF1 *R_mean)
#define verbose
virtual void SetVerbose(Int_t verbose=0)
void GetEnergyMeasures(Int_t i, Double_t &Amplitude, Double_t &Integral)
#define MAX_NUMBER_OF_HITS
virtual void put(float valueToStore)
pileup_t pileups[MAX_NUMBER_OF_HITS]
PndEmcPSAFPGAFilterDelay * CF_prev
virtual void InitParameters(const std::vector< Double_t > &params)
enum PndEmcPSAFPGAPileupAnalyser::@0 baselineMode
Double_t
PndEmcPSAFPGAFilterMWD * MWD_filter3
PndEmcPSAFPGAFilterMWD * MWD_filter1
represents a simulated waveform in an emc crystal
virtual void GetHit(Int_t i, Double_t &Energy, Double_t &Time)
Get energy and time of hit.
virtual void Init(const std::vector< Double_t > &params, TF1 *R_thres, TF1 *R_mean, float extBaselineValue=0)
ClassDef(PndEmcPSAFPGAPileupAnalyser, 2)
virtual void setBaselineWindow(unsigned int startSample, unsigned int stopSample)
virtual void setBaseline(float newBaseline)