CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
TransientTrack.h
Go to the documentation of this file.
1 #ifndef TrackReco_TransientTrack_h
2 #define TrackReco_TransientTrack_h
3 
4 
14 
18 
19 namespace reco {
20 
22 
24 
25  public:
26 
28 
29  explicit TransientTrack( BasicTransientTrack * btt ) noexcept : Base(btt) {}
30 
32 
33 
35  Base(rh){}
36 
37 
39  Base(std::move(rh)){}
40 
43  return *this;
44  }
45 
47  Base::operator=(rh);
48  return *this;
49  }
50 
52  Base::swap(rh);
53  }
54 
55  TransientTrack( const Track & tk , const MagneticField* field);
56  TransientTrack( const TrackRef & tk , const MagneticField* field);
57  TransientTrack( const CandidatePtr & ptr , const MagneticField* field);
58  TransientTrack( const TrackRef & tk , const MagneticField* field, const edm::ESHandle<GlobalTrackingGeometry>& trackingGeometry);
59 
60  TransientTrack( const Track & tk , const MagneticField* field, const edm::ESHandle<GlobalTrackingGeometry>& trackingGeometry);
61  TransientTrack( const CandidatePtr & ptr , const MagneticField* field, const edm::ESHandle<GlobalTrackingGeometry>& trackingGeometry);
62 
63 
64  void setES(const edm::EventSetup& es) {sharedData().setES(es);}
65 
67  {sharedData().setTrackingGeometry(tg);}
68 
70  {sharedData().setBeamSpot(beamSpot);}
71 
72  FreeTrajectoryState initialFreeState() const {return data().initialFreeState();}
73 
75  {return data().outermostMeasurementState();}
76 
78  {return data().innermostMeasurementState();}
79 
82  {return data().trajectoryStateClosestToPoint(point);}
83 
85  {return data().stateOnSurface(point);}
86 
88  {return data().impactPointTSCP();}
89 
91  {return data().impactPointState();}
92 
94  {return data().impactPointStateAvailable();}
95 
96  TrackCharge charge() const {return data().charge();}
97 
98  bool operator== (const TransientTrack & other) const
99  {return &(data()) == &(other.data());}
100  // {return (a.persistentTrackRef()==tkr_);}
101 
102  bool operator< (const TransientTrack & other) const
103  {return &(data()) < &(other.data());}
104  // {return (initialFTS.momentum().z()<a.initialFreeState().momentum().z());}
105 
106  const MagneticField* field() const {return data().field();}
107 
108  const BasicTransientTrack* basicTransientTrack() const {return &(data());}
109 
110  const Track & track() const {return data().track();}
111 
112  TrackBaseRef trackBaseRef() const {return data().trackBaseRef();}
113 
115  {return data().stateAtBeamLine();}
116 
117 // Methods forwarded to original track.
118 
124  TrackingRecHitRef recHit( size_t i ) const { return track().recHit( i ); }
126  size_t recHitsSize() const { return track().recHitsSize(); }
127  // hit pattern
128  const HitPattern &hitPattern() const { return track().hitPattern(); }
130  unsigned short numberOfValidHits() const { return track().hitPattern().numberOfValidHits(); }
134  double chi2() const { return track().chi2(); }
136  double ndof() const { return track().ndof(); }
138  double normalizedChi2() const { return track().chi2() / track().ndof(); }
139 
141  bool isValid() const {return Base::isValid() ;}
142 
143  };
144 
145 }
146 
147 #endif
unsigned short numberOfValidHits() const
number of hits found
int i
Definition: DBlmapReader.cc:9
bool operator==(const TransientTrack &other) const
void setBeamSpot(const reco::BeamSpot &beamSpot)
bool isValid() const
Make the ReferenceCountingProxy method to check validity public.
TrackBaseRef trackBaseRef() const
TrajectoryStateClosestToPoint impactPointTSCP() const
size_t recHitsSize() const
Get number of RecHits. (Warning, this includes invalid hits, which are not physical hits)...
Definition: Track.h:119
int numberOfValidHits() const
Definition: HitPattern.h:823
void swap(TransientTrack &rh)
bool operator<(const TransientTrack &other) const
TransientTrack(BasicTransientTrack *btt)
const HitPattern & hitPattern() const
TransientTrack & operator=(TransientTrack &&rh)
#define noexcept
const MagneticField * field() const
size_t recHitsSize() const
number of RecHits
double chi2() const
chi-squared of the fit
TrajectoryStateClosestToBeamLine stateAtBeamLine() const
void swap(ProxyBase &other)
Definition: ProxyBase.h:46
TrajectoryStateOnSurface innermostMeasurementState() const
unsigned short numberOfLostHits() const
number of hits lost
int TrackCharge
Definition: TrackCharge.h:4
TrackCharge charge() const
TransientTrack & operator=(TransientTrack const &rh)
double chi2() const
chi-squared of the fit
Definition: TrackBase.h:544
double ndof() const
number of degrees of freedom of the fit
Definition: TrackBase.h:550
bool impactPointStateAvailable() const
def move
Definition: eostools.py:510
TrackingRecHitRef recHit(size_t i) const
get n-th recHit
TrajectoryStateOnSurface outermostMeasurementState() const
trackingRecHit_iterator recHitsBegin() const
Iterator to first hit on the track.
Definition: Track.h:104
void setES(const edm::EventSetup &es)
trackingRecHit_iterator recHitsEnd() const
last iterator to RecHits
FreeTrajectoryState initialFreeState() const
const BasicTransientTrack * basicTransientTrack() const
const Track & track() const
const HitPattern & hitPattern() const
Access the hit pattern, indicating in which Tracker layers the track has hits.
Definition: TrackBase.h:445
BasicTransientTrack::Proxy Base
TrajectoryStateClosestToPoint trajectoryStateClosestToPoint(const GlobalPoint &point) const
const T & data() const
Definition: ProxyBase.h:65
int numberOfLostHits(HitCategory category) const
Definition: HitPattern.h:902
TransientTrack(TransientTrack const &rh)
double normalizedChi2() const
chi-squared divided by n.d.o.f.
ROOT::Math::PositionVector3D< ROOT::Math::Cartesian3D< float >, ROOT::Math::GlobalCoordinateSystemTag > GlobalPoint
point in global coordinate system
Definition: Point3D.h:17
double ndof() const
number of degrees of freedom of the fit
bool isValid() const
Definition: ProxyBase.h:79
TrajectoryStateOnSurface stateOnSurface(const GlobalPoint &point) const
ProxyBase & operator=(const ProxyBase &other)
Definition: ProxyBase.h:36
void setTrackingGeometry(const edm::ESHandle< GlobalTrackingGeometry > &tg)
TrackingRecHitRef recHit(size_t i) const
Get i-th hit on the track.
Definition: Track.h:114
TransientTrack(TransientTrack &&rh)
TrajectoryStateOnSurface impactPointState() const
trackingRecHit_iterator recHitsBegin() const
first iterator to RecHits
T & sharedData()
Definition: ProxyBase.h:77
*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
TrackingRecHitCollection::base::const_iterator trackingRecHit_iterator
iterator over a vector of reference to TrackingRecHit in the same collection
trackingRecHit_iterator recHitsEnd() const
Iterator to last hit on the track.
Definition: Track.h:109