PandaRoot
BSEmcBwEndcapDigiPar.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 //#pragma once
14 #ifndef BSEMCBWDIGIPAR_HH
15 #define BSEMCBWDIGIPAR_HH
16 #include <string>
17 
18 #include "Rtypes.h"
19 #include "RtypesCore.h"
20 #include "TArrayD.h"
21 #include "TString.h"
22 
23 #include "FairParGenericSet.h"
24 #include "FairParamList.h"
25 
26 class FairParamList;
27 class TBuffer;
28 class TClass;
29 class TMemberInspector;
30 
35 class BSEmcBwEndcapDigiPar : public FairParGenericSet {
36  public:
37  static std::string fgParameterName;
38  BSEmcBwEndcapDigiPar(const char *name = "BSEmcBwEndcapDigiPar", const char *title = "Emc digi parameter", const char *context = "TestDefaultContext");
39  virtual ~BSEmcBwEndcapDigiPar(void){};
40 
41  /* signal generator */
42  Int_t GetUseDigiEffectiveSmearingMode() { return fUse_photon_statistic; }
43  Double_t GetQuantumEfficiency() { return fQuantumEfficiencyAPD; }
44  Double_t GetExcessNoiseFactor() { return fExcessNoiseFactorAPD; }
45  Double_t GetSensitiveArea() { return fSensitiveAreaAPD; }
46  Double_t GetDetectedPhotonsPerMeV() { return fDetectedPhotonsPerMeV; }
47  Double_t GetRearCrystalSurfaceArea() { return fRearCrystalSurfaceArea; }
48  Double_t GetTimeBeforeHit() { return fTimeBeforeHit; }
49  Double_t GetTimeAfterHit() { return fTimeAfterHit; }
50  Double_t GetActiveTimeIncrement() { return fActiveTimeIncrement; }
51  Double_t GetWfCutOffEnergy() { return fWfCutOffEnergy; } // GeV //0.001
52  Double_t GetSampleRate() { return fSampleRate; } // ns^-1 <-> GHz //0.08
53  Int_t GetNBits() { return fNBits; } // 1 //14
54  Double_t GetEnCalib() { return fEnCalib; } // GeV/channel
55  Double_t GetPulseshapeTau() { return fPulseshapeTau; } // ns //68.7
56  Double_t GetPulseshapeN() { return fPulseshapeN; } // N //1.667
57  Double_t GetHGLGRatio() { return fHGLGRatio; } // 10.5
58  Double_t GetADCNoiseHigh() { return fADCNoiseHigh; }
59  Double_t GetADCNoiseLow() { return fADCNoiseLow; }
60  Double_t GetFENoiseHigh() { return fFENoiseHigh; }
61  Double_t GetFENoiseLow() { return fFENoiseLow; }
62  Double_t GetPsSigmaHigh() { return fPsSigmaHigh; }
63  Double_t GetPsSigmaLow() { return fPsSigmaLow; }
64  Double_t GetGesSigmaHigh() { return fGesSigmaHigh; }
65  Double_t GetGesSigmaLow() { return fGesSigmaLow; }
66  const TArrayD &GetPSFreq() { return fPSFreq; }
67  const TArrayD &GetPSPowerHigh() { return fPSPowerHigh; }
68  const TArrayD &GetPSPowerLow() { return fPSPowerLow; }
69 
70  /* feature extraction */
71  Double_t GetSignalOverflowHigh() { return fSignalOverflowHigh; }
72  const TArrayD &GetFIRCoeff() { return fFIRCoeff; }
73  Int_t GetTmaxTaps() { return fTmaxTaps; }
74  Int_t GetTmaxGap() { return fTmaxGap; }
75  Double_t GetTmaxHitThresholdHigh() { return fTmaxHitThresholdHigh; }
76  Double_t GetTmaxHitThresholdLow() { return fTmaxHitThresholdLow; }
77  Double_t GetTmaxTutPeak() { return fTmaxTutPeak; }
78  Double_t GetTmaxHitVal() { return fTmaxHitVal; }
79  Double_t GetEnergyDigiThreshold() { return fEnergyDigiThreshold; }
80 
81  virtual void putParams(FairParamList *t_list) /*override*/;
82  virtual Bool_t getParams(FairParamList *t_list) /*override*/;
83 
84  private:
85  // Empty method, WHY is this Called in constructor(FIXME)
86  // void clear(void){};
87 
88  Int_t fUse_photon_statistic{0};
89  Double_t fQuantumEfficiencyAPD{0};
90  Double_t fExcessNoiseFactorAPD{0};
91  Double_t fSensitiveAreaAPD{0};
92  Double_t fRearCrystalSurfaceArea{0};
93  Double_t fDetectedPhotonsPerMeV{0};
94 
95  Double_t fTimeBeforeHit{0};
96  Double_t fTimeAfterHit{0};
97  Double_t fActiveTimeIncrement{0};
98  Double_t fWfCutOffEnergy{0};
99  Double_t fSampleRate{0};
100  Int_t fNBits{0};
101  Double_t fEnCalib{0};
102  Double_t fPulseshapeTau{0};
103  Double_t fPulseshapeN{0};
104  Double_t fHGLGRatio{0};
105  Double_t fADCNoiseHigh{0};
106  Double_t fADCNoiseLow{0};
107  Double_t fFENoiseHigh{0};
108  Double_t fFENoiseLow{0};
109  Double_t fPsSigmaHigh{0};
110  Double_t fPsSigmaLow{0};
111  Double_t fGesSigmaHigh{0};
112  Double_t fGesSigmaLow{0};
113  TArrayD fPSFreq{};
114  TArrayD fPSPowerHigh{};
115  TArrayD fPSPowerLow{};
116 
117  Double_t fSignalOverflowHigh{0};
118  TArrayD fFIRCoeff{};
119  Int_t fTmaxTaps{0};
120  Int_t fTmaxGap{0};
121  Double_t fTmaxHitThresholdHigh{0};
122  Double_t fTmaxHitThresholdLow{0};
123  Double_t fTmaxTutPeak{0};
124  Double_t fTmaxHitVal{0};
125  Double_t fEnergyDigiThreshold{0};
126 
127  ClassDef(BSEmcBwEndcapDigiPar, 1)
128 };
129 
130 #endif /*BSEMCBWDIGIPAR_HH*/
Double_t GetRearCrystalSurfaceArea()
virtual Bool_t getParams(FairParamList *t_list)
virtual ~BSEmcBwEndcapDigiPar(void)
const TArrayD & GetPSPowerHigh()
const TArrayD & GetPSPowerLow()
parameter set of Emc digitisation
const TArrayD & GetPSFreq()
BSEmcBwEndcapDigiPar(const char *name="BSEmcBwEndcapDigiPar", const char *title="Emc digi parameter", const char *context="TestDefaultContext")
const TArrayD & GetFIRCoeff()
static std::string fgParameterName
virtual void putParams(FairParamList *t_list)