#include <DataFormats/ParticleFlowReco/interface/PFTrajectoryPoint.h>
Public Types | |
enum | LayerType { ClosestApproach = 0, BeamPipeOrEndVertex = 1, PS1 = 2, PS2 = 3, ECALEntrance = 4, ECALShowerMax = 5, HCALEntrance = 6, HCALExit = 7, NLayers = 8 } |
Define the different layers where the track can be propagated. More... | |
typedef ROOT::Math::PositionVector3D < ROOT::Math::CylindricalEta3D < Double32_t > > | REPPoint |
Public Member Functions | |
void | calculatePositionREP () |
calculate posrep_ once and for all | |
int | detId () const |
measurement detId | |
bool | isTrackerLayer () const |
is this point corresponding to an intersection with a tracker layer ? | |
bool | isValid () const |
is this point valid ? | |
int | layer () const |
trajectory point layer | |
const math::XYZTLorentzVector & | momentum () const |
4-momenta quadrivector | |
bool | operator== (const reco::PFTrajectoryPoint &other) const |
PFTrajectoryPoint (const PFTrajectoryPoint &other) | |
copy | |
PFTrajectoryPoint (int detId, int layer, const math::XYZPoint &posxyz, const math::XYZTLorentzVector &momentum) | |
constructor from values. | |
PFTrajectoryPoint () | |
default constructor. Set variables at default dummy values | |
const math::XYZPoint & | position () const |
cartesian position (x, y, z) | |
const REPPoint & | positionREP () const |
trajectory position in (rho, eta, phi) base | |
virtual | ~PFTrajectoryPoint () |
destructor | |
Private Attributes | |
int | detId_ |
detid if measurement is corresponding to a tracker layer | |
bool | isTrackerLayer_ |
Is the measurement corresponding to a tracker layer? or was it obtained by propagating the track to a certain position? | |
int | layer_ |
propagated layer | |
math::XYZTLorentzVector | momentum_ |
momentum quadrivector | |
REPPoint | posrep_ |
position in (rho, eta, phi) base (transient) | |
math::XYZPoint | posxyz_ |
cartesian position (x, y, z) | |
Friends | |
std::ostream & | operator<< (std::ostream &out, const reco::PFTrajectoryPoint &trajPoint) |
Definition at line 26 of file PFTrajectoryPoint.h.
typedef ROOT::Math::PositionVector3D<ROOT::Math::CylindricalEta3D<Double32_t> > reco::PFTrajectoryPoint::REPPoint |
Definition at line 29 of file PFTrajectoryPoint.h.
Define the different layers where the track can be propagated.
ClosestApproach | Point of closest approach from beam axis (initial point in the case of PFSimParticle). |
BeamPipeOrEndVertex | |
PS1 | Preshower layer 1. |
PS2 | Preshower layer 2. |
ECALEntrance | ECAL front face. |
ECALShowerMax |
expected maximum of the shower in ECAL, for an e/gamma particle
|
HCALEntrance | HCAL front face. |
HCALExit | HCAL exit. |
NLayers |
Definition at line 32 of file PFTrajectoryPoint.h.
00032 { 00034 ClosestApproach = 0, 00035 BeamPipeOrEndVertex = 1, 00037 PS1 = 2, 00039 PS2 = 3, 00041 ECALEntrance = 4, 00044 ECALShowerMax = 5, 00046 HCALEntrance = 6, 00048 HCALExit = 7, 00049 NLayers = 8 00050 };
PFTrajectoryPoint::PFTrajectoryPoint | ( | ) |
default constructor. Set variables at default dummy values
Definition at line 5 of file PFTrajectoryPoint.cc.
00005 : 00006 isTrackerLayer_(false), 00007 detId_(-1), 00008 layer_(-1) {}
PFTrajectoryPoint::PFTrajectoryPoint | ( | int | detId, | |
int | layer, | |||
const math::XYZPoint & | posxyz, | |||
const math::XYZTLorentzVector & | momentum | |||
) |
constructor from values.
set detId to -1 if this point is not from a tracker layer
Definition at line 11 of file PFTrajectoryPoint.cc.
References isTrackerLayer_, posrep_, and posxyz_.
00014 : 00015 isTrackerLayer_(false), 00016 detId_(detId), 00017 layer_(layer), 00018 posxyz_(posxyz), 00019 momentum_(momentum) 00020 { 00021 if (detId) isTrackerLayer_ = true; 00022 posrep_.SetCoordinates(posxyz_.Rho(), posxyz_.Eta(), posxyz_.Phi()); 00023 }
PFTrajectoryPoint::PFTrajectoryPoint | ( | const PFTrajectoryPoint & | other | ) |
copy
Definition at line 26 of file PFTrajectoryPoint.cc.
00026 : 00027 isTrackerLayer_(other.isTrackerLayer_), 00028 detId_(other.detId_), 00029 layer_(other.layer_), 00030 posxyz_(other.posxyz_), 00031 posrep_(other.posrep_), 00032 momentum_(other.momentum_) { }
PFTrajectoryPoint::~PFTrajectoryPoint | ( | ) | [virtual] |
void reco::PFTrajectoryPoint::calculatePositionREP | ( | ) | [inline] |
int reco::PFTrajectoryPoint::detId | ( | ) | const [inline] |
measurement detId
Definition at line 70 of file PFTrajectoryPoint.h.
References detId_.
Referenced by reco::operator<<().
00070 { return detId_; }
bool reco::PFTrajectoryPoint::isTrackerLayer | ( | ) | const [inline] |
is this point corresponding to an intersection with a tracker layer ?
Definition at line 82 of file PFTrajectoryPoint.h.
References detId_.
Referenced by reco::PFTrack::addPoint().
00082 { 00083 if(detId_ >= 0 ) return true; 00084 else return false; 00085 }
is this point valid ?
Definition at line 76 of file PFTrajectoryPoint.h.
References detId_, and layer_.
Referenced by PFAlgo::isSatelliteCluster(), reco::PFBlockElementGsfTrack::PFBlockElementGsfTrack(), reco::PFBlockElementTrack::PFBlockElementTrack(), PFBlockAlgo::testLinkByRecHit(), PFBlockAlgo::testTrackAndECAL(), PFBlockAlgo::testTrackAndHCAL(), and PFBlockAlgo::testTrackAndPS().
int reco::PFTrajectoryPoint::layer | ( | ) | const [inline] |
trajectory point layer
Definition at line 73 of file PFTrajectoryPoint.h.
References layer_.
Referenced by reco::operator<<().
00073 { return layer_; }
const math::XYZTLorentzVector& reco::PFTrajectoryPoint::momentum | ( | ) | const [inline] |
4-momenta quadrivector
Definition at line 99 of file PFTrajectoryPoint.h.
References momentum_.
Referenced by PFRootEventManager::closestParticle(), PFRootEventManager::fillOutEventWithSimParticles(), EFilter::filter(), DisplayManager::loadGRecTracks(), DisplayManager::loadGSimParticles(), reco::operator<<(), PFRootEventManager::tauBenchmark(), PFBlockAlgo::testTrackAndECAL(), VisGsfPFRecTrackTwig::update(), and VisPFRecTrackTwig::update().
00099 { return momentum_; }
bool PFTrajectoryPoint::operator== | ( | const reco::PFTrajectoryPoint & | other | ) | const |
const math::XYZPoint& reco::PFTrajectoryPoint::position | ( | ) | const [inline] |
cartesian position (x, y, z)
Definition at line 88 of file PFTrajectoryPoint.h.
References posxyz_.
Referenced by PFRootEventManager::closestParticle(), PFRootEventManager::fillOutEventWithSimParticles(), PFAlgo::isSatelliteCluster(), DisplayManager::loadGSimParticles(), reco::operator<<(), reco::PFBlockElementGsfTrack::PFBlockElementGsfTrack(), reco::PFBlockElementTrack::PFBlockElementTrack(), PFBlockAlgo::testLinkByRecHit(), PFBlockAlgo::testTrackAndECAL(), PFBlockAlgo::testTrackAndPS(), VisGsfPFRecTrackTwig::update(), and VisPFRecTrackTwig::update().
00088 { return posxyz_; }
const REPPoint& reco::PFTrajectoryPoint::positionREP | ( | ) | const [inline] |
trajectory position in (rho, eta, phi) base
Definition at line 91 of file PFTrajectoryPoint.h.
References posrep_.
Referenced by PFBlockAlgo::testLinkByRecHit(), PFBlockAlgo::testTrackAndECAL(), and PFBlockAlgo::testTrackAndHCAL().
00091 { return posrep_; }
std::ostream& operator<< | ( | std::ostream & | out, | |
const reco::PFTrajectoryPoint & | trajPoint | |||
) | [friend] |
Definition at line 45 of file PFTrajectoryPoint.cc.
00046 { 00047 if(!out) return out; 00048 00049 const math::XYZPoint& posxyz = trajPoint.position(); 00050 00051 out<<"Traj point id = "<<trajPoint.detId() 00052 <<", layer = "<<trajPoint.layer() 00053 <<", Eta,Phi = "<<posxyz.Eta()<<","<<posxyz.Phi() 00054 <<", X,Y = "<<posxyz.X()<<","<<posxyz.Y() 00055 <<", R,Z = "<<posxyz.Rho()<<","<<posxyz.Z() 00056 <<", E,Pt = "<<trajPoint.momentum().E()<<","<<trajPoint.momentum().Pt(); 00057 00058 return out; 00059 }
int reco::PFTrajectoryPoint::detId_ [private] |
detid if measurement is corresponding to a tracker layer
Definition at line 112 of file PFTrajectoryPoint.h.
Referenced by detId(), isTrackerLayer(), and isValid().
bool reco::PFTrajectoryPoint::isTrackerLayer_ [private] |
Is the measurement corresponding to a tracker layer? or was it obtained by propagating the track to a certain position?
Definition at line 109 of file PFTrajectoryPoint.h.
Referenced by PFTrajectoryPoint().
int reco::PFTrajectoryPoint::layer_ [private] |
momentum quadrivector
Definition at line 124 of file PFTrajectoryPoint.h.
Referenced by momentum(), and operator==().
REPPoint reco::PFTrajectoryPoint::posrep_ [private] |
position in (rho, eta, phi) base (transient)
Definition at line 121 of file PFTrajectoryPoint.h.
Referenced by calculatePositionREP(), PFTrajectoryPoint(), and positionREP().
cartesian position (x, y, z)
Definition at line 118 of file PFTrajectoryPoint.h.
Referenced by calculatePositionREP(), operator==(), PFTrajectoryPoint(), and position().