ATTPCROOT  0.3.0-alpha
A ROOT-based framework for analyzing data from active target detectors
AtDigiPar.cxx
Go to the documentation of this file.
1 #include "AtDigiPar.h"
2 
3 #include <FairLogger.h>
4 #include <FairParGenericSet.h>
5 #include <FairParamList.h>
6 
7 #include <memory>
8 
10 
11 AtDigiPar::AtDigiPar(const Char_t *name, const Char_t *title, const Char_t *context)
12  : FairParGenericSet("AtDigiPar", "AtTPC Parameter Container", ""), fInitialized(kFALSE)
13 {
14 }
15 
17 Int_t AtDigiPar::GetTBTime() const
18 {
19 
20  switch (fSamplingRate) {
21  case 3: return 320;
22  case 6: return 160;
23  case 12: return 80;
24  case 25: return 40;
25  case 50: return 20;
26  case 100: return 10;
27  default: return -1;
28  }
29 }
30 
31 Bool_t AtDigiPar::getParams(FairParamList *paramList) // TODO Change all these parameters
32 {
33  if (!paramList) {
34  LOG(fatal) << "Parameter list doesn't exist!";
35  return kFALSE;
36  }
37 
38  if (!fInitialized) {
39 
40  if (!(paramList->fill("BField", &fBField))) {
41  LOG(fatal) << "Cannot find BField parameter!";
42  return kFALSE;
43  }
44  if (!(paramList->fill("EField", &fEField))) {
45  LOG(fatal) << "Cannot find EField parameter!";
46  return kFALSE;
47  }
48 
49  if (!(paramList->fill("TBEntrance", &fTBEntrance))) {
50  LOG(fatal) << "Cannot find TBEntrance parameter!";
51  return kFALSE;
52  }
53  if (!(paramList->fill("ZPadPlane", &fZPadPlane))) {
54  LOG(fatal) << "Cannot find ZPadPlane parameter!";
55  return kFALSE;
56  }
57 
58  if (!(paramList->fill("EIonize", &fEIonize))) {
59  LOG(fatal) << "Cannot find EIonize parameter!";
60  return kFALSE;
61  }
62  if (!(paramList->fill("Fano", &fFano))) {
63  LOG(fatal) << "Cannot find Fano parameter!";
64  return kFALSE;
65  }
66  if (!(paramList->fill("CoefL", &fCoefL))) {
67  LOG(fatal) << "Cannot find CoefL parameter!";
68  return kFALSE;
69  }
70  if (!(paramList->fill("CoefT", &fCoefT))) {
71  LOG(fatal) << "Cannot find CoefT parameter!";
72  return kFALSE;
73  }
74  if (!(paramList->fill("GasPressure", &fGasPressure))) {
75  LOG(fatal) << "Cannot find GasPressure parameter!";
76  return kFALSE;
77  }
78  if (!(paramList->fill("Density", &fDensity))) {
79  LOG(fatal) << "Cannot find Density parameter!";
80  return kFALSE;
81  }
82  if (!(paramList->fill("DriftVelocity", &fDriftVelocity))) {
83  LOG(fatal) << "Cannot find Density parameter!";
84  return kFALSE;
85  }
86  if (!(paramList->fill("Gain", &fGain))) {
87  LOG(fatal) << "Cannot find Gain parameter!";
88  return kFALSE;
89  }
90 
91  if (!(paramList->fill("SamplingRate", &fSamplingRate))) {
92  LOG(fatal) << "Cannot find GETGain parameter!";
93  return kFALSE;
94  }
95  if (!(paramList->fill("GETGain", &fGETGain))) {
96  LOG(fatal) << "Cannot find GETGain parameter!";
97  return kFALSE;
98  }
99  if (!(paramList->fill("PeakingTime", &fPeakingTime))) {
100  LOG(fatal) << "Cannot find PeakingTime parameter!";
101  return kFALSE;
102  }
103  }
104 
105  return kTRUE;
106 }
107 
108 void AtDigiPar::putParams(FairParamList *paramList)
109 {
110  if (!paramList) {
111  LOG(fatal) << "Parameter list doesn't exist!";
112  return;
113  }
114 
115  paramList->add("EField", fEField);
116  paramList->add("BField", fBField);
117 
118  paramList->add("TBEntrance", fTBEntrance);
119  paramList->add("ZPadPlane", fZPadPlane);
120 
121  paramList->add("EIonize", fEIonize);
122  paramList->add("Fano", fFano);
123  paramList->add("CoefL", fCoefL);
124  paramList->add("CoefT", fCoefT);
125  paramList->add("DriftVelocity", fDriftVelocity);
126  paramList->add("Density", fDensity);
127  paramList->add("GasPressure", fGasPressure);
128  paramList->add("Gain", fGain);
129 
130  paramList->add("SamplingRate", fSamplingRate);
131  paramList->add("GETGain", fGETGain);
132  paramList->add("PeakingTime", fPeakingTime);
133 }
AtDigiPar::getParams
virtual Bool_t getParams(FairParamList *paramList) override
Definition: AtDigiPar.cxx:31
ClassImp
ClassImp(AtDigiPar)
AtDigiPar::GetTBTime
Int_t GetTBTime() const
returns the time duration of a time bucket in given sampling time in ns.
Definition: AtDigiPar.cxx:17
AtDigiPar.h
AtDigiPar
Definition: AtDigiPar.h:14
AtDigiPar::AtDigiPar
AtDigiPar(const Char_t *name, const Char_t *title, const Char_t *context)
Definition: AtDigiPar.cxx:11
AtDigiPar::putParams
virtual void putParams(FairParamList *paramList) override
Definition: AtDigiPar.cxx:108