ATLAS Offline Software
LifetimeInfo.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 /***************************************************************************
6  LifetimeInfo.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_LIFETIMEINFO_H
16 #define JETTAGINFO_LIFETIMEINFO_H
17 #include "JetTagInfo/BaseTagInfo.h"
18 #include <vector>
19 #include <iostream>
20 
21 namespace Analysis
22 {
23 typedef std::vector<double> FloatVec;
24 typedef std::vector<std::string> StringVector;
26 
32 class LifetimeInfo : public BaseTagInfo
33 {
34 public:
35 
37  LifetimeInfo();
38 
41 
44 
47 
49  virtual ~LifetimeInfo();
50 
52  virtual LifetimeInfo* clone() const;
53 
55  const FloatVec& signedIP() const;
56  const FloatVec& significance() const;
57  void setIP(const FloatVec& ipVec);
58  void setIP(FloatVec&& ipVec);
59  void setSignificance(const FloatVec& ipVec);
60  void setSignificance(FloatVec&& ipVec);
61 
62  void setTrackProb(const FloatVec& vec);
63  void setTrackProb(FloatVec&& vec);
64  void setNTrackProb(double nTrackProb);
65 
66  const FloatVec& vectorTrackProb(void) const;
67  double nTrackProb(void) const;
68 
69 private:
72 
74  double m_nTrackProb;
75 }; // End class
76 
77 
78 inline const FloatVec& LifetimeInfo::signedIP() const
79 {
80  return m_trackSIP;
81 }
82 inline const FloatVec& LifetimeInfo::significance() const
83 {
84  return m_trackSignificance;
85 }
86 inline void LifetimeInfo::setIP(const FloatVec& ipVec)
87 {
88  m_trackSIP=ipVec;
89  return;
90 }
91 inline void LifetimeInfo::setIP(FloatVec&& ipVec)
92 {
93  m_trackSIP=std::move(ipVec);
94  return;
95 }
96 inline void LifetimeInfo::setSignificance(const FloatVec& ipVec)
97 {
98  m_trackSignificance=ipVec;
99  return;
100 }
101 inline void LifetimeInfo::setSignificance(FloatVec&& ipVec)
102 {
103  m_trackSignificance=std::move(ipVec);
104  return;
105 }
106 inline void LifetimeInfo::setTrackProb(const FloatVec& vec)
107 {
109 }
111 {
112  m_vectorOfTrackProb=std::move(vec);
113 }
114 inline void LifetimeInfo::setNTrackProb(double nTrackProb)
115 {
117 }
118 inline const FloatVec& LifetimeInfo::vectorTrackProb(void) const
119 {
120  return m_vectorOfTrackProb;
121 }
122 inline double LifetimeInfo::nTrackProb(void) const
123 {
124  return m_nTrackProb;
125 }
127 {
128  return new LifetimeInfo(*this);
129 }
130 } // End namespace
131 #endif
xAOD::iterator
JetConstituentVector::iterator iterator
Definition: JetConstituentVector.cxx:68
Analysis::LifetimeInfo::signedIP
const FloatVec & signedIP() const
The signed 2D impact parameters.
Definition: LifetimeInfo.h:86
Analysis::LifetimeInfo
Class LifetimeInfo: Class to store information produced by the LifetimeTag.
Definition: LifetimeInfo.h:41
Analysis::LifetimeInfo::setTrackProb
void setTrackProb(const FloatVec &vec)
set Track probability (not ACTIVE)
Definition: LifetimeInfo.h:114
Analysis::StringVector
std::vector< std::string > StringVector
Definition: LifetimeInfo.h:32
vec
std::vector< size_t > vec
Definition: CombinationsGeneratorTest.cxx:12
x
#define x
Analysis::LifetimeInfo::~LifetimeInfo
virtual ~LifetimeInfo()
default destructor
Definition: LifetimeInfo.cxx:79
Analysis::LifetimeInfo::m_trackSignificance
FloatVec m_trackSignificance
significance (= signedIP/sigD0)
Definition: LifetimeInfo.h:79
Analysis::LifetimeInfo::nTrackProb
double nTrackProb(void) const
return nTrack probabilities (not ACTIVE)
Definition: LifetimeInfo.h:130
CxxUtils::vec
typename vecDetail::vec_typedef< T, N >::type vec
Define a nice alias for the vectorized type.
Definition: vec.h:207
Analysis::FloatVec
std::vector< double > FloatVec
Definition: LifetimeInfo.h:31
Analysis::LifetimeInfo::setIP
void setIP(const FloatVec &ipVec)
set signed impact parameter
Definition: LifetimeInfo.h:94
Analysis::LifetimeInfo::setSignificance
void setSignificance(const FloatVec &ipVec)
set significance
Definition: LifetimeInfo.h:104
Analysis::BaseTagInfo
Class BasetagInfo: Implements methods defined in ITagInfo.
Definition: BaseTagInfo.h:40
Analysis::LifetimeInfo::m_trackSIP
FloatVec m_trackSIP
signed impact parameters
Definition: LifetimeInfo.h:78
Analysis::TagInfoType
std::string TagInfoType
Definition: JetTagInfoBase.h:19
Analysis::LifetimeInfo::significance
const FloatVec & significance() const
return significance (= signedIP/sigD0)
Definition: LifetimeInfo.h:90
BaseTagInfo.h
Analysis
The namespace of all packages in PhysicsAnalysis/JetTagging.
Definition: BTaggingCnvAlg.h:20
Analysis::LifetimeInfo::m_vectorOfTrackProb
FloatVec m_vectorOfTrackProb
vector of track probabilities (calculated but not in use)
Definition: LifetimeInfo.h:81
Analysis::LifetimeInfo::LifetimeInfo
LifetimeInfo()
default constructor
Definition: LifetimeInfo.cxx:29
Analysis::LifetimeInfo::operator=
LifetimeInfo & operator=(const LifetimeInfo &rhs)
assigenment operator
Definition: LifetimeInfo.cxx:64
Analysis::LifetimeInfo::clone
virtual LifetimeInfo * clone() const
clone method
Definition: LifetimeInfo.h:134
Analysis::StringIterator
std::vector< std::string >::iterator StringIterator
Definition: LifetimeInfo.h:33
Analysis::LifetimeInfo::vectorTrackProb
const FloatVec & vectorTrackProb(void) const
return vector of Track probabilities (not ACTIVE)
Definition: LifetimeInfo.h:126
Analysis::LifetimeInfo::m_nTrackProb
double m_nTrackProb
nTrack probability (calculated but not in use)
Definition: LifetimeInfo.h:82
Analysis::LifetimeInfo::setNTrackProb
void setNTrackProb(double nTrackProb)
set nTrack probability (nor ACTIVE)
Definition: LifetimeInfo.h:122