CMS 3D CMS Logo

TransientTrackFromFTS.h
Go to the documentation of this file.
1 #ifndef TrackReco_TransientTrackFromFTS_h
2 #define TrackReco_TransientTrackFromFTS_h
3 
13 
14 namespace reco {
15 
17  public:
19 
21  TransientTrackFromFTS(const FreeTrajectoryState& fts, const double time, const double dtime);
22 
24  const edm::ESHandle<GlobalTrackingGeometry>& trackingGeometry);
26  const double time,
27  const double dtime,
28  const edm::ESHandle<GlobalTrackingGeometry>& trackingGeometry);
29 
31 
33 
34  void setES(const edm::EventSetup&) override;
35 
37 
38  void setBeamSpot(const reco::BeamSpot& beamSpot) override;
39 
40  FreeTrajectoryState initialFreeState() const override { return initialFTS; }
41 
43 
45 
47  return builder(initialFTS, point);
48  }
49 
54 
56 
58 
59  bool impactPointStateAvailable() const override { return initialTSOSAvailable; }
60 
61  TrackCharge charge() const override { return initialFTS.charge(); }
62 
63  const MagneticField* field() const override { return theField; }
64 
65  const Track& track() const override;
66 
67  TrackBaseRef trackBaseRef() const override { return TrackBaseRef(); }
68 
70 
71  double timeExt() const override { return (hasTime ? timeExt_ : std::numeric_limits<double>::quiet_NaN()); }
72  double dtErrorExt() const override { return (hasTime ? dtErrorExt_ : std::numeric_limits<double>::quiet_NaN()); }
73 
74  private:
75  void calculateTSOSAtVertex() const;
76 
78  bool hasTime;
79  double timeExt_;
80  double dtErrorExt_;
85  mutable Track theTrack;
90  };
91 
92 } // namespace reco
93 
94 #endif
TrajectoryStateClosestToBeamLine stateAtBeamLine() const override
void setES(const edm::EventSetup &) override
const MagneticField * field() const override
TrajectoryStateOnSurface outermostMeasurementState() const override
bool impactPointStateAvailable() const override
TrajectoryStateOnSurface initialTSOS
TrackCharge charge() const
void setTrackingGeometry(const edm::ESHandle< GlobalTrackingGeometry > &) override
const MagneticField * theField
int TrackCharge
Definition: TrackCharge.h:4
TrajectoryStateClosestToPoint trajectoryStateClosestToPoint(const GlobalPoint &point) const override
TrajectoryStateClosestToPoint initialTSCP
edm::RefToBase< reco::Track > TrackBaseRef
persistent reference to a Track, using views
Definition: TrackFwd.h:35
edm::ESHandle< GlobalTrackingGeometry > theTrackingGeometry
FreeTrajectoryState initialFreeState() const override
const Track & track() const override
TrajectoryStateOnSurface impactPointState() const override
void setBeamSpot(const reco::BeamSpot &beamSpot) override
TrajectoryStateClosestToPoint impactPointTSCP() const override
double timeExt() const override
TrajectoryStateOnSurface innermostMeasurementState() const override
TrackBaseRef trackBaseRef() const override
ROOT::Math::PositionVector3D< ROOT::Math::Cartesian3D< float >, ROOT::Math::GlobalCoordinateSystemTag > GlobalPoint
point in global coordinate system
Definition: Point3D.h:18
fixed size matrix
TrajectoryStateOnSurface stateOnSurface(const GlobalPoint &point) const override
TransientTrackFromFTS & operator=(const TransientTrackFromFTS &tt)
double dtErrorExt() const override
TrajectoryStateClosestToBeamLine trajectoryStateClosestToBeamLine
*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
TrackCharge charge() const override