CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
TrackTransformer.h
Go to the documentation of this file.
1 #ifndef TrackingTools_TrackRefitter_TrackTransformer_H
2 #define TrackingTools_TrackRefitter_TrackTransformer_H
3 
17 
19 
21 
25 
27 
28 namespace edm {class ParameterSet; class EventSetup;}
29 namespace reco {class TransientTrack;}
30 
31 class TrajectoryFitter;
32 class TrajectorySmoother;
33 class Propagator;
35 class Trajectory;
36 
38 
39 public:
40 
43 
45  virtual ~TrackTransformer();
46 
47  // Operations
48 
50  virtual std::vector<Trajectory> transform(const reco::Track&) const;
51 
53  std::vector<Trajectory> transform(const reco::TrackRef&) const;
54 
56  std::vector<Trajectory> transform(const reco::TransientTrack&,
58 
60  const MagneticField* magneticField() const {return &*theMGField;}
61 
64 
66  virtual void setServices(const edm::EventSetup&);
67 
70 
73 
75  getTransientRecHits(const reco::TransientTrack& track) const;
76 
77  protected:
78 
79  private:
80 
84 
85  unsigned long long theCacheId_TC;
86  unsigned long long theCacheId_GTG;
87  unsigned long long theCacheId_MG;
88  unsigned long long theCacheId_TRH;
89 
91 
94 
97 
100 
103 
106 
107  // void reorder(TransientTrackingRecHit::ConstRecHitContainer& recHits) const;
108 
111 
114 };
115 #endif
116 
edm::ESHandle< TrajectorySmoother > smoother() const
the smoother used to smooth the trajectory which came from the refitting step
const MagneticField * magneticField() const
the magnetic field
edm::ESHandle< TrajectoryFitter > theFitter
std::string theFitterName
RefitDirection::GeometricalDirection checkRecHitsOrdering(TransientTrackingRecHit::ConstRecHitContainer &) const
edm::ESHandle< TrajectorySmoother > theSmoother
std::string thePropagatorName
std::string theSmootherName
unsigned long long theCacheId_TRH
edm::ESHandle< GlobalTrackingGeometry > theTrackingGeometry
edm::ESHandle< Propagator > thePropagator
unsigned long long theCacheId_MG
TransientTrackingRecHit::ConstRecHitContainer getTransientRecHits(const reco::TransientTrack &track) const
edm::ESHandle< Propagator > propagator() const
edm::ESHandle< TransientTrackingRecHitBuilder > theMuonRecHitBuilder
unsigned long long theCacheId_TC
edm::ESHandle< MagneticField > theMGField
RefitDirection theRefitDirection
edm::ESHandle< TrajectoryFitter > refitter() const
the refitter used to refit the reco::Track
virtual void setServices(const edm::EventSetup &)
set the services needed by the TrackTransformer
unsigned long long theCacheId_GTG
edm::ESHandle< TransientTrackingRecHitBuilder > theTrackerRecHitBuilder
std::vector< ConstRecHitPointer > ConstRecHitContainer
virtual std::vector< Trajectory > transform(const reco::Track &) const
Convert a reco::Track into Trajectory.
virtual ~TrackTransformer()
Destructor.
edm::ESHandle< GlobalTrackingGeometry > trackingGeometry() const
the tracking geometry
std::string theTrackerRecHitBuilderName
std::string theMuonRecHitBuilderName
TrackTransformer(const edm::ParameterSet &)
Constructor.