14 #ifndef LARCOREOBJ_SIMPLETYPESANDCONSTANTS_GEO_VECTORS_H 15 #define LARCOREOBJ_SIMPLETYPESANDCONSTANTS_GEO_VECTORS_H 18 #include "Math/GenVector/CoordinateSystemTags.h" 19 #include "Math/GenVector/Cartesian3D.h" 20 #include "Math/GenVector/PositionVector3D.h" 21 #include "Math/GenVector/DisplacementVector3D.h" 22 #include "Math/GenVector/Rotation3D.h" 46 #define GENVECTOR_CONSTEXPR 73 template <
typename T,
typename C = ROOT::Math::GlobalCoordinateSystemTag>
75 = ROOT::Math::DisplacementVector3D<ROOT::Math::Cartesian3D<T>,
C>;
80 template <
typename T,
typename C = ROOT::Math::GlobalCoordinateSystemTag>
82 = ROOT::Math::PositionVector3D<ROOT::Math::Cartesian3D<T>, C>;
163 using Vector_t = ROOT::Math::DisplacementVector3D
164 <ROOT::Math::Cartesian3D<double>, ROOT::Math::GlobalCoordinateSystemTag>;
183 using Point_t = ROOT::Math::PositionVector3D
184 <ROOT::Math::Cartesian3D<double>, ROOT::Math::GlobalCoordinateSystemTag>;
194 template <
typename CoordSystemTag>
204 template <
typename CoordSystemTag>
214 template <
typename Vector = Vector_t>
218 template <
typename Vector = Vector_t>
222 template <
typename Vector = Vector_t>
226 template <
typename Po
int = Po
int_t>
239 #endif // LARCOREOBJ_SIMPLETYPESANDCONSTANTS_GEO_VECTORS_H
constexpr Vector Yaxis()
Returns a y axis vector of the specified type.
ROOT::Math::PositionVector3D< ROOT::Math::Cartesian3D< T >, C > GenPoint3DBase_t
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< double >, ROOT::Math::GlobalCoordinateSystemTag > Vector_t
Type for representation of momenta in 3D space.
Vector3DBase_t< CoordSystemTag > VectorIn_t
Type for representation of momenta in 3D space.
ROOT::Math::GlobalCoordinateSystemTag GlobalCoords
Tag for vectors in the global coordinate system.
constexpr Vector Xaxis()
Returns a x axis vector of the specified type.
constexpr Vector Zaxis()
Returns a z axis vector of the specified type.
ROOT::Math::PositionVector3D< ROOT::Math::Cartesian3D< double >, ROOT::Math::GlobalCoordinateSystemTag > Point_t
Type for representation of position in physical 3D space.
double Length_t
Type used for coordinates and distances. They are measured in centimeters.
Point3DBase_t< CoordSystemTag > PointIn_t
Type for representation of positions in 3D space.
GenPoint3DBase_t< double, C > Point3DBase_t
Type of 3D point with representation in double precision.
GenVector3DBase_t< double, C > Vector3DBase_t
LArSoft geometry interface.
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< T >, C > GenVector3DBase_t
constexpr Point origin()
Returns a origin position with a point of the specified type.
ROOT::Math::Rotation3D Rotation_t
Type for representation of space rotations.