23 #include "Math/GenVector/DisplacementVector2D.h" 24 #include "Math/GenVector/DisplacementVector3D.h" 28 typedef ROOT::Math::DisplacementVector2D< ROOT::Math::Cartesian2D<double> >
Vector2D;
31 typedef std::map< size_t, std::vector<double> >
dedx_map;
42 double Dist2(
const TVector2 & v1,
const TVector2 & v2);
43 double Dist2(
const Vector2D & v1,
const Vector2D & v2);
45 template <
typename T,
typename U>
double Dist2(
const T & v1,
const U & v2) {
46 double dx = v1.X() - v2.X(), dy = v1.Y() - v2.Y(), dz = v1.Z() - v2.Z();
47 return dx * dx + dy * dy + dz * dz;
50 size_t GetHitsCount(
const std::vector< pma::Hit3D* >&
hits,
unsigned int view);
54 double GetHitsRadius3D(
const std::vector< pma::Hit3D* >& hits,
bool exact =
false);
55 double GetHitsRadius2D(
const std::vector< pma::Hit3D* >& hits,
bool exact =
false);
68 TVector2
GetProjectionToPlane(
const TVector3& p,
unsigned int plane,
unsigned int tpc,
unsigned int cryo);
70 TVector2
WireDriftToCm(
unsigned int wire,
float drift,
unsigned int plane,
unsigned int tpc,
unsigned int cryo);
71 TVector2
CmToWireDrift(
float xw,
float yd,
unsigned int plane,
unsigned int tpc,
unsigned int cryo);
76 public std::binary_function<pma::Hit3D*, pma::Hit3D*, bool>
82 public std::binary_function<pma::Hit3D*, pma::Hit3D*, bool>
88 public std::binary_function<const pma::TrkCandidate &, const pma::TrkCandidate &, bool>
94 public std::binary_function<TVector3*, TVector3*, bool>
115 public std::binary_function<TVector2, TVector2, bool>
132 public std::binary_function<TVector3, TVector3, bool>
double GetSummedAmpl(const std::vector< pma::Hit3D * > &hits, unsigned int view=geo::kUnknown)
double GetHitsRadius2D(const std::vector< pma::Hit3D * > &hits, bool exact=false)
double Dist2(const TVector2 &v1, const TVector2 &v2)
bDistCenterLess3D(const TVector3 &c)
double GetHitsRadius3D(const std::vector< pma::Hit3D * > &hits, bool exact=false)
recob::tracking::Vector_t Vector3D
auto vector(Vector const &v)
Returns a manipulator which will print the specified array.
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< Coord_t >, ROOT::Math::GlobalCoordinateSystemTag > Vector_t
Type for representation of momenta in 3D space. See recob::tracking::Coord_t for more details on the ...
size_t GetHitsCount(const std::vector< pma::Hit3D * > &hits, unsigned int view)
TVector2 GetProjectionToSegment(const TVector2 &p, const TVector2 &p0, const TVector2 &p1)
ROOT::Math::DisplacementVector2D< ROOT::Math::Cartesian2D< double > > Vector2D
bDistCenterLess2D(const TVector2 &c)
TVector2 GetVectorProjectionToPlane(const TVector3 &v, unsigned int plane, unsigned int tpc, unsigned int cryo)
double SolveLeastSquares3D(const std::vector< std::pair< TVector3, TVector3 > > &lines, TVector3 &result)
bool operator()(pma::Hit3D *h1, pma::Hit3D *h2)
double GetSegmentProjVector(const TVector2 &p, const TVector2 &p0, const TVector2 &p1)
TVector2 WireDriftToCm(unsigned int wire, float drift, unsigned int plane, unsigned int tpc, unsigned int cryo)
TVector2 GetProjectionToPlane(const TVector3 &p, unsigned int plane, unsigned int tpc, unsigned int cryo)
TVector2 CmToWireDrift(float xw, float yd, unsigned int plane, unsigned int tpc, unsigned int cryo)
std::map< size_t, std::vector< double > > dedx_map
double GetSummedADC(const std::vector< pma::Hit3D * > &hits, unsigned int view=geo::kUnknown)
art framework interface to geometry description