1 #ifndef _COMMONRECO_PROPAGATORWITHMATERIAL_H_
2 #define _COMMONRECO_PROPAGATORWITHMATERIAL_H_
42 bool useRungeKutta=
false,
float ptMin=-1.,
bool useOldGeoPropLogic=
true);
47 const Plane& plane)
const
51 return propagateWithPath(tsos,plane).first;
55 const Plane& plane)
const
59 return propagateWithPath(fts,plane).first;
63 const Plane& plane)
const;
65 virtual std::pair<TrajectoryStateOnSurface,double> propagateWithPath (
const FreeTrajectoryState& fts,
66 const Plane& plane)
const;
73 return propagateWithPath(tsos,cylinder).first;
81 return propagateWithPath(fts,cylinder).first;
87 virtual std::pair<TrajectoryStateOnSurface,double> propagateWithPath (
const FreeTrajectoryState& fts,
92 return theGeometricalPropagator->setMaxDirectionChange(phiMax);
107 theMaterialLocation = location;
111 return *theGeometricalPropagator;
115 return *theMEUpdator;
133 defaultRKPropagator::Product rkProduct;
virtual TrajectoryStateOnSurface propagate(const FreeTrajectoryState &fts, const Plane &plane) const
std::pair< TrajectoryStateOnSurface, double > TsosWP
virtual TrajectoryStateOnSurface propagate(const TrajectoryStateOnSurface &tsos, const Cylinder &cylinder) const
const Propagator & geometricalPropagator() const
Access to the geometrical propagator.
virtual TrajectoryStateOnSurface propagate(const FreeTrajectoryState &fts, const Cylinder &cylinder) const
void setMaterialLocation(const MaterialLocation location)
virtual TrajectoryStateOnSurface propagate(const TrajectoryStateOnSurface &tsos, const Plane &plane) const
virtual bool setMaxDirectionChange(float phiMax)
Limit on change in azimuthal angle.
virtual const MagneticField * magneticField() const
virtual PropagatorWithMaterial * clone() const
const MaterialEffectsUpdator & materialEffectsUpdator() const
Access to the MaterialEffectsUpdator.
Unlimited (trivial) bounds.