PandaRoot
PndEmcDigiPar.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 PNDEMCDIGIPAR_H
15 #define PNDEMCDIGIPAR_H
16 
17 #include "FairParGenericSet.h"
18 #include "FairParamList.h"
19 
24 class PndEmcDigiPar : public FairParGenericSet {
25  public:
26  Double_t GetEnergyHitThreshold() { return fEnergyHitThreshold; };
27  Double_t GetDetectedPhotonsPerMeV() { return fDetectedPhotonsPerMeV; };
28  Double_t GetDetectedPhotonsPerMeV_PMT() { return fDetectedPhotonsPerMeV_PMT; };
29  Double_t GetSensitiveAreaAPD() { return fSensitiveAreaAPD; };
30  Double_t GetSensitiveAreaVPT() { return fSensitiveAreaVPT; };
31  Double_t GetQuantumEfficiencyAPD() { return fQuantumEfficiencyAPD; };
32  Double_t GetQuantumEfficiencyVPT() { return fQuantumEfficiencyVPT; };
33  Double_t GetQuantumEfficiencyPMT() { return fQuantumEfficiencyPMT; };
34  Double_t GetExcessNoiseFactorAPD() { return fExcessNoiseFactorAPD; };
35  Double_t GetExcessNoiseFactorVPT() { return fExcessNoiseFactorVPT; };
36  Double_t GetExcessNoiseFactorPMT() { return fExcessNoiseFactorPMT; };
37  Double_t GetIncoherent_elec_noise_width_GeV_APD() { return fIncoherent_elec_noise_width_GeV_APD; };
38  Double_t GetIncoherent_elec_noise_width_GeV_VPT() { return fIncoherent_elec_noise_width_GeV_VPT; };
39  Double_t GetEnergyRange() { return fEnergyRange; };
40  Double_t GetEnergyRangeBW() { return fEnergyRangeBW; };
41  Double_t GetFirstSamplePhase() { return fFirstSamplePhase; };
42  Double_t GetASIC_Shaping_int_time() { return fASIC_Shaping_int_time; };
43  Double_t GetPMT_Shaping_int_time() { return fPMT_Shaping_int_time; };
44  Double_t GetPMT_Shaping_diff_time() { return fPMT_Shaping_diff_time; };
45  Double_t GetFWD_Shaping_int_time() { return fFWD_Shaping_int_time; };
46  Double_t GetFWD_time_constant() { return fFWD_time_constant; };
47  Double_t GetCrystal_time_constant() { return fCrystal_time_constant; };
48  Double_t GetShashlyk_time_constant() { return fShashlyk_time_constant; };
49  Double_t GetShashlykSamplingFactor() { return fShashlykSamplingFactor; };
50  Double_t GetSampleRate() { return fSampleRate; };
51  Double_t GetSampleRate_PMT() { return fSampleRate_PMT; };
52  Double_t GetSampleRate_FWD() { return fSampleRate_FWD; };
53  Double_t GetEnergyDigiThreshold() { return fEnergyDigiThreshold; };
54  Int_t GetNBits() { return fNBits; };
55  Int_t GetNumber_of_samples_in_waveform() { return fNumber_of_samples_in_waveform; };
56  Int_t GetNumber_of_samples_in_waveform_pmt() { return fNumber_of_samples_in_waveform_pmt; };
57  Int_t GetNumber_of_samples_in_waveform_fwd() { return fNumber_of_samples_in_waveform_fwd; };
58  Int_t GetUse_shaped_noise() { return fUse_shaped_noise; };
59  Int_t GetUse_photon_statistic() { return fUse_photon_statistic; };
60  Int_t GetUseDigiEffectiveSmearing() { return fUseDigiEffectiveSmearing; };
61  Int_t GetNoiseAllChannels() { return fNoiseAllChannels; };
62  Int_t GetUse_nonuniformity() { return fUse_nonuniformity; };
63 
64  PndEmcDigiPar(const char *name = "PndEmcDigiPar", const char *title = "Emc digi parameter", const char *context = "TestDefaultContext");
65  ~PndEmcDigiPar(void){};
66 
67  // Empty method, WHY is this Called in constructor(FIXME)
68  void clear(void){};
69 
70  void putParams(FairParamList *list);
71  Bool_t getParams(FairParamList *list);
72 
73  private:
74  Double_t fEnergyHitThreshold;
75  Double_t fDetectedPhotonsPerMeV;
76  Double_t fDetectedPhotonsPerMeV_PMT;
77  Double_t fSensitiveAreaAPD; // mm^2
78  Double_t fSensitiveAreaVPT; // mm^2
79  Double_t fQuantumEfficiencyAPD;
80  Double_t fQuantumEfficiencyVPT;
81  Double_t fQuantumEfficiencyPMT;
82  Double_t fExcessNoiseFactorAPD;
83  Double_t fExcessNoiseFactorVPT;
84  Double_t fExcessNoiseFactorPMT;
85  Double_t fIncoherent_elec_noise_width_GeV_APD;
86  Double_t fIncoherent_elec_noise_width_GeV_VPT;
87  Double_t fEnergyRange;
88  Double_t fEnergyRangeBW;
89  Double_t fFirstSamplePhase;
90  Double_t fASIC_Shaping_int_time;
91  Double_t fPMT_Shaping_int_time;
92  Double_t fPMT_Shaping_diff_time;
93  Double_t fFWD_Shaping_int_time;
94  Double_t fFWD_time_constant;
95  Double_t fCrystal_time_constant;
96  Double_t fShashlyk_time_constant;
97  Double_t fShashlykSamplingFactor;
98  Double_t fSampleRate;
99  Double_t fSampleRate_PMT;
100  Double_t fSampleRate_FWD;
101  Double_t fEnergyDigiThreshold;
102  Int_t fNBits;
103  Int_t fNumber_of_samples_in_waveform;
104  Int_t fNumber_of_samples_in_waveform_pmt;
105  Int_t fNumber_of_samples_in_waveform_fwd;
106  Int_t fUse_shaped_noise;
107  Int_t fUse_photon_statistic;
108  Int_t fUseDigiEffectiveSmearing;
109  Int_t fNoiseAllChannels;
110  Int_t fUse_nonuniformity;
111 
112  ClassDef(PndEmcDigiPar, 9);
113 };
114 
115 #endif
~PndEmcDigiPar(void)
Definition: PndEmcDigiPar.h:65
Double_t GetQuantumEfficiencyVPT()
Definition: PndEmcDigiPar.h:32
Int_t GetNBits()
Definition: PndEmcDigiPar.h:54
Int_t GetUse_photon_statistic()
Definition: PndEmcDigiPar.h:59
Double_t GetSampleRate()
Definition: PndEmcDigiPar.h:50
Double_t GetPMT_Shaping_diff_time()
Definition: PndEmcDigiPar.h:44
Double_t GetQuantumEfficiencyPMT()
Definition: PndEmcDigiPar.h:33
Double_t GetIncoherent_elec_noise_width_GeV_VPT()
Definition: PndEmcDigiPar.h:38
Int_t GetUse_shaped_noise()
Definition: PndEmcDigiPar.h:58
Int_t GetNumber_of_samples_in_waveform()
Definition: PndEmcDigiPar.h:55
void putParams(FairParamList *list)
Double_t GetQuantumEfficiencyAPD()
Definition: PndEmcDigiPar.h:31
Double_t GetIncoherent_elec_noise_width_GeV_APD()
Definition: PndEmcDigiPar.h:37
Double_t GetEnergyRangeBW()
Definition: PndEmcDigiPar.h:40
Double_t GetCrystal_time_constant()
Definition: PndEmcDigiPar.h:47
Int_t GetUseDigiEffectiveSmearing()
Definition: PndEmcDigiPar.h:60
Double_t GetFirstSamplePhase()
Definition: PndEmcDigiPar.h:41
Int_t GetUse_nonuniformity()
Definition: PndEmcDigiPar.h:62
Double_t GetASIC_Shaping_int_time()
Definition: PndEmcDigiPar.h:42
Double_t GetEnergyDigiThreshold()
Definition: PndEmcDigiPar.h:53
Double_t GetSampleRate_FWD()
Definition: PndEmcDigiPar.h:52
void clear(void)
Definition: PndEmcDigiPar.h:68
Double_t GetShashlykSamplingFactor()
Definition: PndEmcDigiPar.h:49
Double_t GetSensitiveAreaAPD()
Definition: PndEmcDigiPar.h:29
parameter set of Emc digitisation
Definition: PndEmcDigiPar.h:24
Bool_t getParams(FairParamList *list)
Double_t GetFWD_Shaping_int_time()
Definition: PndEmcDigiPar.h:45
Double_t GetEnergyRange()
Definition: PndEmcDigiPar.h:39
Double_t GetEnergyHitThreshold()
Definition: PndEmcDigiPar.h:26
Double_t GetDetectedPhotonsPerMeV()
Definition: PndEmcDigiPar.h:27
Int_t GetNumber_of_samples_in_waveform_fwd()
Definition: PndEmcDigiPar.h:57
PndEmcDigiPar(const char *name="PndEmcDigiPar", const char *title="Emc digi parameter", const char *context="TestDefaultContext")
Double_t GetExcessNoiseFactorVPT()
Definition: PndEmcDigiPar.h:35
Double_t GetDetectedPhotonsPerMeV_PMT()
Definition: PndEmcDigiPar.h:28
Double_t GetExcessNoiseFactorAPD()
Definition: PndEmcDigiPar.h:34
Double_t GetFWD_time_constant()
Definition: PndEmcDigiPar.h:46
Double_t GetSampleRate_PMT()
Definition: PndEmcDigiPar.h:51
Double_t GetShashlyk_time_constant()
Definition: PndEmcDigiPar.h:48
Int_t GetNumber_of_samples_in_waveform_pmt()
Definition: PndEmcDigiPar.h:56
Double_t GetPMT_Shaping_int_time()
Definition: PndEmcDigiPar.h:43
Double_t GetSensitiveAreaVPT()
Definition: PndEmcDigiPar.h:30
Double_t GetExcessNoiseFactorPMT()
Definition: PndEmcDigiPar.h:36
Int_t GetNoiseAllChannels()
Definition: PndEmcDigiPar.h:61