ATLAS Offline Software
Loading...
Searching...
No Matches
Trk::ExtendedVxCandidate Class Reference

Extends the standard Trk::VxCandidate to store the full covariance matrix of a fitted vertex all participating tracks. More...

#include <ExtendedVxCandidate.h>

Inheritance diagram for Trk::ExtendedVxCandidate:
Collaboration diagram for Trk::ExtendedVxCandidate:

Public Member Functions

 ExtendedVxCandidate ()
 Standard constructor for persistency.
 ExtendedVxCandidate (const Trk::RecVertex &recVertex, const std::vector< Trk::VxTrackAtVertex * > &vxTrackAtVertex, const Amg::MatrixX *fullCov=nullptr)
 Constructor taking a Trk::RecVertex, vector of incident tracks and a full covariance matrix of the fit.
virtual ~ExtendedVxCandidate ()
 Virtual calss destructor.
 ExtendedVxCandidate (const ExtendedVxCandidate &rhs)
 Copy constructor.
ExtendedVxCandidateoperator= (const ExtendedVxCandidate &)
 Assignement operator.
virtual ExtendedVxCandidateclone () const
 Clone method.
const Amg::MatrixXfullCovariance (void) const
 Full covariance matrix access method.
virtual MsgStream & dump (MsgStream &sl) const
 Output Method for MsgStream, to be overloaded by child classes.
virtual std::ostream & dump (std::ostream &sl) const
 Output Method for std::ostream, to be overloaded by child classes.
const Trk::RecVertexrecVertex (void) const
 Returns a reference to reconstructed vertex.
Trk::RecVertexrecVertex (void)
 Returns unconst reference to a reconstructed vertex Required by some of the vertex fitters.
void setRecVertex (Trk::RecVertex &recVertex)
 RecVertex set method.
std::vector< Trk::VxTrackAtVertex * > * vxTrackAtVertex (void)
 Unconst pointer to the vector of tracks Required by some of the vertex fitters.
const std::vector< Trk::VxTrackAtVertex * > * vxTrackAtVertex (void) const
 Const access to the vector of tracks fitted to the vertex.
void setVertexType (VertexType vertexType)
 return the type of the vertex
VertexType vertexType () const
 return the type of the vertex

Static Public Member Functions

static std::size_t numberOfInstantiations ()

Static Public Attributes

static std::atomic_size_t s_numberOfInstantiations

Protected Attributes

Trk::VertexType m_vertexType
Trk::RecVertex m_recVertex
std::vector< Trk::VxTrackAtVertex * > m_vxTrackAtVertex

Private Attributes

const Amg::MatrixXm_fullCovariance
 Full covariance matrix of the vertex and all corresponding tracks.

Friends

class ::ExtendedVxCandidateCnv_p1

Detailed Description

Extends the standard Trk::VxCandidate to store the full covariance matrix of a fitted vertex all participating tracks.


changed: 2-Apr-2007 Giacinto Piacquadio (added clone() method)

Author
Kirill Prokofiev Kiril.nosp@m.l.Pr.nosp@m.okofi.nosp@m.ev@c.nosp@m.ern.c.nosp@m.h

Definition at line 32 of file ExtendedVxCandidate.h.

Constructor & Destructor Documentation

◆ ExtendedVxCandidate() [1/3]

Trk::ExtendedVxCandidate::ExtendedVxCandidate ( )

Standard constructor for persistency.

Definition at line 13 of file ExtendedVxCandidate.cxx.

13 : VxCandidate(), m_fullCovariance(nullptr)
14 {}
const Amg::MatrixX * m_fullCovariance
Full covariance matrix of the vertex and all corresponding tracks.
VxCandidate()
Default constructor for persistency.

◆ ExtendedVxCandidate() [2/3]

Trk::ExtendedVxCandidate::ExtendedVxCandidate ( const Trk::RecVertex & recVertex,
const std::vector< Trk::VxTrackAtVertex * > & vxTrackAtVertex,
const Amg::MatrixX * fullCov = nullptr )

Constructor taking a Trk::RecVertex, vector of incident tracks and a full covariance matrix of the fit.

