4 #include <LCGeometryTypes.h>
6 #include <LCCylinder.h>
21 virtual LCVector3D
getPosition(
double s, LCErrorMatrix* errors=0)
const = 0;
27 virtual LCVector3D
getDirection(
double s, LCErrorMatrix* errors=0)
const = 0;
41 virtual double getPathAt(
const LCVector3D position )
const = 0;
57 bool & pointExists)
const = 0;
75 virtual LCLorentzVector get4Momentum(
double s )
const = 0;
virtual double getIntersectionWithCylinder(const LCCylinder &cylinder, bool &pointExists) const =0
Pathlength at closest intersection point with cylinder - undefined if pointExists==false.
virtual LCVector3D getPosition(double s, LCErrorMatrix *errors=0) const =0
Position at path length s - s==0 corresponds to P.C.A to the origin.
Abstract trajectory interface describing a geometrical path in 3D space.
Definition: Trajectory.h:13
virtual LCErrorMatrix getCovarianceMatrix(double s) const =0
Full covariance Matrix of x,y,z,px,py,pz.
Physical trajectory describing a (charged) particle's path in a B field and material.
Definition: Trajectory.h:70
virtual LCVector3D getDirection(double s, LCErrorMatrix *errors=0) const =0
Direction at path length s, i.e.
virtual double getPathAt(const LCVector3D position) const =0
Pathlength at point on trajectory closest to given position.
Definition of a LCPlane3D describing a geometrical plane in 3D space.
Definition: LCPlane3D.h:12
virtual double getIntersectionWithPlane(LCPlane3D p, bool &pointExists) const =0
Pathlength at closest intersection point with plane - undefined if pointExists==false.
Definition of a LCCylinder describing a geometrical cylinder in 3D space.
Definition: LCCylinder.h:12