ATLAS Offline Software
Loading...
Searching...
No Matches
SecVtxInfo.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3*/
4
5/***************************************************************************
6 SecVtxInfo.h - Description
7 -------------------
8 begin : 04-06-2004
9 authors : Andreas Wildauer (CERN PH-ATC), Fredrik Akesson (CERN PH-ATC)
10 email : andreas.wildauer@cern.ch, fredrik.akesson@cern.ch
11 changes :
12
13 ***************************************************************************/
14
15#ifndef JETTAGINFO_SECVTXINFO_H
16#define JETTAGINFO_SECVTXINFO_H
17
20#include <vector>
21#include <iostream>
22
23namespace Trk
24{
25 class RecVertex;
26}
27
28namespace Analysis
29{
30typedef std::vector<double> FloatVec;
31typedef std::vector<std::string> StringVector;
32typedef std::vector<std::string>::iterator StringIterator;
33typedef std::vector<const Rec::TrackParticle*> TrackVec;
34
58
59class SecVtxInfo : public BaseTagInfo
60{
61public:
62 enum FitType { TearDown=0, BuildUp=1 , NoFit=2 };
64 SecVtxInfo();
65
67 SecVtxInfo(const TagInfoType& x);
68
70 SecVtxInfo(const SecVtxInfo& rhs);
71
73 SecVtxInfo &operator= (const SecVtxInfo& rhs);
74
76 virtual ~SecVtxInfo();
77
78 virtual SecVtxInfo* clone() const;
79
81 int numSelTracksForFit() const;
82
85 double distance() const;
86 double rphidistance() const;
87
89 double probability() const;
90
92 double mass() const;
93
95 double energyFraction() const;
96
98 int mult()const;
99
101 FitType fitType() const; // Type of fit
102
104 const Trk::RecVertex& secVertexPos() const;
105
107 int NumberOfG2TrackVertices() const;
108
110 void setFitType(FitType type);
111 void setSecVtx(const Trk::RecVertex& secVtx,
112 double fitProb,
113 const TrackVec& fittedTrks);
115 void setMult(int mult);
116 void setMass(double mass);
120 void setDist(double dist);
121 void setRPhiDist(double dist);
122 void setNumberOfG2TrackVertices(int NSVPair);
123
124private:
126 double m_dist;
128 double m_prob; // CumulativeChiSquare of vtx chi2
129 double m_mass;
136}; // End class
137
139{
141}
142inline double SecVtxInfo::distance() const
143{
144 return m_dist;
145}
146inline double SecVtxInfo::rphidistance() const
147{
148 return m_rphidist;
149}
150inline double SecVtxInfo::probability() const
151{
152 return m_prob;
153}
154inline double SecVtxInfo::mass() const
155{
156 return m_mass;
157}
158inline double SecVtxInfo::energyFraction() const
159{
160 return m_energyFraction;
161}
162inline int SecVtxInfo::mult() const
163{
164 return m_mult;
165}
167{
168 return m_fitType;
169}
171{
172 return m_secVtxPos;
173}
174inline void SecVtxInfo::setSecVtx(const Trk::RecVertex& secVtx,
175 double fitProb,
176 const TrackVec& fittedTrks)
177{
178 m_secVtxPos=secVtx;
179 m_prob=fitProb;
180 m_fittedTrks=fittedTrks;
181}
186inline void SecVtxInfo::setMult(int mult)
187{
188 m_mult=mult;
189}
190inline void SecVtxInfo::setMass(double mass)
191{
192 m_mass=mass;
193}
202inline void SecVtxInfo::setDist(double dist)
203{
204 m_dist=dist;
205}
206inline void SecVtxInfo::setRPhiDist(double dist)
207{
208 m_rphidist=dist;
209}
210inline void SecVtxInfo::setNumberOfG2TrackVertices(int NGood2TrackVertices)
211{
212 m_NGood2TrackVertices=NGood2TrackVertices;
213}
215{
217}
219{
220 return new SecVtxInfo(*this);
221}
222
223} // End namespace
224#endif
#define x
BaseTagInfo()
default constructor
The SecVtxInfo class: This class contains information of the secondary vertex fit within the jet.
Definition SecVtxInfo.h:60
double rphidistance() const
Definition SecVtxInfo.h:146
double mass() const
The invariant mass of the tracks fitted to the vertex.
Definition SecVtxInfo.h:154
double energyFraction() const
The energy fraction: Evtx/Ejet of charges tracks.
Definition SecVtxInfo.h:158
SecVtxInfo()
default constructor
void setNumSelTracksForFit(int numSelTracksForFit)
Definition SecVtxInfo.h:182
void setNumberOfG2TrackVertices(int NSVPair)
Definition SecVtxInfo.h:210
void setSecVtx(const Trk::RecVertex &secVtx, double fitProb, const TrackVec &fittedTrks)
Definition SecVtxInfo.h:174
void setRPhiDist(double dist)
Definition SecVtxInfo.h:206
int numSelTracksForFit() const
The number of tracks available for the sec.vtx.
Definition SecVtxInfo.h:138
void setMass(double mass)
Definition SecVtxInfo.h:190
int m_numSelTracksForFit
The number of tracks available for the sec.vtx.
Definition SecVtxInfo.h:125
SecVtxInfo & operator=(const SecVtxInfo &rhs)
assigenment operator
double distance() const
The distance between the primary and the secondary vertex.
Definition SecVtxInfo.h:142
Trk::RecVertex m_secVtxPos
Definition SecVtxInfo.h:134
FitType fitType() const
Returns an enum to indicate the type of fit.
Definition SecVtxInfo.h:166
void setEnergyFraction(double energyFraction)
Definition SecVtxInfo.h:194
virtual ~SecVtxInfo()
default destructor
virtual SecVtxInfo * clone() const
a clone method for the proper workings of the copy constructor
Definition SecVtxInfo.h:218
double probability() const
The fit probability of the fit.
Definition SecVtxInfo.h:150
void setDist(double dist)
Definition SecVtxInfo.h:202
int NumberOfG2TrackVertices() const
Returns number of 2 track vertices.
Definition SecVtxInfo.h:214
void setMult(int mult)
Definition SecVtxInfo.h:186
const Trk::RecVertex & secVertexPos() const
Returns the reconstructed secondary vertex.
Definition SecVtxInfo.h:170
void setFitType(FitType type)
Set-methods for the private data members of the class.
Definition SecVtxInfo.h:198
int mult() const
The number of tracks fitted in the vertex.
Definition SecVtxInfo.h:162
Trk::RecVertex inherits from Trk::Vertex.
Definition RecVertex.h:44
The namespace of all packages in PhysicsAnalysis/JetTagging.
std::vector< std::string >::iterator StringIterator
std::string TagInfoType
std::vector< std::string > StringVector
std::vector< double > FloatVec
std::vector< const Rec::TrackParticle * > TrackVec
Definition SecVtxInfo.h:33
Ensure that the ATLAS eigen extensions are properly loaded.