2 #include "Math/GenVector/PositionVector3D.h"
34 charge_(other.charge_),
35 trajectoryPoints_(other.trajectoryPoints_),
36 indexInnermost_(other.indexInnermost_),
37 indexOutermost_(other.indexOutermost_),
84 throw cms::Exception(
"SizeError")<<
"PFRecTrack::extrapolatedPoint: cannot access "
101 if (!out)
return out;
106 out<<
"Track charge = "<<track.
charge()
107 <<
", Pt = "<<closestApproach.
momentum().Pt()
108 <<
", P = "<<closestApproach.
momentum().P()<<endl
109 <<
"\tR0 = "<<closestApproach.
position().Rho()
110 <<
" Z0 = "<<closestApproach.
position().Z()<<endl
111 <<
"\tnumber of tracker measurements = "
const math::XYZPoint & position() const
cartesian position (x, y, z)
Base class for particle flow input reconstructed tracks and simulated particles.
std::ostream & operator<<(std::ostream &, BeamSpot beam)
Point of closest approach from beam axis (initial point in the case of PFSimParticle) ...
std::vector< reco::PFTrajectoryPoint > trajectoryPoints_
vector of trajectory points
bool isTrackerLayer() const
is this point corresponding to an intersection with a tracker layer ?
const reco::PFTrajectoryPoint & extrapolatedPoint(unsigned layerid) const
void addPoint(const reco::PFTrajectoryPoint &trajPt)
const math::XYZTLorentzVector & momentum() const
4-momenta quadrivector
const reco::PFTrajectoryPoint & trajectoryPoint(unsigned index) const
static const unsigned int nMaxTrackingLayers_
maximal number of tracking layers
void calculatePositionREP()
unsigned int nTrajectoryMeasurements() const
unsigned int indexOutermost_
index outermost tracker measurement
unsigned int indexInnermost_
index innermost tracker measurement
A PFTrack holds several trajectory points, which basically contain the position and momentum of a tra...