LArSoft  v10_04_05
Liquid Argon Software toolkit - https://larsoft.org/
LArPandoraDetectorType.cxx
Go to the documentation of this file.
1 
12 
13 #include <limits>
14 
15 namespace lar_pandora {
16 
18  const geo::TPCID::TPCID_t tpc,
20  const geo::WireReadoutGeom& wireReadoutGeom)
21  {
22  return 0.5f * M_PI - wireReadoutGeom.WireAngleToVertical(view, geo::TPCID{cstat, tpc});
23  }
24 
25  //------------------------------------------------------------------------------------------------------------------------------------------
26 
27  PandoraApi::Geometry::LineGap::Parameters detector_functions::CreateDriftGapParameters(
28  const LArDetectorGap& gap)
29  {
30  PandoraApi::Geometry::LineGap::Parameters parameters;
31  parameters.m_lineGapType = pandora::TPC_DRIFT_GAP;
32  parameters.m_lineStartX = gap.GetX1();
33  parameters.m_lineEndX = gap.GetX2();
34  parameters.m_lineStartZ = -std::numeric_limits<float>::max();
35  parameters.m_lineEndZ = std::numeric_limits<float>::max();
36 
37  return parameters;
38  }
39 
40  //------------------------------------------------------------------------------------------------------------------------------------------
41 
42  PandoraApi::Geometry::LineGap::Parameters detector_functions::CreateReadoutGapParameters(
43  const float firstPoint,
44  const float lastPoint,
45  const float xFirst,
46  const float xLast,
47  const float halfWirePitch,
48  const pandora::LineGapType gapType)
49  {
50  PandoraApi::Geometry::LineGap::Parameters parameters;
51  parameters.m_lineGapType = gapType;
52  parameters.m_lineStartX = xFirst;
53  parameters.m_lineEndX = xLast;
54  parameters.m_lineStartZ = std::min(firstPoint, lastPoint) - halfWirePitch;
55  parameters.m_lineEndZ = std::max(firstPoint, lastPoint) + halfWirePitch;
56 
57  return parameters;
58  }
59 
60 } // namespace lar_pandora
enum geo::_plane_proj View_t
Enumerate the possible plane projections.
double WireAngleToVertical(View_t view, TPCID const &tpcid) const
Returns the angle of the wires in the specified view from vertical.
Interface for a class providing readout channel mapping to geometry.
The data type to uniquely identify a TPC.
Definition: geo_types.h:306
float GetX1() const
Get lower X coordinate.
float WireAngle(const geo::View_t view, const geo::TPCID::TPCID_t tpc, const geo::CryostatID::CryostatID_t cstat, const geo::WireReadoutGeom &wireReadoutGeom)
Calculate the wire angle of a LArTPC view in a given TPC/cryostat.
PandoraApi::Geometry::LineGap::Parameters CreateDriftGapParameters(const LArDetectorGap &gap)
Make the drift gap parameters for the Pandora API.
unsigned int CryostatID_t
Type for the ID number.
Definition: geo_types.h:188
PandoraApi::Geometry::LineGap::Parameters CreateReadoutGapParameters(const float firstPoint, const float lastPoint, const float xFirst, const float xLast, const float halfWirePitch, const pandora::LineGapType gapType)
Make the readout gap parameters for the Pandora API.
unsigned int TPCID_t
Type for the ID number.
Definition: geo_types.h:307
Helper functions for extracting detector geometry for use in reconsruction.
Interface to geometry for wire readouts .
drift volume class to hold properties of drift volume
float GetX2() const
Get upper X coordinate.