Definition at line 18 of file ExtendedVxCandidate.cxx.

20 :
22 m_fullCovariance(fullCov) {}
std::vector< Trk::VxTrackAtVertex * > * vxTrackAtVertex(void)
Unconst pointer to the vector of tracks Required by some of the vertex fitters.
const Trk::RecVertex & recVertex(void) const
Returns a reference to reconstructed vertex.

◆ ~ExtendedVxCandidate()

Trk::ExtendedVxCandidate::~ExtendedVxCandidate ( )
virtual

Virtual calss destructor.

Definition at line 24 of file ExtendedVxCandidate.cxx.

25 {
26 if(m_fullCovariance != nullptr) { delete m_fullCovariance;
27}
28 }

◆ ExtendedVxCandidate() [3/3]

Trk::ExtendedVxCandidate::ExtendedVxCandidate ( const ExtendedVxCandidate & rhs)

Copy constructor.

Definition at line 30 of file ExtendedVxCandidate.cxx.

30 :
31 VxCandidate(rhs),
32 m_fullCovariance(rhs.m_fullCovariance ? new Amg::MatrixX(*rhs.m_fullCovariance) : nullptr)
33 {}
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > MatrixX
Dynamic Matrix - dynamic allocation.

Member Function Documentation

◆ clone()

Trk::ExtendedVxCandidate * Trk::ExtendedVxCandidate::clone ( ) const
inlinevirtual

Clone method.

Reimplemented from Trk::VxCandidate.

Reimplemented in Trk::V0Hypothesis.

Definition at line 92 of file ExtendedVxCandidate.h.

93 {
94 return new Trk::ExtendedVxCandidate(*this);
95 }

◆ dump() [1/2]

MsgStream & Trk::VxCandidate::dump ( MsgStream & sl) const
virtualinherited

Output Method for MsgStream, to be overloaded by child classes.

Reimplemented in Trk::MVFVxCandidate.

Definition at line 99 of file VxCandidate.cxx.

100{
101 sl << "Printing Trk::VxCandidate of type: " << m_vertexType << endmsg;
102 sl << m_recVertex << endmsg;
103 sl << "Tracks used in the vertex fit: " << m_vxTrackAtVertex.size() << endmsg;
104 for (unsigned i = 0; i < m_vxTrackAtVertex.size(); i++) {
105 sl << "Track " << i + 1 << " " << *(m_vxTrackAtVertex[i]);
106 }
107 return sl;
108}
#define endmsg
std::vector< Trk::VxTrackAtVertex * > m_vxTrackAtVertex
Trk::VertexType m_vertexType
Definition VxCandidate.h:96
Trk::RecVertex m_recVertex
Definition VxCandidate.h:99

◆ dump() [2/2]

std::ostream & Trk::VxCandidate::dump ( std::ostream & sl) const
virtualinherited

Output Method for std::ostream, to be overloaded by child classes.

Reimplemented in Trk::MVFVxCandidate.

Definition at line 111 of file VxCandidate.cxx.

112{
113 sl << "Printing Trk::VxCandidate of type: " << m_vertexType << std::endl;
114 sl << m_recVertex << std::endl;
115 sl << "Tracks used in the vertex fit: " << m_vxTrackAtVertex.size() << std::endl;
116 for (unsigned i = 0; i < m_vxTrackAtVertex.size(); i++) {
117 sl << "Track " << i + 1 << " " << *(m_vxTrackAtVertex[i]);
118 }
119 return sl;
120}

◆ fullCovariance()

const Amg::MatrixX * Trk::ExtendedVxCandidate::fullCovariance ( void ) const
inline

Full covariance matrix access method.

Definition at line 87 of file ExtendedVxCandidate.h.

88 {
89 return m_fullCovariance;
90 }

◆ numberOfInstantiations()

std::size_t Trk::ObjectCounter< Trk::VxCandidate >::numberOfInstantiations ( )
inlinestaticinherited

Definition at line 25 of file TrkObjectCounter.h.

26 {
27#ifndef NDEBUG
28 return s_numberOfInstantiations.load();
29#endif
30 return 0;
31 }
Helper to enable counting number of instantiations in debug builds.

