CMS 3D CMS Logo

GsfTransientTrack.h
Go to the documentation of this file.
1 #ifndef TrackReco_GsfTransientTrack_h
2 #define TrackReco_GsfTransientTrack_h
3 
15 
16 namespace reco {
17 
19  public:
20  // constructor from persistent track
22  GsfTransientTrack(const GsfTrack& tk, const MagneticField* field);
23  GsfTransientTrack(const GsfTrack& tk, const double time, const double dtime, const MagneticField* field);
24 
25  GsfTransientTrack(const GsfTrackRef& tk, const MagneticField* field);
26  GsfTransientTrack(const GsfTrackRef& tk, const double time, const double dtime, const MagneticField* field);
27 
29  const MagneticField* field,
30  const edm::ESHandle<GlobalTrackingGeometry>& trackingGeometry);
32  const double time,
33  const double dtime,
34  const MagneticField* field,
35  const edm::ESHandle<GlobalTrackingGeometry>& trackingGeometry);
36 
37  GsfTransientTrack(const GsfTrack& tk,
38  const MagneticField* field,
39  const edm::ESHandle<GlobalTrackingGeometry>& trackingGeometry);
40  GsfTransientTrack(const GsfTrack& tk,
41  const double time,
42  const double dtime,
43  const MagneticField* field,
44  const edm::ESHandle<GlobalTrackingGeometry>& trackingGeometry);
45 
47 
49 
50  void setES(const edm::EventSetup&) override;
51 
53 
54  void setBeamSpot(const reco::BeamSpot& beamSpot) override;
55 
56  FreeTrajectoryState initialFreeState() const override { return initialFTS; }
57 
59 
61 
68 
73  TrajectoryStateOnSurface stateOnSurface(const GlobalPoint& point) const override;
74 
80 
86 
87  bool impactPointStateAvailable() const override { return initialTSOSAvailable; }
88 
92  GsfTrackRef persistentTrackRef() const { return tkr_; }
93 
94  TrackBaseRef trackBaseRef() const override { return TrackBaseRef(tkr_); }
95 
96  TrackCharge charge() const override { return GsfTrack::charge(); }
97 
98  const MagneticField* field() const override { return theField; }
99 
100  const Track& track() const override { return *this; }
101 
103 
104  double timeExt() const override { return (hasTime ? timeExt_ : std::numeric_limits<double>::quiet_NaN()); }
105 
106  double dtErrorExt() const override { return (hasTime ? dtErrorExt_ : std::numeric_limits<double>::quiet_NaN()); }
107 
108  private:
109  void init();
110  void calculateTSOSAtVertex() const;
111 
113  bool hasTime;
116 
125 
127  };
128 
129 } // namespace reco
130 
131 #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:35
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:18
fixed size matrix
FreeTrajectoryState initialFTS
int charge() const
track electric charge
Definition: TrackBase.h:575
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