1 #ifndef DataFormat_ParticleFlowReco_PFDisplacedVertex_h 2 #define DataFormat_ParticleFlowReco_PFDisplacedVertex_h 68 const Track& refTrack,
160 bool useRefitted =
true,
161 double mass = 0.0)
const {
167 bool useRefitted =
true,
168 double mass = 0.0)
const {
bool isKplus_Loose() const
const math::XYZTLorentzVector primaryMomentum(std::string massHypo="PI", bool useRefitted=true, double mass=0.0) const
Momentum of primary or merged track calculated with a mass hypothesis.
const bool isPrimaryTrack(const reco::TrackBaseRef &originalTrack) const
Is a primary track was identified.
bool isConv_Loose() const
bool isNucl_Loose() const
std::string nameVertexType() const
void setPrimaryDirection(const math::XYZPoint &pvtx)
const bool isTherePrimaryTracks() const
--—— Provide useful information --—— ///
const int nMergedTracks() const
Number of merged tracks was identified.
void Dump(std::ostream &out=std::cout) const
cout function
const int nPrimaryTracks() const
Number of primary tracks was identified.
const bool isIncomingTrack(const reco::TrackBaseRef &originalTrack) const
Is primary or merged track.
const int nSecondaryTracks() const
Number of secondary tracks was identified.
const double secondaryPt() const
const int nNotFromVertexTracks() const
Number of tracks which was not identified.
const std::vector< VertexTrackType > trackTypes() const
const math::XYZVector primaryDirection() const
Primary Direction.
const int nTracks() const
Number of tracks.
const math::XYZTLorentzVector secondaryMomentum(std::string massHypo="PI", bool useRefitted=true, double mass=0.0) const
XYZTLorentzVectorD XYZTLorentzVector
Lorentz vector with cylindrical internal representation using pseudorapidity.
const bool isThereNotFromVertexTracks() const
If there is a track which was not identified.
void addElement(const TrackBaseRef &r, const Track &refTrack, const PFTrackHitFullInfo &hitInfo, VertexTrackType trackType=T_NOT_FROM_VERTEX, float w=1.0)
Add a new track to the vertex.
std::vector< PFTrackHitFullInfo > trackHitFullInfos_
Information on the distance between track's hits and the Vertex.
void setVertexType(VertexType vertexType)
Set the type of this vertex.
std::pair< unsigned int, unsigned int > PFTrackHitInfo
Information on the distance between track's hits and the Vertex.
const bool isThereSecondaryTracks() const
If a secondary track was identified.
bool isKminus_Loose() const
const int totalCharge() const
Total Charge.
const std::vector< PFTrackHitFullInfo > trackHitFullInfos() const
const size_t trackPosition(const reco::TrackBaseRef &originalTrack) const
const bool isThereMergedTracks() const
If a merged track was identified.
VertexType vertexType_
--—— MEMBERS --—— ///
PFDisplacedVertex()
Default constructor.
std::pair< PFTrackHitInfo, PFTrackHitInfo > PFTrackHitFullInfo
XYZVectorD XYZVector
spatial vector with cartesian internal representation
const PFTrackHitFullInfo trackHitFullInfo(const reco::TrackBaseRef &originalTrack) const
XYZPointD XYZPoint
point in space with cartesian internal representation
std::vector< VertexTrackType > trackTypes_
Types of the tracks associated to the vertex.
VertexType vertexType()
Get the type of this vertex.
const int nKindTracks(VertexTrackType) const
Common tool used to get the number of tracks of a given Kind.
const double getMass2(M_Hypo, double) const
Get the mass with a given hypothesis.
math::XYZVector primaryDirection_
const math::XYZTLorentzVector primaryMomentum(M_Hypo massHypo, bool useRefitted=true, double mass=0.0) const
Momentum of primary or merged track calculated with a mass hypothesis.
const math::XYZTLorentzVector momentum(std::string, VertexTrackType, bool, double mass) const
Common tool to calculate the momentum vector of tracks with a given Kind.
const bool isThereKindTracks(VertexTrackType) const
---—— TOOLS --------—— ///
void cleanTracks()
Clean the tracks collection and all the associated collections.
const bool isOutgoingTrack(const reco::TrackBaseRef &originalTrack) const
Is secondary track.
math::XYZTLorentzVector defaultPrimaryMomentum_
math::XYZTLorentzVector defaultSecondaryMomentum_
const double angle_io() const
const bool isMergedTrack(const reco::TrackBaseRef &originalTrack) const
Is a secondary track was identified.
const double primaryPt() const
Momentum of primary or merged track calculated with a mass hypothesis.
const bool isSecondaryTrack(const reco::TrackBaseRef &originalTrack) const
Is a secondary track was identified.
const math::XYZTLorentzVector secondaryMomentum(M_Hypo massHypo, bool useRefitted=true, double mass=0.0) const
bool isConvertedBremm() const
M_Hypo
Mass hypothesis enum.
TrackBaseRef originalTrack(const Track &refTrack) const
const bool isTrack(size_t itrk, VertexTrackType T) const