9 #ifndef UTIL_GEOMETRYUTILITIES_H 10 #define UTIL_GEOMETRYUTILITIES_H 13 #include <TLorentzVector.h> 74 Double_t &theta)
const;
78 Double_t theta)
const;
82 Double_t theta)
const;
91 Double_t deltatime)
const;
98 Double_t timestart)
const;
110 Double_t deltatime)
const;
115 Double_t timestart)
const;
123 Double_t time2)
const;
131 Double_t wire)
const;
135 Double_t wire)
const;
142 Double_t &timeout)
const;
150 Double_t &timeout)
const;
164 Double_t ort_intercept,
166 Double_t &timeout)
const;
170 double ort_intercept,
198 double timein)
const;
202 double timein)
const;
229 Double_t* xyz)
const;
233 Double_t theta)
const;
237 Double_t *dirs)
const;
241 std::vector <const util::PxHit*> &hitlistlocal,
243 Double_t& linearlimit,
245 Double_t& lineslopetest);
248 std::vector <const util::PxHit*> &hitlistlocal,
250 Double_t& linearlimit,
252 Double_t& lineslopetest,
256 std::vector <unsigned int> &hitlistlocal_index,
258 Double_t& linearlimit,
260 Double_t& lineslopetest);
264 std::vector <const util::PxHit*> &hitlistlocal);
266 std::vector<size_t>
PolyOverlap( std::vector<const util::PxHit*> ordered_hits,
267 std::vector<size_t> candidate_polygon);
269 bool Clockwise(
double Ax,
double Ay,
double Bx,
double By,
270 double Cx,
double Cy);
303 #endif // UTIL_GEOMETRYUTILITIES_H
static const GeometryUtilities * GetME()
Namespace for general, non-LArSoft-specific utilities.
Double_t Get2DDistance(Double_t wire1, Double_t time1, Double_t wire2, Double_t time2) const
Class def header for exception classes used in GeometryUtilities.
bool Clockwise(double Ax, double Ay, double Bx, double By, double Cx, double Cy)
Double_t Get2Dangle(Double_t deltawire, Double_t deltatime) const
Declaration of signal hit object.
static GeometryUtilities * _me
Double_t TimeToCm() const
Double_t WireToCm() const
Double_t PitchInView(UInt_t plane, Double_t phi, Double_t theta) const
Double_t Get2DPitchDistance(Double_t angle, Double_t inwire, Double_t wire) const
const detinfo::DetectorProperties * detp
Access the description of detector geometry.
Double_t Get3DSpecialCaseTheta(Int_t iplane0, Int_t iplane1, Double_t dw0, Double_t dw1) const
Double_t GetTimeTicks(Double_t x, Int_t plane) const
Description of geometry of one entire detector.
void SelectLocalHitlist(const std::vector< util::PxHit > &hitlist, std::vector< const util::PxHit * > &hitlistlocal, util::PxPoint &startHit, Double_t &linearlimit, Double_t &ortlimit, Double_t &lineslopetest)
~GeometryUtilities()
Default destructor.
std::vector< Double_t > vertangle
Definition of data types for geometry description.
Int_t GetPointOnLine(Double_t slope, Double_t intercept, Double_t wire1, Double_t time1, Double_t &wireout, Double_t &timeout) const
void SelectLocalHitlistIndex(const std::vector< util::PxHit > &hitlist, std::vector< unsigned int > &hitlistlocal_index, util::PxPoint &startHit, Double_t &linearlimit, Double_t &ortlimit, Double_t &lineslopetest)
Double_t Get2DPitchDistanceWSlope(Double_t slope, Double_t inwire, Double_t wire) const
Int_t GetYZ(const PxPoint *p0, const PxPoint *p1, Double_t *yz) const
GeometryUtilities()
Default constructor = private for singleton.
const geo::GeometryCore * geom
util::PxHit FindClosestHit(std::vector< util::PxHit > hitlist, unsigned int wirein, double timein) const
double Get2DangleFrom3D(unsigned int plane, double phi, double theta) const
Int_t GetProjectedPoint(const PxPoint *p0, const PxPoint *p1, PxPoint &pN) const
void GetDirectionCosines(Double_t phi, Double_t theta, Double_t *dirs) const
const double kINVALID_DOUBLE
PxPoint Get2DPointProjection(Double_t *xyz, Int_t plane) const
Double_t WireTimeToCmCm() const
PxPoint Get2DPointProjectionCM(std::vector< double > xyz, int plane) const
Double_t CalculatePitch(UInt_t iplane0, Double_t phi, Double_t theta) const
Int_t GetPointOnLineWSlopes(Double_t slope, Double_t intercept, Double_t ort_intercept, Double_t &wireout, Double_t &timeout) const
std::vector< size_t > PolyOverlap(std::vector< const util::PxHit * > ordered_hits, std::vector< size_t > candidate_polygon)
Double_t Get2Dslope(Double_t deltawire, Double_t deltatime) const
Int_t GetXYZ(const PxPoint *p0, const PxPoint *p1, Double_t *xyz) const
Int_t Get3DaxisN(Int_t iplane0, Int_t iplane1, Double_t omega0, Double_t omega1, Double_t &phi, Double_t &theta) const
void SelectPolygonHitList(const std::vector< util::PxHit > &hitlist, std::vector< const util::PxHit * > &hitlistlocal)
art framework interface to geometry description
Double_t CalculatePitchPolar(UInt_t iplane0, Double_t phi, Double_t theta) const
unsigned int FindClosestHitIndex(std::vector< util::PxHit > hitlist, unsigned int wirein, double timein) const