PandaRoot
PndEmcShashlykDigiPar.h
Go to the documentation of this file.
1 //#pragma once
2 #ifndef PNDEMCSHASHLYKDIGIPAR_H
3 #define PNDEMCSHASHLYKDIGIPAR_H
4 
5 #include "FairParGenericSet.h"
6 #include "FairParamList.h"
7 
8 #include "TString.h"
9 #include "TArrayD.h"
10 
15 class PndEmcShashlykDigiPar : public FairParGenericSet
16 {
17 public:
18  PndEmcShashlykDigiPar(const char *name = "PndEmcShashlykDigiPar",
19  const char *title = "Emc digi parameter",
20  const char *context = "TestDefaultContext");
22 
23  /* signal generator */
24  Int_t GetUse_photon_statistic() { return fUse_photon_statistic; }
25  Double_t GetQuantumEfficiency() { return fQuantumEfficiency; }
26  Double_t GetExcessNoiseFactor() { return fExcessNoiseFactor; }
27  Double_t GetDetectedPhotonsPerMeV() { return fDetectedPhotonsPerMeV; }
28  Double_t GetSamplingFactor() { return fSamplingFactor; }
29 
30  Double_t GetTimeBeforeHit() { return fTimeBeforeHit; }
31  Double_t GetTimeAfterHit() { return fTimeAfterHit; }
32  Double_t GetActiveTimeIncrement() { return fActiveTimeIncrement; }
33  Double_t GetWfCutOffEnergy() { return fWfCutOffEnergy; } //GeV //0.001
34  Double_t GetSampleRate() { return fSampleRate; } //ns^-1 <-> GHz //0.08
35  Int_t GetNBits() { return fNBits; } //1 //14
36  Double_t GetEnCalib() { return fEnCalib; } //MeV/channel
37  Double_t GetPulseshapeMu() { return fPulseshapeMu; } //ns //68.7
38  Double_t GetPulseshapeSigma() { return fPulseshapeSigma; } //N //1.667
39  Double_t GetNoiseWidth() { return fNoiseWidth; }
40 
41  /* feature extraction */
42  Double_t GetCFFraction() { return fCF_fraction; }
43  Int_t GetCFTap() { return fCF_tap; }
44  Int_t GetCFNSamples() { return fCF_nsamples; }
45  const TArrayD& GetCFTCorr() { return fCF_tcorr; }
46  Int_t GetOFB0() { return fOF_b0; }
47  Int_t GetOFM() { return fOF_m; }
48  const TArrayD& GetOFA() { return fOF_a; }
49  const TArrayD& GetOFB() { return fOF_b; }
50  Double_t GetADCHitThreshold() { return fADCHitThreshold; }
51  Double_t GetEnergyDigiThreshold() { return fEnergyDigiThreshold; }
52 
53  void putParams(FairParamList *list);
54  Bool_t getParams(FairParamList *list);
55 
56 private :
57  // Empty method, WHY is this Called in constructor(FIXME)
58  //void clear(void){};
59 
60  Int_t fUse_photon_statistic;
61  Double_t fQuantumEfficiency;
62  Double_t fExcessNoiseFactor;
63  Double_t fDetectedPhotonsPerMeV;
64  Double_t fSamplingFactor;
65 
66  Double_t fTimeBeforeHit;
67  Double_t fTimeAfterHit;
68  Double_t fActiveTimeIncrement;
69  Double_t fWfCutOffEnergy;
70  Double_t fSampleRate;
71  Int_t fNBits;
72  Double_t fEnCalib;
73  Double_t fPulseshapeMu;
74  Double_t fPulseshapeSigma;
75  Double_t fNoiseWidth;
76 
77  Double_t fCF_fraction;
78  Int_t fCF_tap;
79  Int_t fCF_nsamples;
80  TArrayD fCF_tcorr;
81  Int_t fOF_b0;
82  Int_t fOF_m;
83  TArrayD fOF_a;
84  TArrayD fOF_b;
85  Double_t fADCHitThreshold;
86  Double_t fEnergyDigiThreshold;
87 
88  ClassDef(PndEmcShashlykDigiPar, 1)
89 };
90 
91 #endif
void putParams(FairParamList *list)
parameter set of Emc digitisation
Bool_t getParams(FairParamList *list)
const TArrayD & GetCFTCorr()
PndEmcShashlykDigiPar(const char *name="PndEmcShashlykDigiPar", const char *title="Emc digi parameter", const char *context="TestDefaultContext")