7 #ifndef LAR_PANDORA_GEOMETRY_H 8 #define LAR_PANDORA_GEOMETRY_H 1 32 LArDetectorGap(
const float x1,
const float y1,
const float z1,
const float x2,
const float y2,
const float z2);
95 unsigned int GetCryostat()
const;
100 unsigned int GetTpc()
const;
140 LArDriftVolume(
const unsigned int volumeID,
const bool isPositiveDrift,
141 const float wirePitchU,
const float wirePitchV,
const float wirePitchW,
const float wireAngleU,
const float wireAngleV,
const float wireAngleW,
142 const float centerX,
const float centerY,
const float centerZ,
const float widthX,
const float widthY,
const float widthZ,
143 const float sigmaUVZ,
const LArDaughterDriftVolumeList &tpcVolumeList);
148 unsigned int GetVolumeID()
const;
153 bool IsPositiveDrift()
const;
158 float GetWirePitchU()
const;
163 float GetWirePitchV()
const;
168 float GetWirePitchW()
const;
173 float GetWireAngleU()
const;
178 float GetWireAngleV()
const;
183 float GetWireAngleW()
const;
188 float GetCenterX()
const;
193 float GetCenterY()
const;
198 float GetCenterZ()
const;
203 float GetWidthX()
const;
208 float GetWidthY()
const;
213 float GetWidthZ()
const;
218 float GetSigmaUVZ()
const;
223 const LArDaughterDriftVolumeList &GetTpcVolumeList()
const;
262 static void LoadDetectorGaps(LArDetectorGapList &listOfGaps);
270 static void LoadGeometry(LArDriftVolumeList &outputVolumeList, LArDriftVolumeMap &outputVolumeMap);
279 static unsigned int GetVolumeID(
const LArDriftVolumeMap &driftVolumeMap,
const unsigned int cstat,
const unsigned int tpc);
288 static geo::View_t GetGlobalView(
const unsigned int cstat,
const unsigned int tpc,
const geo::View_t hit_View);
297 static unsigned int GetTpcID(
const unsigned int cstat,
const unsigned int tpc);
305 static bool ShouldSwitchUV(
const unsigned int cstat,
const unsigned int tpc);
312 static bool ShouldSwitchUV(
const bool isPositiveDrift);
320 static void LoadGeometry(LArDriftVolumeList &driftVolumeList);
329 static void LoadGlobalDaughterGeometry(
const LArDriftVolumeList &driftVolumeList, LArDriftVolumeList &daughterVolumeList);
386 m_cryostat(cryostat), m_tpc(tpc)
416 return m_isPositiveDrift;
512 #endif // #ifndef LAR_PANDORA_GEOMETRY_H float GetWidthZ() const
Return Z span of drift volume.
daughter drift volume class to hold properties of daughter drift volumes
std::vector< LArDetectorGap > LArDetectorGapList
Float_t y1[n_points_granero]
enum geo::_plane_proj View_t
Enumerate the possible plane projections.
std::map< unsigned int, LArDriftVolume > LArDriftVolumeMap
LArDetectorGap(const float x1, const float y1, const float z1, const float x2, const float y2, const float z2)
Constructor.
Float_t x1[n_points_granero]
unsigned int GetCryostat() const
return cryostat ID
LArDaughterDriftVolumeList m_tpcVolumeList
std::vector< LArDriftVolume > LArDriftVolumeList
float GetZ1() const
Get lower Z coordinate.
float GetWireAngleW() const
Return wire angle in W view (Pandora convention)
Float_t y2[n_points_geant4]
float GetCenterZ() const
Return Z position at centre of drift volume.
float GetWirePitchW() const
Return wire pitch in W view.
LArPandoraGeometry class.
float GetCenterX() const
Return X position at centre of drift volume.
unsigned int GetVolumeID() const
Return unique ID.
bool IsPositiveDrift() const
Return drift direction (true if positive)
float GetX1() const
Get lower X coordinate.
float GetWireAngleV() const
Return wire angle in V view (Pandora convention)
std::vector< LArDaughterDriftVolume > LArDaughterDriftVolumeList
float GetWidthY() const
Return Y span of drift volume.
LArDaughterDriftVolume(const unsigned int cryostat, const unsigned int tpc)
Constructor.
float GetCenterY() const
Return Y position at centre of drift volume.
float GetWirePitchU() const
Return wire pitch in U view.
float GetSigmaUVZ() const
Return sigmaUVZ parameter (used for matching views)
drift volume class to hold properties of drift volume
float GetWirePitchV() const
Return wire pictch in V view.
float GetWidthX() const
Return X span of drift volume.
Float_t x2[n_points_geant4]
float GetY1() const
Get lower y coordinate.
float GetY2() const
Get upper Y coordinate.
drift volume class to hold properties of drift volume
float GetX2() const
Get upper X coordinate.
float GetZ2() const
Get upper Z coordinate.
float GetWireAngleU() const
Return wire angle in U view (Pandora convention)
unsigned int GetTpc() const
return tpc ID