ATLAS Offline Software
MultiSVInfoPlus.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 #ifndef JETTAGINFO_MULTISVINFOPLUS_H
6 #define JETTAGINFO_MULTISVINFOPLUS_H
9 #include <vector>
10 #include <iostream>
11 
12 namespace Analysis
13 {
14 
16 {
17  public:
20 
23 
26 
30 
32  virtual ~MultiSVInfoPlus();
33  virtual MultiSVInfoPlus* clone() const;
34 
36  void setNGTrackInJet(long int);
37  void setNGTrackInSvx(long int);
38  void setN2T(long int);
39  void setNormDist(float);
40  void addVtxInfo(MSVVtxInfo*);
41  void addVtxInfo(std::unique_ptr<MSVVtxInfo>);
42 
44  long int getNGTrackInJet() const;
45  long int getNGTrackInSvx() const;
46  long int getN2T() const;
47  float getNormDist() const;
48  int numVtxInfo() const;
49  const MSVVtxInfo* getVtxInfo(unsigned int i) const;
50 
51  private:
52  long int m_NGTinJet;
53  long int m_NGTinSvx;
54  long int m_N2Tpair;
55  float m_normdist;
56  std::vector<MSVVtxInfo*> m_vtxInfo;
57 
59 }; // End class
60 
61  inline void MultiSVInfoPlus::setNGTrackInJet(long int li) {m_NGTinJet = li;}
62  inline void MultiSVInfoPlus::setNGTrackInSvx(long int li) {m_NGTinSvx = li;}
63  inline void MultiSVInfoPlus::setN2T(long int li) {m_N2Tpair = li;}
64  inline void MultiSVInfoPlus::setNormDist(float nd) {m_normdist = nd;}
65  inline void MultiSVInfoPlus::addVtxInfo(MSVVtxInfo* i) { m_vtxInfo.push_back(i); }
66  inline void MultiSVInfoPlus::addVtxInfo(std::unique_ptr<MSVVtxInfo> i) { m_vtxInfo.push_back(i.release()); }
67  //
68  inline long int MultiSVInfoPlus::getNGTrackInJet() const {return m_NGTinJet;}
69  inline long int MultiSVInfoPlus::getNGTrackInSvx() const {return m_NGTinSvx;}
70  inline long int MultiSVInfoPlus::getN2T() const {return m_N2Tpair;}
71  inline float MultiSVInfoPlus::getNormDist() const {return m_normdist;}
72  inline int MultiSVInfoPlus::numVtxInfo() const {return m_vtxInfo.size();}
73  inline const MSVVtxInfo* MultiSVInfoPlus::getVtxInfo(uint i) const {return m_vtxInfo.at(i);}
74 
76 {
77  return new MultiSVInfoPlus(*this);
78 }
79 
80 } // End namespace
81 #endif
Analysis::MultiSVInfoPlus::m_N2Tpair
long int m_N2Tpair
Definition: MultiSVInfoPlus.h:54
Analysis::MultiSVInfoPlus::setN2T
void setN2T(long int)
Definition: MultiSVInfoPlus.h:63
Analysis::MultiSVInfoPlus::getNGTrackInSvx
long int getNGTrackInSvx() const
Definition: MultiSVInfoPlus.h:69
MSVVtxInfo.h
Analysis::MultiSVInfoPlus::m_NGTinSvx
long int m_NGTinSvx
Definition: MultiSVInfoPlus.h:53
Analysis::MultiSVInfoPlus::~MultiSVInfoPlus
virtual ~MultiSVInfoPlus()
default destructor
Definition: MultiSVInfoPlus.cxx:77
Analysis::MultiSVInfoPlus::getN2T
long int getN2T() const
Definition: MultiSVInfoPlus.h:70
Analysis::MultiSVInfoPlus::operator=
MultiSVInfoPlus & operator=(const MultiSVInfoPlus &rhs)
assigenment operator
Definition: MultiSVInfoPlus.cxx:40
x
#define x
Analysis::MultiSVInfoPlus::MultiSVInfoPlus
MultiSVInfoPlus()
default constructor
Definition: MultiSVInfoPlus.cxx:10
Analysis::MultiSVInfoPlus::m_vtxInfo
std::vector< MSVVtxInfo * > m_vtxInfo
Definition: MultiSVInfoPlus.h:56
Analysis::MultiSVInfoPlus::addVtxInfo
void addVtxInfo(MSVVtxInfo *)
Definition: MultiSVInfoPlus.h:65
Analysis::MultiSVInfoPlus::clone
virtual MultiSVInfoPlus * clone() const
a clone method for the proper workings of the copy constructor
Definition: MultiSVInfoPlus.h:75
Analysis::MultiSVInfoPlus
Definition: MultiSVInfoPlus.h:16
uint
unsigned int uint
Definition: LArOFPhaseFill.cxx:20
lumiFormat.i
int i
Definition: lumiFormat.py:92
Analysis::MultiSVInfoPlus::m_NGTinJet
long int m_NGTinJet
Definition: MultiSVInfoPlus.h:52
Analysis::BaseTagInfo
Class BasetagInfo: Implements methods defined in ITagInfo.
Definition: BaseTagInfo.h:40
Analysis::TagInfoType
std::string TagInfoType
Definition: JetTagInfoBase.h:19
Analysis::MultiSVInfoPlus::getVtxInfo
const MSVVtxInfo * getVtxInfo(unsigned int i) const
Definition: MultiSVInfoPlus.h:73
Analysis::MultiSVInfoPlus::getNGTrackInJet
long int getNGTrackInJet() const
Get methods.
Definition: MultiSVInfoPlus.h:68
BaseTagInfo.h
Analysis::MultiSVInfoPlus::numVtxInfo
int numVtxInfo() const
Definition: MultiSVInfoPlus.h:72
Analysis
The namespace of all packages in PhysicsAnalysis/JetTagging.
Definition: BTaggingCnvAlg.h:20
Analysis::MultiSVInfoPlus::m_normdist
float m_normdist
Definition: MultiSVInfoPlus.h:55
Analysis::MultiSVInfoPlus::getNormDist
float getNormDist() const
Definition: MultiSVInfoPlus.h:71
Analysis::MultiSVInfoPlus::setNormDist
void setNormDist(float)
Definition: MultiSVInfoPlus.h:64
Analysis::MultiSVInfoPlus::setNGTrackInSvx
void setNGTrackInSvx(long int)
Definition: MultiSVInfoPlus.h:62
Analysis::MSVVtxInfo
Definition: MSVVtxInfo.h:17
Analysis::MultiSVInfoPlus::setNGTrackInJet
void setNGTrackInJet(long int)
Set methods.
Definition: MultiSVInfoPlus.h:61