CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
RKPropagatorInZ.h
Go to the documentation of this file.
1 #ifndef RKPropagatorInZ_H
2 #define RKPropagatorInZ_H
3 
6 
7 class RKPropagatorInZ GCC11_FINAL : public Propagator {
8 public:
9 
11  Propagator(dir), theVolume( &vol) {}
12 
14  myPropagate (const FreeTrajectoryState&, const Plane&) const;
15 
17  myPropagate (const FreeTrajectoryState&, const Cylinder&) const;
18 
19  virtual std::pair< TrajectoryStateOnSurface, double>
20  propagateWithPath (const FreeTrajectoryState&, const Plane&) const;
21 
22  virtual std::pair< TrajectoryStateOnSurface, double>
23  propagateWithPath (const FreeTrajectoryState&, const Cylinder&) const;
24 
25  virtual Propagator * clone() const;
26 
27  virtual const MagneticField* magneticField() const {return theVolume;}
28 
29 private:
30 
31  const MagVolume* theVolume;
32 
33 };
34 
35 #endif
virtual Propagator * clone() const =0
PropagationDirection
Definition: Plane.h:17
virtual const MagneticField * magneticField() const
virtual std::pair< TrajectoryStateOnSurface, double > propagateWithPath(const FreeTrajectoryState &, const Surface &) const final
Definition: Propagator.cc:15
RKPropagatorInZ(const MagVolume &vol, PropagationDirection dir=alongMomentum)
dbl *** dir
Definition: mlp_gen.cc:35
Unlimited (trivial) bounds.