7#ifndef XAODTRACKING_VERSIONS_VERTEX_V1_H
8#define XAODTRACKING_VERSIONS_VERTEX_V1_H
15#include "AthLinks/ElementLink.h"
55 Type::ObjectType
type()
const;
127 typedef std::vector< ElementLink< xAOD::TrackParticleContainer > >
171 float weight = 1.0 );
175 float weight = 1.0 );
Base class for elements of a container that can have aux data.
Cached value with atomic update.
#define SG_BASE(D, B)
Declare that class D derives from class B.
#define AmgSymMatrix(dim)
Cached value with atomic update.
ElementLink implementation for ROOT usage.
Base class for elements of a container that can have aux data.
Class describing a Vertex.
void clearNeutrals()
Remove all neutrals from the vertex.
float z() const
Returns the z position.
std::vector< ElementLink< xAOD::NeutralParticleContainer > > NeutralParticleLinks_t
Type for the associated neutral particles.
void setNeutralWeights(const std::vector< float > &weights)
Set all the neutral weights.
size_t nNeutralParticles() const
Get the number of neutrals associated with this vertex.
void setTrackParticleLinks(const TrackParticleLinks_t &trackParticles)
Set all track particle links at once.
size_t nTrackParticles() const
Get the number of tracks associated with this vertex.
void clearTracks()
Remove all tracks from the vertex.
const NeutralParticle * neutralParticle(size_t i) const
Get the pointer to a given neutral that was used in vertex reco.
void setTrackWeights(const std::vector< float > &weights)
Set all the track weights.
CxxUtils::CachedValue< Amg::Vector3D > m_position
Cached position of the vertex.
void setCovariancePosition(const AmgSymMatrix(3)&covariancePosition)
Sets the vertex covariance matrix.
Vertex_v1()
Default constructor.
Vertex_v1 & operator=(const Vertex_v1 &tp)
Assignment operator. This can involve creating and copying an Auxilary store, and so should be used s...
float time() const
Returns the time.
void addTrackAtVertex(const ElementLink< TrackParticleContainer > &tr, float weight=1.0)
Add a new track to the vertex.
CxxUtils::CachedValue< AmgSymMatrix(3)> m_covariance
Cached covariance of the vertex.
void setZ(float value)
Sets the z position.
const TrackParticleLinks_t & trackParticleLinks() const
Get all the particles associated with the vertex.
void addNeutralAtVertex(const ElementLink< NeutralParticleContainer > &tr, float weight=1.0)
Add a new neutral to the vertex.
const TrackParticle * trackParticle(size_t i) const
Get the pointer to a given track that was used in vertex reco.
std::vector< ElementLink< xAOD::TrackParticleContainer > > TrackParticleLinks_t
Type for the associated track particles.
void resetCache()
Reset the internal cache of the object.
void setX(float value)
Sets the x position.
float neutralWeight(size_t i) const
Get the weight of a given neutral in the vertex reconstruction.
void setY(float value)
Sets the y position.
Type::ObjectType type() const
A little helper function for identifying the type in template code.
void setHasValidTime(uint8_t value)
Sets whether or not the vertex has a valid time.
void setVertexType(VxType::VertexType vType)
Set the type of the vertex.
float y() const
Returns the y position.
void setCovariance(const std::vector< float > &value)
Sets the covariance matrix as a simple vector of values.
float numberDoF() const
Returns the number of degrees of freedom of the vertex fit as float.
void setTimeResolution(float value)
Sets the time resolution.
const NeutralParticleLinks_t & neutralParticleLinks() const
Get all the particles associated with the vertex.
void setPosition(const Amg::Vector3D &position)
Sets the 3-position.
bool vxTrackAtVertexAvailable() const
Check if VxTrackAtVertices are attached to the object.
VxType::VertexType vertexType() const
The type of the vertex.
float chiSquared() const
Returns the of the vertex fit as float.
std::vector< Trk::VxTrackAtVertex > & vxTrackAtVertex()
Non-const access to the VxTrackAtVertex vector.
void setTime(float value)
Sets the time.
float timeResolution() const
Returns the time resolution.
const std::vector< float > & neutralWeights() const
Get all the neutral weights.
const std::vector< float > & trackWeights() const
Get all the track weights.
void setFitQuality(float chiSquared, float numberDoF)
Set the 'Fit Quality' information.
const Amg::Vector3D & position() const
Returns the 3-pos.
const AmgSymMatrix(3) &covariancePosition() const
Returns the vertex covariance matrix.
uint8_t hasValidTime() const
Returns whether or not the vertex has a valid time.
float x() const
Returns the x position.
const std::vector< float > & covariance() const
Returns the covariance matrix as a simple vector of values.
void setNeutralParticleLinks(const NeutralParticleLinks_t &neutralParticles)
Set all neutral particle links at once.
float trackWeight(size_t i) const
Get the weight of a given track in the vertex reconstruction.
Eigen::Matrix< double, 3, 1 > Vector3D
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
setStrategy setMatchFlag ElementLink< TrackParticleContainer >
NeutralParticle_v1 NeutralParticle
Reference the current persistent version:
TrackParticle_v1 TrackParticle
Reference the current persistent version: