1 #ifndef _COMMONRECO_PROPAGATORWITHMATERIAL_H_
2 #define _COMMONRECO_PROPAGATORWITHMATERIAL_H_
40 bool useRungeKutta=
false,
float ptMin=-1.,
bool useOldGeoPropLogic=
true);
52 const Plane& plane)
const override;
54 virtual std::pair<TrajectoryStateOnSurface,double> propagateWithPath (
const FreeTrajectoryState& fts,
55 const Plane& plane)
const override;
58 const Cylinder& cylinder)
const override;
60 virtual std::pair<TrajectoryStateOnSurface,double> propagateWithPath (
const FreeTrajectoryState& fts,
61 const Cylinder& cylinder)
const override;
66 return theGeometricalPropagator->setMaxDirectionChange(phiMax);
81 theMaterialLocation = location;
85 return *theGeometricalPropagator;
107 defaultRKPropagator::Product rkProduct;
std::pair< TrajectoryStateOnSurface, double > TsosWP
const Propagator & geometricalPropagator() const
Access to the geometrical propagator.
void setMaterialLocation(const MaterialLocation location)
virtual bool setMaxDirectionChange(float phiMax)
Limit on change in azimuthal angle.
virtual const MagneticField * magneticField() const
virtual std::pair< TrajectoryStateOnSurface, double > propagateWithPath(const FreeTrajectoryState &, const Surface &) const final
virtual PropagatorWithMaterial * clone() const
const MaterialEffectsUpdator & materialEffectsUpdator() const
Access to the MaterialEffectsUpdator.
TrajectoryStateOnSurface propagate(STA const &state, SUR const &surface) const
Unlimited (trivial) bounds.