CMS 3D CMS Logo

GsfTransientTrack.h
Go to the documentation of this file.
1 #ifndef TrackReco_GsfTransientTrack_h
2 #define TrackReco_GsfTransientTrack_h
3 
16 
17 namespace reco {
18 
20  public:
21 
22  // constructor from persistent track
24  GsfTransientTrack( const GsfTrack & tk , const MagneticField* field);
25  GsfTransientTrack( const GsfTrack & tk , const double time, const double dtime, const MagneticField* field);
26 
27  GsfTransientTrack( const GsfTrackRef & tk , const MagneticField* field);
28  GsfTransientTrack( const GsfTrackRef & tk , const double time, const double dtime, const MagneticField* field);
29 
30  GsfTransientTrack( const GsfTrackRef & tk , const MagneticField* field, const edm::ESHandle<GlobalTrackingGeometry>& trackingGeometry);
31  GsfTransientTrack( const GsfTrackRef & tk , const double time, const double dtime, const MagneticField* field, const edm::ESHandle<GlobalTrackingGeometry>& trackingGeometry);
32 
33  GsfTransientTrack( const GsfTrack & tk , const MagneticField* field, const edm::ESHandle<GlobalTrackingGeometry>& trackingGeometry);
34  GsfTransientTrack( const GsfTrack & tk , const double time, const double dtime, const MagneticField* field, const edm::ESHandle<GlobalTrackingGeometry>& trackingGeometry);
35 
36 
38 
40 
41  void setES(const edm::EventSetup& ) override;
42 
44 
45  void setBeamSpot(const reco::BeamSpot& beamSpot) override;
46 
47  FreeTrajectoryState initialFreeState() const override {return initialFTS;}
48 
50 
52 
59  trajectoryStateClosestToPoint( const GlobalPoint & point ) const override;
60 
65  TrajectoryStateOnSurface stateOnSurface(const GlobalPoint & point) const override;
66 
72 
78 
79  bool impactPointStateAvailable() const override {return initialTSOSAvailable;}
80 
84  GsfTrackRef persistentTrackRef() const { return tkr_; }
85 
86  TrackBaseRef trackBaseRef() const override {return TrackBaseRef(tkr_);}
87 
88  TrackCharge charge() const override {return GsfTrack::charge();}
89 
90  const MagneticField* field() const override {return theField;}
91 
92  const Track & track() const override {return *this;}
93 
95 
96  double timeExt() const override { return ( hasTime ? timeExt_ : std::numeric_limits<double>::quiet_NaN() ); }
97 
98  double dtErrorExt() const override { return ( hasTime ? dtErrorExt_ : std::numeric_limits<double>::quiet_NaN() ); }
99 
100  private:
101 
102  void init();
103  void calculateTSOSAtVertex() const;
104 
106  bool hasTime;
109 
118 
120 
121 
122  };
123 
124 }
125 
126 #endif
TrackBaseRef trackBaseRef() const override
TrajectoryStateClosestToBeamLine trajectoryStateClosestToBeamLine
TrajectoryStateClosestToPoint trajectoryStateClosestToPoint(const GlobalPoint &point) const override
void setES(const edm::EventSetup &) override
TrajectoryStateClosestToPoint impactPointTSCP() const override
double dtErrorExt() const override
const MagneticField * field() const override
const Track & track() const override
TrajectoryStateOnSurface initialTSOS
void setTrackingGeometry(const edm::ESHandle< GlobalTrackingGeometry > &) override
int TrackCharge
Definition: TrackCharge.h:4
void calculateTSOSAtVertex() const
edm::RefToBase< reco::Track > TrackBaseRef
persistent reference to a Track, using views
Definition: TrackFwd.h:36
TransverseImpactPointExtrapolator theTIPExtrapolator
double timeExt() const override
void setBeamSpot(const reco::BeamSpot &beamSpot) override
TrajectoryStateOnSurface innermostMeasurementState() const override
bool impactPointStateAvailable() const override
FreeTrajectoryState initialFreeState() const override
TSCPBuilderNoMaterial builder
TrajectoryStateClosestToPoint initialTSCP
TrajectoryStateClosestToBeamLine stateAtBeamLine() const override
const MagneticField * theField
ROOT::Math::PositionVector3D< ROOT::Math::Cartesian3D< float >, ROOT::Math::GlobalCoordinateSystemTag > GlobalPoint
point in global coordinate system
Definition: Point3D.h:17
fixed size matrix
FreeTrajectoryState initialFTS
int charge() const
track electric charge
Definition: TrackBase.h:606
TrajectoryStateOnSurface stateOnSurface(const GlobalPoint &point) const override
GsfTrackRef persistentTrackRef() const
TrajectoryStateOnSurface impactPointState() const override
TrackCharge charge() const override
*vegas h *****************************************************used in the default bin number in original ***version of VEGAS is ***a higher bin number might help to derive a more precise ***grade subtle point
Definition: invegas.h:5
GsfTransientTrack & operator=(const GsfTransientTrack &tt)
edm::ESHandle< GlobalTrackingGeometry > theTrackingGeometry
TrajectoryStateOnSurface outermostMeasurementState() const override