2 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
5 /////////////////////////////////////////////////////////////////
7 // File: TRTDigSettings.icc //
9 // Author: Thomas Kittelmann <kittel@nbi.dk> //
11 // First version: April 2005. Rewritten November 2005. //
13 // Class containing parameters and settings mainly used by TRT //
16 /////////////////////////////////////////////////////////////////
18 inline double TRTDigSettings::attenuationLength() const {
19 return m_attenuationLength;
21 inline bool TRTDigSettings::useAttenuation() const {
22 return m_useAttenuation;
24 inline bool TRTDigSettings::useMagneticFieldMap() const {
25 return m_useMagneticFieldMap;
27 inline double TRTDigSettings::ionisationPotential(int strawGasType) const {
28 if (strawGasType==0) return m_ionisationPotential;
29 else if (strawGasType==1) return m_ionisationPotentialKrypton;
30 else if (strawGasType==2) return m_ionisationPotentialArgon;
31 else return m_ionisationPotential; // should not happen
33 inline double TRTDigSettings::smearingFactor(int strawGasType) const {
34 if (strawGasType==0) return m_smearingFactor;
35 else if (strawGasType==1) return m_smearingFactorKrypton;
36 else if (strawGasType==2) return m_smearingFactorArgon;
37 else return m_smearingFactor; // should not happen
39 inline double TRTDigSettings::timeInterval() const {
40 return m_timeInterval;
42 inline unsigned int TRTDigSettings::numberOfBins() const {
43 return m_numberOfBins;
45 inline unsigned int TRTDigSettings::numberOfBinsInEncodingBin() const {
46 return m_numberOfBinsInEncodingBin;
48 inline double TRTDigSettings::minDiscriminatorWidth() const {
49 return m_minDiscriminatorWidth;
51 inline double TRTDigSettings::discriminatorSettlingTime() const {
52 return m_discriminatorSettlingTime;
54 inline double TRTDigSettings::discriminatorDeadTime() const {
55 return m_discriminatorDeadTime;
57 inline double TRTDigSettings::distanceToTimeFactor() const {
58 return m_distanceToTimeFactor;
60 inline double TRTDigSettings::signalPropagationSpeed() const {
61 return m_signalPropagationSpeed;
63 inline double TRTDigSettings::lowThresholdBar(int strawGasType) const {
64 if (strawGasType==0) return m_lowThresholdBar;
65 else if (strawGasType==1) return m_lowThresholdBarKrypton;
66 else if (strawGasType==2) return m_lowThresholdBarArgon;
67 else return m_lowThresholdBar; // should not happen
69 inline double TRTDigSettings::lowThresholdEC(int strawGasType) const {
70 if (strawGasType==0) return m_lowThresholdEC;
71 else if (strawGasType==1) return m_lowThresholdECKrypton;
72 else if (strawGasType==2) return m_lowThresholdECArgon;
73 else return m_lowThresholdEC; // should not happen
75 inline double TRTDigSettings::highThresholdBarShort(int strawGasType) const {
76 if (strawGasType==0) return m_highThresholdBarShort;
77 else if (strawGasType==1) return m_highThresholdBarShortKrypton;
78 else if (strawGasType==2) return m_highThresholdBarShortArgon;
79 else return m_highThresholdBarShort; // should not happen
81 inline double TRTDigSettings::highThresholdBarLong(int strawGasType) const {
82 if (strawGasType==0) return m_highThresholdBarLong;
83 else if (strawGasType==1) return m_highThresholdBarLongKrypton;
84 else if (strawGasType==2) return m_highThresholdBarLongArgon;
85 else return m_highThresholdBarLong; // should not happen
87 inline double TRTDigSettings::highThresholdECAwheels(int strawGasType) const {
88 if (strawGasType==0) return m_highThresholdECAwheels;
89 else if (strawGasType==1) return m_highThresholdECAwheelsKrypton;
90 else if (strawGasType==2) return m_highThresholdECAwheelsArgon;
91 else return m_highThresholdECAwheels; // should not happen
93 inline double TRTDigSettings::highThresholdECBwheels(int strawGasType) const {
94 if (strawGasType==0) return m_highThresholdECBwheels;
95 else if (strawGasType==1) return m_highThresholdECBwheelsKrypton;
96 else if (strawGasType==2) return m_highThresholdECBwheelsArgon;
97 else return m_highThresholdECBwheels; // should not happen
99 inline double TRTDigSettings::trEfficiencyBarrel(int strawGasType) const {
100 if (strawGasType==0) return m_trEfficiencyBarrel;
101 else if (strawGasType==1) return m_trEfficiencyBarrelKrypton;
102 else if (strawGasType==2) return m_trEfficiencyBarrelArgon;
103 else return m_trEfficiencyBarrel; // should not happen
105 inline double TRTDigSettings::trEfficiencyEndCapA(int strawGasType) const {
106 if (strawGasType==0) return m_trEfficiencyEndCapA;
107 else if (strawGasType==1) return m_trEfficiencyEndCapAKrypton;
108 else if (strawGasType==2) return m_trEfficiencyEndCapAArgon;
109 else return m_trEfficiencyEndCapA; // should not happen
111 inline double TRTDigSettings::trEfficiencyEndCapB(int strawGasType) const {
112 if (strawGasType==0) return m_trEfficiencyEndCapB;
113 else if (strawGasType==1) return m_trEfficiencyEndCapBKrypton;
114 else if (strawGasType==2) return m_trEfficiencyEndCapBArgon;
115 else return m_trEfficiencyEndCapB; // should not happen
117 inline int TRTDigSettings::htT0shiftBarShort() const {
118 return m_htT0shiftBarShort;
120 inline int TRTDigSettings::htT0shiftBarLong() const {
121 return m_htT0shiftBarLong;
123 inline int TRTDigSettings::htT0shiftECAwheels() const {
124 return m_htT0shiftECAwheels;
126 inline int TRTDigSettings::htT0shiftECBwheels() const {
127 return m_htT0shiftECBwheels;
129 inline int TRTDigSettings::ltT0shiftBarShort(int strawGasType) const {
130 if (strawGasType==0) return m_ltT0shiftBarShortXe;
131 else if (strawGasType==1) return m_ltT0shiftBarShortKr;
132 else if (strawGasType==2) return m_ltT0shiftBarShortAr;
133 else return 0; // should not happen
135 inline int TRTDigSettings::ltT0shiftBarLong(int strawGasType) const {
136 if (strawGasType==0) return m_ltT0shiftBarLongXe;
137 else if (strawGasType==1) return m_ltT0shiftBarLongKr;
138 else if (strawGasType==2) return m_ltT0shiftBarLongAr;
139 else return 0; // should not happen
141 inline int TRTDigSettings::ltT0shiftECAwheels(int strawGasType) const {
142 if (strawGasType==0) return m_ltT0shiftECAwheelsXe;
143 else if (strawGasType==1) return m_ltT0shiftECAwheelsKr;
144 else if (strawGasType==2) return m_ltT0shiftECAwheelsAr;
145 else return 0; // should not happen
147 inline int TRTDigSettings::ltT0shiftECBwheels(int strawGasType) const {
148 if (strawGasType==0) return m_ltT0shiftECBwheelsXe;
149 else if (strawGasType==1) return m_ltT0shiftECBwheelsKr;
150 else if (strawGasType==2) return m_ltT0shiftECBwheelsAr;
151 else return 0; // should not happen
153 inline double TRTDigSettings::innerRadiusOfStraw() const {
154 return m_innerRadiusOfStraw;
156 inline double TRTDigSettings::outerRadiusOfWire() const {
157 return m_outerRadiusOfWire;
159 inline double TRTDigSettings::lengthOfDeadRegion() const {
160 return m_lengthOfDeadRegion;
162 inline bool TRTDigSettings::timeCorrection() const {
163 return m_timeCorrection;
165 inline unsigned int TRTDigSettings::numberOfCrossingsBeforeMain() const {
166 return m_numberOfCrossingsBeforeMain;
168 inline unsigned int TRTDigSettings::cosmicFlag() const {
171 inline bool TRTDigSettings::isCTB() const {
174 inline bool TRTDigSettings::isOverlay() const {
177 inline bool TRTDigSettings::killEndCap() const {
180 inline bool TRTDigSettings::killBarrel() const {
183 inline double TRTDigSettings::jitterTimeOffset() const {
184 return m_jitterTimeOffset;
186 inline bool TRTDigSettings::doCosmicTimingPit() const {
187 return m_doCosmicTimingPit;
189 inline bool TRTDigSettings::doCrosstalk() const {
190 return m_doCrosstalk;
192 inline double TRTDigSettings::pileUpSDOsMinEkin() const {
193 return m_pileUpSDOsMinEkin;
195 inline double TRTDigSettings::maxVertexDisplacement() const {
196 return m_maxVertexDisplacement;
198 inline double TRTDigSettings::timeOffsetCalcVertexX() const {
199 return m_timeOffsetCalcVertexX;
201 inline double TRTDigSettings::timeOffsetCalcVertexY() const {
202 return m_timeOffsetCalcVertexY;
204 inline double TRTDigSettings::timeOffsetCalcVertexZ() const {
205 return m_timeOffsetCalcVertexZ;
207 inline bool TRTDigSettings::electronicsAreAtFarEnd() const {
208 return m_electronicsAreAtFarEnd;
210 inline bool TRTDigSettings::timeshiftsSymmetricForPhiSectors() const {
211 return m_timeshiftsSymmetricForPhiSectors;
213 inline bool TRTDigSettings::noiseInUnhitStraws() const {
214 return m_noiseInUnhitStraws;
216 inline bool TRTDigSettings::noiseInSimhits() const {
217 return m_noiseInSimhits;
219 inline double TRTDigSettings::fastElectronicsNoisePulseDistance() const {
220 return m_fastElectronicsNoisePulseDistance;
222 inline double TRTDigSettings::slowPeriodicNoisePulseDistance() const {
223 return m_slowPeriodicNoisePulseDistance;
225 inline double TRTDigSettings::slowPeriodicNoisePulseFraction() const {
226 return m_slowPeriodicNoisePulseFraction;
228 inline double TRTDigSettings::averageNoiseLevel() const {
229 return m_averageNoiseLevel;
231 inline double TRTDigSettings::crossTalkNoiseLevel() const {
232 return m_crosstalkNoiseLevel;
234 inline double TRTDigSettings::crossTalkNoiseLevelOtherEnd() const {
235 return m_crosstalkNoiseLevelOtherEnd;
237 inline double TRTDigSettings::relativeLowThresholdFluctuation() const {
238 return m_relativeLowThresholdFluctuation;
240 inline double TRTDigSettings::relativeHighThresholdFluctuation() const {
241 return m_relativeHighThresholdFluctuation;
243 inline double TRTDigSettings::solenoidFieldStrength() const {
244 return m_solenoidFieldStrength;
246 inline unsigned int TRTDigSettings::storeSDO() const {
249 inline bool TRTDigSettings::getT0FromData() const {
250 return m_getT0FromData;
252 inline double TRTDigSettings::TrtRangeCutProperty() const {
253 return m_trtRangeCutProperty;