◆ operator=()

ExtendedVxCandidate & Trk::ExtendedVxCandidate::operator= ( const ExtendedVxCandidate & rhs)

Assignement operator.

Assignement operator

Definition at line 35 of file ExtendedVxCandidate.cxx.

36 {
37 if (this!=&rhs)
38 {
39 this->VxCandidate::operator=(rhs);
40 delete m_fullCovariance;
41 m_fullCovariance = rhs.m_fullCovariance ? new Amg::MatrixX(*rhs.m_fullCovariance) : nullptr;
42 }
43 return *this;
44 }//end of assignement operator
VxCandidate & operator=(const VxCandidate &)

◆ recVertex() [1/2]

Trk::RecVertex & Trk::VxCandidate::recVertex ( void )
inlineinherited

Returns unconst reference to a reconstructed vertex Required by some of the vertex fitters.

Definition at line 138 of file VxCandidate.h.

139{
140 return m_recVertex;
141}

◆ recVertex() [2/2]

const Trk::RecVertex & Trk::VxCandidate::recVertex ( void ) const
inlineinherited

Returns a reference to reconstructed vertex.

Definition at line 132 of file VxCandidate.h.

133{
134 return m_recVertex;
135}

◆ setRecVertex()

void Trk::VxCandidate::setRecVertex ( Trk::RecVertex & recVertex)
inlineinherited

RecVertex set method.

Definition at line 126 of file VxCandidate.h.

127{
129}

◆ setVertexType()

void Trk::VxCandidate::setVertexType ( VertexType vertexType)
inlineinherited

return the type of the vertex

Definition at line 114 of file VxCandidate.h.

115{
117}
VertexType vertexType() const
return the type of the vertex

◆ vertexType()

VertexType Trk::VxCandidate::vertexType ( ) const
inlineinherited

return the type of the vertex

Definition at line 120 of file VxCandidate.h.

121{
122 return m_vertexType;
123}

◆ vxTrackAtVertex() [1/2]

std::vector< Trk::VxTrackAtVertex * > * Trk::VxCandidate::vxTrackAtVertex ( void )
inlineinherited

Unconst pointer to the vector of tracks Required by some of the vertex fitters.

Definition at line 144 of file VxCandidate.h.

145{
146 return &m_vxTrackAtVertex;
147}

◆ vxTrackAtVertex() [2/2]

const std::vector< Trk::VxTrackAtVertex * > * Trk::VxCandidate::vxTrackAtVertex ( void ) const
inlineinherited

Const access to the vector of tracks fitted to the vertex.

Definition at line 150 of file VxCandidate.h.

151{
152 return &m_vxTrackAtVertex;
153}

◆ ::ExtendedVxCandidateCnv_p1

friend class ::ExtendedVxCandidateCnv_p1
friend

Definition at line 76 of file ExtendedVxCandidate.h.

Member Data Documentation

◆ m_fullCovariance

const Amg::MatrixX* Trk::ExtendedVxCandidate::m_fullCovariance
private

Full covariance matrix of the vertex and all corresponding tracks.

Size (Ntrk*5 +3)X(Ntrk*5+3) full covariance

Definition at line 83 of file ExtendedVxCandidate.h.

◆ m_recVertex

Trk::RecVertex Trk::VxCandidate::m_recVertex
protectedinherited

Definition at line 99 of file VxCandidate.h.

◆ m_vertexType

Trk::VertexType Trk::VxCandidate::m_vertexType
protectedinherited

Definition at line 96 of file VxCandidate.h.

◆ m_vxTrackAtVertex

std::vector<Trk::VxTrackAtVertex*> Trk::VxCandidate::m_vxTrackAtVertex
protectedinherited

Definition at line 102 of file VxCandidate.h.

◆ s_numberOfInstantiations

std::atomic_size_t Trk::ObjectCounter< Trk::VxCandidate >::s_numberOfInstantiations
inlinestaticinherited

Definition at line 22 of file TrkObjectCounter.h.


The documentation for this class was generated from the following files: