1 #ifndef NavPropagator_H_
2 #define NavPropagator_H_
41 const Plane& plane)
const {
45 std::pair<TrajectoryStateOnSurface,double>
47 const Plane& plane)
const;
51 const Plane& plane)
const {
55 std::pair<TrajectoryStateOnSurface,double>
57 const Plane& plane)
const;
65 std::pair<TrajectoryStateOnSurface,double>
75 typedef std::pair<TrajectoryStateOnSurface,double>
TsosWP;
91 const TSOS& endState,
const Plane& plane)
const;
95 std::pair<TrajectoryStateOnSurface,double>
98 const Plane& targetPlane)
const;
std::pair< TrajectoryStateOnSurface, double > propagateInVolume(const NavVolume *currentVolume, const TrajectoryStateOnSurface &startingState, const Plane &targetPlane) const
const VolumeBasedMagneticField * theField
MagVolumeMap theNavVolumeMap
TrajectoryStateOnSurface TSOS
NavPropagator(const MagneticField *field, PropagationDirection dir=alongMomentum)
virtual const MagneticField * magneticField() const
const NavVolume * navVolume(const MagVolume *magVolume) const
bool destinationCrossed(const TSOS &startState, const TSOS &endState, const Plane &plane) const
const NavVolume * findVolume(const TrajectoryStateOnSurface &inputState) const
virtual std::pair< TrajectoryStateOnSurface, double > propagateWithPath(const FreeTrajectoryState &, const Surface &) const
TrajectoryStateOnSurface propagate(const FreeTrajectoryState &ts, const Plane &plane) const
propagation of FTS to plane
std::pair< TrajectoryStateOnSurface, double > TsosWP
const VolumeMediumProperties theIronMedium
virtual TrajectoryStateOnSurface propagate(const FreeTrajectoryState &, const Surface &) const
RKPropagatorInS PropagatorType
const VolumeMediumProperties theAirMedium
TrajectoryStateOnSurface propagate(const TrajectoryStateOnSurface &ts, const Plane &plane) const
propagation of TSOS to plane
std::pair< TrajectoryStateOnSurface, double > propagateWithPath(const TrajectoryStateOnSurface &, const Plane &plane) const
propagation of TSOS to plane with path length
virtual NavPropagator * clone() const
const VolumeMultipleScatteringEstimator theMSEstimator
const VolumeEnergyLossEstimator theELEstimator
const VolumeMaterialEffectsUpdator theMaterialUpdator
TrajectoryStateOnSurface noNextVolume(TrajectoryStateOnSurface startingState) const
TrajectoryStateOnSurface propagate(const FreeTrajectoryState &fts, const Cylinder &cylinder) const
propagation to cylinder
std::map< const MagVolume *, NavVolume * > MagVolumeMap