CMS 3D CMS Logo

TrackTransformerForCosmicMuons.h
Go to the documentation of this file.
1 #ifndef TrackingTools_TrackRefitter_TrackTransformerForCosmicMuons_H
2 #define TrackingTools_TrackRefitter_TrackTransformerForCosmicMuons_H
3 
23 
25 
27 
29 
31 
35 
37 
38 namespace edm {class ParameterSet; class EventSetup;}
39 namespace reco {class TransientTrack;}
40 
41 class TrajectoryFitter;
42 class TrajectorySmoother;
43 class Propagator;
45 class Trajectory;
46 
48 
49 public:
50 
53 
56 
57  // Operations
58 
60  std::vector<Trajectory> transform(const reco::Track&) const override;
61 
63  const MagneticField* magneticField() const {return &*theMGField;}
64 
66  edm::ESHandle<GlobalTrackingGeometry> trackingGeometry() const {return theTrackingGeometry;}
67 
69  void setServices(const edm::EventSetup&) override;
70 
72  bool SlopeSum(const TransientTrackingRecHit::ConstRecHitContainer&) const;
73  float SumDy(const TransientTrackingRecHit::ConstRecHitContainer&) const;
74 
76  edm::ESHandle<TrajectoryFitter> fitter(bool, int, float) const;
77 
79  edm::ESHandle<TrajectorySmoother> smoother(bool, int, float) const;
80 
82  getTransientRecHits(const reco::TransientTrack& track) const;
83 
84  protected:
85 
86  private:
87 
90 
91  edm::ESHandle<Propagator> propagator(bool, int, float) const;
92 
93  unsigned long long theCacheId_TC;
94  unsigned long long theCacheId_GTG;
95  unsigned long long theCacheId_MG;
96  unsigned long long theCacheId_TRH;
97 
99 
102 
105 
108 
111 
114 
115 };
116 #endif
117 
edm::ESHandle< Propagator > thePropagatorIO
edm::ESHandle< TrajectorySmoother > theSmootherOI
edm::ESHandle< GlobalTrackingGeometry > theTrackingGeometry
edm::ESHandle< TrajectorySmoother > theSmootherIO
edm::ESHandle< Propagator > thePropagatorOI
edm::ESHandle< TrajectoryFitter > theFitterOI
edm::ESHandle< TransientTrackingRecHitBuilder > theTrackerRecHitBuilder
edm::ESHandle< TrajectoryFitter > theFitterIO
edm::ESHandle< TransientTrackingRecHitBuilder > theMuonRecHitBuilder
std::vector< ConstRecHitPointer > ConstRecHitContainer
fixed size matrix
HLT enums.
edm::ESHandle< GlobalTrackingGeometry > trackingGeometry() const
the tracking geometry
edm::ESHandle< MagneticField > theMGField
const MagneticField * magneticField() const
the magnetic field