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

An extension of Trk::ExtendedVxCandidate, to be used for constrained and unconstrained V0 candidates storage. More...

#include <V0Hypothesis.h>

Inheritance diagram for Trk::V0Hypothesis:
Collaboration diagram for Trk::V0Hypothesis:

Public Member Functions

 V0Hypothesis ()
 Default constructor.
 V0Hypothesis (const Trk::ExtendedVxCandidate &vxCandidate, int positiveTrackID=MC::PIPLUS, int negativeTrackID=MC::PIMINUS, int constraintID=MC::K0)
 V0Hypothesis (const Trk::RecVertex &recVertex, const std::vector< Trk::VxTrackAtVertex * > &vxTrackAtVertex, const Amg::MatrixX *fullCov=nullptr, int positiveTrackID=MC::PIPLUS, int negativeTrackID=MC::PIMINUS, int constraintID=MC::K0)
 A constructor taking a Trk::RecVertex, a vector of tracks fitted to the vertex, a full covariance matrix of the fit and PDG ID's of particles and constraint mass as arguments.
virtual V0Hypothesisclone () const
 Clone method.
V0Hypothesisoperator= (const V0Hypothesis &rhs)
 Assignement operator, clone method and copy constructor.
virtual ~V0Hypothesis ()
 Destructor.
 V0Hypothesis (const V0Hypothesis &rhs)
 Copy constructor.
int positiveTrackID (void) const
 Retrieves a positive decay product ID.
int negativeTrackID (void) const
 Retrieves a negative decay product.
int hypothesisID (void) const
 Retrieves a V0 hypothesis ID.
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

int m_positiveTrackID
int m_negativeTrackID
int m_constraintID
const Amg::MatrixXm_fullCovariance
 Full covariance matrix of the vertex and all corresponding tracks.

Friends

class ::V0HypothesisCnv_p1

Detailed Description

An extension of Trk::ExtendedVxCandidate, to be used for constrained and unconstrained V0 candidates storage.

In addition to the standard Trk::ExtendedVxCandidate functionality, this class stores the assumed PDG ID of the positive and negative tracks, making the V0 and the assumed PDG ID of the V0.

begin : 20-07-2005
changes : 01-06-2006, Kirill Prokofiev Kiril.nosp@m.l.Pr.nosp@m.okofi.nosp@m.ev@c.nosp@m.ern.c.nosp@m.h This class now inherits from ExtendedVxCandidate March 2007, E. Bouhova-Thacker, K. Prokofiev move methods to TrkVertexAnalysisUtils/V0Tools.h

Authors
Evelina Bouhova-Thacker (Lancaster University), Rob Henderson (Lancater University) e.bou.nosp@m.hova.nosp@m.@cern.nosp@m..ch, r.hen.nosp@m.ders.nosp@m.on@la.nosp@m.ncas.nosp@m.ter.a.nosp@m.c.uk

Definition at line 39 of file V0Hypothesis.h.

Constructor & Destructor Documentation

◆ V0Hypothesis() [1/4]

Trk::V0Hypothesis::V0Hypothesis ( )

Default constructor.

Definition at line 21 of file V0Hypothesis.cxx.

◆ V0Hypothesis() [2/4]

Trk::V0Hypothesis::V0Hypothesis ( const Trk::ExtendedVxCandidate & vxCandidate,
int positiveTrackID = MC::PIPLUS,
int negativeTrackID = MC::PIMINUS,
int constraintID = MC::K0 )

Definition at line 23 of file V0Hypothesis.cxx.

24 :
25 ExtendedVxCandidate(vxCandidate),
int positiveTrackID(void) const
Retrieves a positive decay product ID.
int negativeTrackID(void) const
Retrieves a negative decay product.

◆ V0Hypothesis() [3/4]

Trk::V0Hypothesis::V0Hypothesis ( const Trk::RecVertex & recVertex,
const std::vector< Trk::VxTrackAtVertex * > & vxTrackAtVertex,
const Amg::MatrixX * fullCov = nullptr,
int positiveTrackID = MC::PIPLUS,
int negativeTrackID = MC::PIMINUS,
int constraintID = MC::K0 )

A constructor taking a Trk::RecVertex, a vector of tracks fitted to the vertex, a full covariance matrix of the fit and PDG ID's of particles and constraint mass as arguments.

Definition at line 28 of file V0Hypothesis.cxx.

29 :
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.

◆ ~V0Hypothesis()

Trk::V0Hypothesis::~V0Hypothesis ( )
virtualdefault

Destructor.

◆ V0Hypothesis() [4/4]

Trk::V0Hypothesis::V0Hypothesis ( const V0Hypothesis & rhs)
default

Copy constructor.

Member Function Documentation

◆ clone()

V0Hypothesis * Trk::V0Hypothesis::clone ( ) const
virtual

Clone method.

Reimplemented from Trk::ExtendedVxCandidate.

Definition at line 33 of file V0Hypothesis.cxx.

34 {return new V0Hypothesis(*this);}
V0Hypothesis()
Default constructor.

◆ 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
inlineinherited

Full covariance matrix access method.

Definition at line 87 of file ExtendedVxCandidate.h.

88 {
89 return m_fullCovariance;
90 }
const Amg::MatrixX * m_fullCovariance
Full covariance matrix of the vertex and all corresponding tracks.

◆ hypothesisID()

int Trk::V0Hypothesis::hypothesisID ( void ) const
inline

Retrieves a V0 hypothesis ID.

The pid = 0 for no-hypothesis case (unconstrained fit for instance). This coresponds to PDG::null in ATHENA definitions.

Definition at line 111 of file V0Hypothesis.h.

112 {return m_constraintID;}

◆ negativeTrackID()

int Trk::V0Hypothesis::negativeTrackID ( void ) const
inline

Retrieves a negative decay product.

Definition at line 108 of file V0Hypothesis.h.

109 {return m_negativeTrackID;}

◆ 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=()

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

Assignement operator, clone method and copy constructor.

Definition at line 36 of file V0Hypothesis.cxx.

37 {
38 if (this!=&rhs)
39 {
40// you need to call the base class assignment operator
42 m_positiveTrackID = rhs.m_positiveTrackID;
43 m_negativeTrackID = rhs.m_negativeTrackID;
44 m_constraintID = rhs.m_constraintID;
45 }
46 return *this;
47 }
ExtendedVxCandidate & operator=(const ExtendedVxCandidate &)
Assignement operator.

◆ positiveTrackID()

int Trk::V0Hypothesis::positiveTrackID ( void ) const
inline

Retrieves a positive decay product ID.

Definition at line 105 of file V0Hypothesis.h.

106 {return m_positiveTrackID;}

◆ 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}

◆ ::V0HypothesisCnv_p1

friend class ::V0HypothesisCnv_p1
friend

Definition at line 97 of file V0Hypothesis.h.

Member Data Documentation

◆ m_constraintID

int Trk::V0Hypothesis::m_constraintID
private

Definition at line 101 of file V0Hypothesis.h.

◆ m_fullCovariance

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

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_negativeTrackID

int Trk::V0Hypothesis::m_negativeTrackID
private

Definition at line 100 of file V0Hypothesis.h.

◆ m_positiveTrackID

int Trk::V0Hypothesis::m_positiveTrackID
private

Definition at line 99 of file V0Hypothesis.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: