Pandora
Pandora source code navigator
Loading...
Searching...
No Matches
LArTPC.h
Go to the documentation of this file.
1
8#ifndef PANDORA_LAR_TPC_H
9#define PANDORA_LAR_TPC_H 1
10
12
13#include <string>
14
15namespace pandora
16{
17
18template<typename T, typename S> class PandoraObjectFactory;
19
20//------------------------------------------------------------------------------------------------------------------------------------------
21
25class LArTPC
26{
27public:
33 unsigned int GetLArTPCVolumeId() const;
34
40 float GetCenterX() const;
41
47 float GetCenterY() const;
48
54 float GetCenterZ() const;
55
61 float GetWidthX() const;
62
68 float GetWidthY() const;
69
75 float GetWidthZ() const;
76
82 float GetWirePitchU() const;
83
89 float GetWirePitchV() const;
90
96 float GetWirePitchW() const;
97
103 float GetWireAngleU() const;
104
110 float GetWireAngleV() const;
111
117 float GetWireAngleW() const;
118
124 float GetSigmaUVW() const;
125
131 bool IsDriftInPositiveX() const;
132
133protected:
140
144 virtual ~LArTPC();
145
146 unsigned int m_larTPCVolumeId;
147 float m_centerX;
148 float m_centerY;
149 float m_centerZ;
150 float m_widthX;
151 float m_widthY;
152 float m_widthZ;
161
162 friend class GeometryManager;
163 friend class PandoraObjectFactory<object_creation::Geometry::LArTPC::Parameters, object_creation::Geometry::LArTPC::Object>;
164};
165
166//------------------------------------------------------------------------------------------------------------------------------------------
167
168inline unsigned int LArTPC::GetLArTPCVolumeId() const
169{
170 return m_larTPCVolumeId;
171}
172
173//------------------------------------------------------------------------------------------------------------------------------------------
174
175inline float LArTPC::GetCenterX() const
176{
177 return m_centerX;
178}
179
180//------------------------------------------------------------------------------------------------------------------------------------------
181
182inline float LArTPC::GetCenterY() const
183{
184 return m_centerY;
185}
186
187//------------------------------------------------------------------------------------------------------------------------------------------
188
189inline float LArTPC::GetCenterZ() const
190{
191 return m_centerZ;
192}
193
194//------------------------------------------------------------------------------------------------------------------------------------------
195
196inline float LArTPC::GetWidthX() const
197{
198 return m_widthX;
199}
200
201//------------------------------------------------------------------------------------------------------------------------------------------
202
203inline float LArTPC::GetWidthY() const
204{
205 return m_widthY;
206}
207
208//------------------------------------------------------------------------------------------------------------------------------------------
209
210inline float LArTPC::GetWidthZ() const
211{
212 return m_widthZ;
213}
214
215//------------------------------------------------------------------------------------------------------------------------------------------
216
217inline float LArTPC::GetWirePitchU() const
218{
219 return m_wirePitchU;
220}
221
222//------------------------------------------------------------------------------------------------------------------------------------------
223
224inline float LArTPC::GetWirePitchV() const
225{
226 return m_wirePitchV;
227}
228
229//------------------------------------------------------------------------------------------------------------------------------------------
230
231inline float LArTPC::GetWirePitchW() const
232{
233 return m_wirePitchW;
234}
235
236//------------------------------------------------------------------------------------------------------------------------------------------
237
238inline float LArTPC::GetWireAngleU() const
239{
240 return m_wireAngleU;
241}
242
243//------------------------------------------------------------------------------------------------------------------------------------------
244
245inline float LArTPC::GetWireAngleV() const
246{
247 return m_wireAngleV;
248}
249
250//------------------------------------------------------------------------------------------------------------------------------------------
251
252inline float LArTPC::GetWireAngleW() const
253{
254 return m_wireAngleW;
255}
256
257//------------------------------------------------------------------------------------------------------------------------------------------
258
259inline float LArTPC::GetSigmaUVW() const
260{
261 return m_sigmaUVW;
262}
263
264//------------------------------------------------------------------------------------------------------------------------------------------
265
266inline bool LArTPC::IsDriftInPositiveX() const
267{
269}
270
271} // namespace pandora
272
273#endif // #ifndef PANDORA_LAR_TPC_H
Header file for pandora object creation classes.
GeometryManager class.
LArTPC class.
Definition LArTPC.h:26
float GetWireAngleV() const
Get the v wire angle to the vertical, units radians.
Definition LArTPC.h:245
float m_widthY
The width in y, units mm.
Definition LArTPC.h:151
float m_wireAngleU
The u wire angle to the vertical, units radians.
Definition LArTPC.h:156
float m_wirePitchU
The u wire pitch, units mm.
Definition LArTPC.h:153
float GetWirePitchU() const
Get the u wire pitch, units mm.
Definition LArTPC.h:217
float GetCenterY() const
Get center in y, units mm.
Definition LArTPC.h:182
float GetWidthZ() const
Get the width in z, units mm.
Definition LArTPC.h:210
float m_centerX
The center in x, units mm.
Definition LArTPC.h:147
float m_widthX
The width in x, units mm.
Definition LArTPC.h:150
float GetWireAngleW() const
Get the w wire angle to the vertical, units radians.
Definition LArTPC.h:252
float m_wireAngleW
The w wire angle to the vertical, units radians.
Definition LArTPC.h:158
float m_sigmaUVW
The u, v, w resolution, units mm.
Definition LArTPC.h:159
float GetCenterZ() const
Get center in z, units mm.
Definition LArTPC.h:189
float m_wireAngleV
The v wire angle to the vertical, units radians.
Definition LArTPC.h:157
bool IsDriftInPositiveX() const
Whether the electron drift is in the positive x direction.
Definition LArTPC.h:266
float GetCenterX() const
Get center in x, units mm.
Definition LArTPC.h:175
float m_centerZ
The center in z, units mm.
Definition LArTPC.h:149
float GetWirePitchV() const
Get the v wire pitch, units mm.
Definition LArTPC.h:224
float GetWidthX() const
Get the width in x, units mm.
Definition LArTPC.h:196
float GetWidthY() const
Get the width in y, units mm.
Definition LArTPC.h:203
float GetWireAngleU() const
Get the u wire angle to the vertical, units radians.
Definition LArTPC.h:238
bool m_isDriftInPositiveX
Whether the electron drift is in the positive x direction.
Definition LArTPC.h:160
virtual ~LArTPC()
Destructor.
Definition LArTPC.cc:35
float GetWirePitchW() const
Get the w wire pitch, units mm.
Definition LArTPC.h:231
float m_centerY
The center in y, units mm.
Definition LArTPC.h:148
unsigned int GetLArTPCVolumeId() const
Get the lar volume id, uniquely specifying the lar tpc.
Definition LArTPC.h:168
float m_wirePitchW
The w wire pitch, units mm.
Definition LArTPC.h:155
float m_widthZ
The width in z, units mm.
Definition LArTPC.h:152
unsigned int m_larTPCVolumeId
The lar tpc volume id, must uniquely specify a single lar tpc.
Definition LArTPC.h:146
float m_wirePitchV
The v wire pitch, units mm.
Definition LArTPC.h:154
float GetSigmaUVW() const
Get the u, v, w resolution, units mm.
Definition LArTPC.h:259
PandoraObjectFactory class.