CMS 3D CMS Logo

GsfPropagatorAdapter.h
Go to the documentation of this file.
1 #ifndef GsfPropagatorAdapter_h_
2 #define GsfPropagatorAdapter_h_
3 
7 
8 class MagneticField;
9 
14 class GsfPropagatorAdapter final : public Propagator {
15 public:
18 
19  ~GsfPropagatorAdapter() override {}
20 
23 
24  std::pair<TrajectoryStateOnSurface, double> propagateWithPath(const TrajectoryStateOnSurface&,
25  const Plane&) const override;
26 
29  std::pair<TrajectoryStateOnSurface, double> propagateWithPath(const TrajectoryStateOnSurface&,
30  const Cylinder&) const override;
31 
35  std::pair<TrajectoryStateOnSurface, double> propagateWithPath(const FreeTrajectoryState&,
36  const Plane&) const override;
37 
41  std::pair<TrajectoryStateOnSurface, double> propagateWithPath(const FreeTrajectoryState&,
42  const Cylinder&) const override;
43 
44 public:
46 
48 
50  inline const Propagator& propagator() const { return *thePropagator; }
51 
52  GsfPropagatorAdapter* clone() const override { return new GsfPropagatorAdapter(*thePropagator); }
53 
54  const MagneticField* magneticField() const override { return thePropagator->magneticField(); }
55 
56 private:
57  // Single state propagator
59 };
60 
61 #endif
bool setMaxDirectionChange(float phiMax) override
GsfPropagatorAdapter(const Propagator &Propagator)
Constructor with explicit propagator.
std::pair< TrajectoryStateOnSurface, double > propagateWithPath(const TrajectoryStateOnSurface &, const Plane &) const override
PropagationDirection
virtual bool setMaxDirectionChange(float phiMax)
Definition: Propagator.h:151
TrajectoryStateOnSurface propagate(STA const &state, SUR const &surface) const
Definition: Propagator.h:50
Definition: Plane.h:16
const Propagator & propagator() const
access to single state propagator
const MagneticField * magneticField() const override
virtual std::pair< TrajectoryStateOnSurface, double > propagateWithPath(const FreeTrajectoryState &, const Surface &) const final
Definition: Propagator.cc:10
void setPropagationDirection(PropagationDirection dir) override
DeepCopyPointerByClone< Propagator > thePropagator
virtual const MagneticField * magneticField() const =0
GsfPropagatorAdapter * clone() const override