1 #ifndef DataFormats_PatCandidates_interface_Vertexing_h
2 #define DataFormats_PatCandidates_interface_Vertexing_h
79 template<
typename T1,
typename T2>
void setDistances(const AlgebraicVector3 &dist, const AlgebraicSymMatrix33 &err)
Set dz and dr given the distance and the 3x3 total covariance matrix of the distance.
VertexAssociation()
Create a null vertx association.
bool isAvailable() const
Return 'true' if the reco::Vertex is available in the file, false if it has been dropped.
bool isNonnull() const
Return 'true' unless this is a null association (that is, no vertex)
void setDr(const Measurement1DFloat &dr)
bool isNull() const
Return 'true' if this is a null association (that is, no vertex)
bool isNull() const
Checks for null.
const reco::TrackBaseRef & trackRef() const
Returns a reference to the track stored in this vertex (can be null)
VertexAssociation(const reco::VertexRef &vertex, const reco::TrackBaseRef &tk)
const Measurement1DFloat & dz() const
void setDz(const Measurement1D &dz)
bool hasTransverseIP() const
True if the transverse distance was computed for this VertexAssociation.
void setDz(const Measurement1DFloat &dz)
bool hasErrors() const
True if the errors on dr and dz have been set, false if they're nulls.
bool isNonnull() const
Checks for non-null.
const reco::Track * track() const
Returns a C++ pointer to the track stored in this vertex (can be a null pointer)
bool hasTrack() const
Returns 'true' if a reference to a track was stored in this VertexAssociation.
bool isNull() const
Checks for null.
ROOT::Math::SMatrix< double, 3, 3, ROOT::Math::MatRepSym< double, 3 > > AlgebraicSymMatrix33
ROOT::Math::SVector< double, 3 > AlgebraicVector3
const reco::VertexRef & vertexRef() const
Returns the reference to the vertex (can be a null reference)
const reco::Vertex * operator->() const
Allows VertexAssociation to behave like a vertex ref (e.g. to do "assoc->position()") ...
void setDr(const Measurement1D &dr)
const Measurement1DFloat & dr() const
Distance between the object and the vertex in the transverse plane, and it's error.
VertexAssociation(const reco::VertexRef &vertex)
Create a vertex association given a ref to a vertex.
Analysis-level structure for vertex-related information.
const reco::Vertex & operator*() const
Return the vertex (that is, you can do "const reco::Vertex &vtx = *assoc")
const reco::Vertex * vertex() const
Returns a pointer to the vertex, or a null pointer if there is no vertex (null association) ...
T const * get() const
Returns C++ pointer to the item.
value_type const * get() const
void setDistances(const T1 &p1, const T2 &p2, const AlgebraicSymMatrix33 &err)
reco::TrackBaseRef track_