ATLAS Offline Software
IPTrackInfo.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef JETTAGINFO_IPTRACKINFO
6 #define JETTAGINFO_IPTRACKINFO
7 
8 #include "AthLinks/ElementLink.h"
10 #include "Particle/TrackParticle.h"
12 #include <iostream>
13 
14 class MsgStream;
15 
16 namespace Analysis {
17 
18  class IPTrackInfo {
19  public:
20  IPTrackInfo();
22  const Rec::TrackParticle* trk,
23  const TrackGrade& grade,
24  bool isFromV0,
25  double d0val, double d0sig,
26  double z0val, double z0sig);
28  const TrackGrade& grade,
29  bool isFromV0,
30  double d0val, double d0sig,
31  double z0val, double z0sig);
32  inline void setTrackWeight2D(double w) { m_trackWeight2D = w; }
33  inline void setTrackWeight3D(double w) { m_trackWeight3D = w; }
34  inline void setTrackProbJP(double p) { m_trackProbJP = p; }
35  inline void setTrackProbJPneg(double p) { m_trackProbJPneg = p; }
36  const Rec::TrackParticle* track() const;
38  { return m_track; }
39  inline const TrackGrade& trackGrade() const { return m_trackGrade; }
40  inline bool isFromV0() const { return m_isFromV0; }
41  inline double d0Value() const { return m_valD0wrtPV; }
42  inline double d0Significance() const { return m_sigD0wrtPV; }
43  inline double z0Value() const { return m_valZ0wrtPV; }
44  inline double z0Significance() const { return m_sigZ0wrtPV; }
45  inline double trackWeight2D() const { return m_trackWeight2D; }
46  inline double trackWeight3D() const { return m_trackWeight3D; }
47  inline double trackProbJP() const { return m_trackProbJP; }
48  inline double trackProbJPneg() const { return m_trackProbJPneg; }
49  inline void resetW() { m_trackWeight2D = 0.; m_trackWeight3D = 0.; m_trackProbJP = 1; m_trackProbJPneg = 1;}
50  private:
53  bool m_isFromV0;
54  double m_valD0wrtPV;
55  double m_sigD0wrtPV;
56  double m_valZ0wrtPV;
57  double m_sigZ0wrtPV;
60  double m_trackProbJP;
62  };
63 
64  MsgStream& operator<<(MsgStream& out, const IPTrackInfo&);
65  std::ostream& operator<<(std::ostream& out, const IPTrackInfo&);
66 
67 }
68 #endif // JETTAGINFO_IPTRACKINFO
Analysis::IPTrackInfo::m_sigZ0wrtPV
double m_sigZ0wrtPV
Definition: IPTrackInfo.h:57
Analysis::TrackGrade
Definition: TrackGrade.h:11
python.PerfMonSerializer.p
def p
Definition: PerfMonSerializer.py:743
Analysis::IPTrackInfo::z0Value
double z0Value() const
Definition: IPTrackInfo.h:43
TrackParticle.h
Analysis::IPTrackInfo::trackLink
const ElementLink< Rec::TrackParticleContainer > & trackLink() const
Definition: IPTrackInfo.h:37
python.AthDsoLogger.out
out
Definition: AthDsoLogger.py:71
Analysis::IPTrackInfo::d0Value
double d0Value() const
Definition: IPTrackInfo.h:41
Analysis::IPTrackInfo::trackGrade
const TrackGrade & trackGrade() const
Definition: IPTrackInfo.h:39
Analysis::IPTrackInfo::setTrackWeight2D
void setTrackWeight2D(double w)
Definition: IPTrackInfo.h:32
Analysis::IPTrackInfo::track
const Rec::TrackParticle * track() const
Definition: IPTrackInfo.cxx:70
Analysis::IPTrackInfo::m_trackProbJP
double m_trackProbJP
Definition: IPTrackInfo.h:60
Analysis::IPTrackInfo::m_isFromV0
bool m_isFromV0
Definition: IPTrackInfo.h:53
Analysis::IPTrackInfo::m_trackWeight2D
double m_trackWeight2D
Definition: IPTrackInfo.h:58
Analysis::IPTrackInfo::m_trackGrade
TrackGrade m_trackGrade
Definition: IPTrackInfo.h:52
Analysis::IPTrackInfo::m_trackWeight3D
double m_trackWeight3D
Definition: IPTrackInfo.h:59
Analysis::IPTrackInfo::m_sigD0wrtPV
double m_sigD0wrtPV
Definition: IPTrackInfo.h:55
Analysis::IPTrackInfo::trackProbJP
double trackProbJP() const
Definition: IPTrackInfo.h:47
Analysis::IPTrackInfo::trackWeight2D
double trackWeight2D() const
Definition: IPTrackInfo.h:45
Analysis::IPTrackInfo::setTrackProbJP
void setTrackProbJP(double p)
Definition: IPTrackInfo.h:34
Analysis::IPTrackInfo::resetW
void resetW()
Definition: IPTrackInfo.h:49
Analysis::IPTrackInfo::m_track
ElementLink< Rec::TrackParticleContainer > m_track
Definition: IPTrackInfo.h:51
Analysis
The namespace of all packages in PhysicsAnalysis/JetTagging.
Definition: BTaggingCnvAlg.h:20
Analysis::IPTrackInfo::setTrackProbJPneg
void setTrackProbJPneg(double p)
Definition: IPTrackInfo.h:35
Rec::TrackParticleContainer
Definition: Reconstruction/Particle/Particle/TrackParticleContainer.h:33
Analysis::IPTrackInfo
Definition: IPTrackInfo.h:18
Analysis::IPTrackInfo::m_valD0wrtPV
double m_valD0wrtPV
Definition: IPTrackInfo.h:54
Analysis::IPTrackInfo::z0Significance
double z0Significance() const
Definition: IPTrackInfo.h:44
Rec::TrackParticle
Definition: Reconstruction/Particle/Particle/TrackParticle.h:47
TrackGrade.h
Analysis::IPTrackInfo::setTrackWeight3D
void setTrackWeight3D(double w)
Definition: IPTrackInfo.h:33
Analysis::IPTrackInfo::IPTrackInfo
IPTrackInfo()
Definition: IPTrackInfo.cxx:13
Analysis::IPTrackInfo::trackWeight3D
double trackWeight3D() const
Definition: IPTrackInfo.h:46
Analysis::IPTrackInfo::d0Significance
double d0Significance() const
Definition: IPTrackInfo.h:42
Analysis::operator<<
MsgStream & operator<<(MsgStream &out, const IPInfoBase &)
output.
Definition: IPInfoBase.cxx:47
python.IoTestsLib.w
def w
Definition: IoTestsLib.py:200
Analysis::IPTrackInfo::m_trackProbJPneg
double m_trackProbJPneg
Definition: IPTrackInfo.h:61
Analysis::IPTrackInfo::m_valZ0wrtPV
double m_valZ0wrtPV
Definition: IPTrackInfo.h:56
Analysis::IPTrackInfo::isFromV0
bool isFromV0() const
Definition: IPTrackInfo.h:40
Analysis::IPTrackInfo::trackProbJPneg
double trackProbJPneg() const
Definition: IPTrackInfo.h:48
TrackParticleContainer.h