Go to the documentation of this file. 1 #ifndef CommonDet_Propagator_H
2 #define CommonDet_Propagator_H
49 template <
typename STA,
typename SUR>
68 const Plane&)
const = 0;
84 const Surface& sur)
const final;
87 const Plane& sur)
const {
168 #endif // CommonDet_Propagator_H
virtual std::pair< TrajectoryStateOnSurface, double > propagateWithPath(const TrajectoryStateOnSurface &tsos, const Plane &sur) const
PropagationDirection theDir
std::unique_ptr< Propagator > SetPropagationDirection(Propagator const &iprop, PropagationDirection dir)
virtual const MagneticField * magneticField() const =0
FreeTrajectoryState const * freeState(bool withErrors=true) const
virtual FreeTrajectoryState propagate(const FreeTrajectoryState &ftsStart, const GlobalPoint &pDest) const final
virtual PropagationDirection propagationDirection() const final
virtual void setPropagationDirection(PropagationDirection dir)
virtual FreeTrajectoryState propagate(const FreeTrajectoryState &ftsStart, const GlobalPoint &pDest1, const GlobalPoint &pDest2) const final
TrajectoryStateOnSurface propagate(STA const &state, SUR const &surface) const
virtual Propagator * clone() const =0
virtual std::pair< TrajectoryStateOnSurface, double > propagateWithPath(const FreeTrajectoryState &, const Surface &) const final
virtual bool setMaxDirectionChange(float phiMax)
virtual FreeTrajectoryState propagate(const FreeTrajectoryState &ftsStart, const reco::BeamSpot &beamSpot) const final
virtual std::pair< TrajectoryStateOnSurface, double > propagateWithPath(const TrajectoryStateOnSurface &tsos, const Cylinder &sur) const
Propagator(PropagationDirection dir=alongMomentum)