CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
SimpleTrackRefitter.h
Go to the documentation of this file.
1 #ifndef SimpleTrackRefitter_H_
2 #define SimpleTrackRefitter_H_
3 
4 // system include files
5 #include <memory>
6 
7 // user include files
25 #include <vector>
26 #include <string>
27 
28 
38 class Propagator;
39 class KFUpdator;
40 class KFUpdator;
43 class TrajectorySmoother;
44 class TrajectoryFitter;
45 
47 
48 public:
51 
53  virtual ~SimpleTrackRefitter();
54 
56  std::vector<Trajectory> refitTrack(const reco::Track& newTrack,
57  const uint32_t ExcludedDetId = 0);
58  std::vector<Trajectory> refitTrack(const TrajectorySeed& seed,
59  const TrackingRecHitCollection &hits,
60  const uint32_t ExcludedDetid = 0);
61  std::vector<Trajectory> refitTrack(const TrajectorySeed& seed,
62  const reco::Track& theT,
63  const uint32_t ExcludedDetid = 0);
64 
65  // to be called before the refit
66  void setServices(const edm::EventSetup& es);
67 
68 private:
69  // methods for cosmic tracking
70  void initServices(const bool& seedAlongMomentum);
71  void destroyServices();
72  std::vector<TrajectoryMeasurement> seedMeasurements(const TrajectorySeed& seed) const;
75  // members
87  bool isCosmics_;
88 };
89 
90 #endif
const TransientTrackingRecHitBuilder * RHBuilder
void initServices(const bool &seedAlongMomentum)
std::vector< Trajectory > refitTrack(const reco::Track &newTrack, const uint32_t ExcludedDetId=0)
The main methods.
edm::ParameterSet conf_
TrajectoryStateOnSurface startingTSOS(const TrajectorySeed &seed) const
const TrackerGeometry * tracker
const MagneticField * magfield
void setServices(const edm::EventSetup &es)
virtual ~SimpleTrackRefitter()
Destructor.
SimpleTrackRefitter(const edm::ParameterSet &)
Constructor.
const KFUpdator * theUpdator
const TrajectoryStateTransform tsTransform
const Propagator * thePropagator
Trajectory createStartingTrajectory(const TrajectorySeed &seed) const
const TrajectoryFitter * theFitter
std::vector< TrajectoryMeasurement > seedMeasurements(const TrajectorySeed &seed) const
const Chi2MeasurementEstimator * theEstimator
const Propagator * thePropagatorOp
const TrajectorySmoother * theSmoother