1 #ifndef _COMMONRECO_PROPAGATORWITHMATERIAL_H_
2 #define _COMMONRECO_PROPAGATORWITHMATERIAL_H_
40 bool useRungeKutta=
false,
float ptMin=-1.,
bool useOldGeoPropLogic=
true);
45 const Plane& plane)
const
49 return propagateWithPath(tsos,plane).first;
53 const Plane& plane)
const
57 return propagateWithPath(fts,plane).first;
61 const Plane& plane)
const;
63 virtual std::pair<TrajectoryStateOnSurface,double> propagateWithPath (
const FreeTrajectoryState& fts,
64 const Plane& plane)
const;
71 return propagateWithPath(tsos,cylinder).first;
79 return propagateWithPath(fts,cylinder).first;
85 virtual std::pair<TrajectoryStateOnSurface,double> propagateWithPath (
const FreeTrajectoryState& fts,
90 return theGeometricalPropagator->setMaxDirectionChange(phiMax);
105 theMaterialLocation = location;
109 return *theGeometricalPropagator;
113 return *theMEUpdator;
131 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.