CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_1_8_patch12/src/TrackingTools/GsfTracking/interface/GsfConstraintAtVertex.h

Go to the documentation of this file.
00001 
00003 #include "DataFormats/GsfTrackReco/interface/GsfTrack.h"
00004 #include "DataFormats/GsfTrackReco/interface/GsfTrackFwd.h" 
00005 
00006 #include "FWCore/Framework/interface/EventSetup.h"
00007 #include "Geometry/TrackerGeometryBuilder/interface/TrackerGeometry.h"
00008 #include "MagneticField/Engine/interface/MagneticField.h"
00009 #include "TrackingTools/GsfTools/interface/MultiTrajectoryStateTransform.h"
00010 #include "TrackingTools/GsfTracking/interface/GsfMultiStateUpdator.h"
00011 #include "TrackingTools/GsfTracking/interface/GsfChi2MeasurementEstimator.h"
00012 #include "DataFormats/BeamSpot/interface/BeamSpot.h"
00013 #include "DataFormats/VertexReco/interface/Vertex.h"
00014 #include "RecoTracker/TransientTrackingRecHit/interface/TRecHit2DPosConstraint.h"
00015 
00016 class TrackerGeometry;
00017 class MagneticField;
00018 class GsfPropagatorAdapter;
00019 class TransverseImpactPointExtrapolator;
00020 
00021 class GsfConstraintAtVertex {
00022 public:
00023   explicit GsfConstraintAtVertex (const edm::EventSetup&);
00024   ~GsfConstraintAtVertex();
00025   
00027   TrajectoryStateOnSurface constrainAtBeamSpot (const reco::GsfTrack&,
00028                                                 const reco::BeamSpot&) const;
00030   TrajectoryStateOnSurface constrainAtVertex (const reco::GsfTrack&,
00031                                               const reco::Vertex&) const;
00033   TrajectoryStateOnSurface constrainAtPoint (const reco::GsfTrack&,
00034                                              const GlobalPoint& globalPosition,
00035                                              const GlobalError& globalError) const;
00036 
00037 private:
00038 
00039   MultiTrajectoryStateTransform multiStateTransformer_;
00040   GsfMultiStateUpdator gsfUpdator_;
00041   const TrackerGeometry* geometry_;
00042   const MagneticField* magField_;
00043   GsfPropagatorAdapter* gsfPropagator_;
00044   TransverseImpactPointExtrapolator* tipExtrapolator_;
00045 
00046 };
00047