ATLAS Offline Software
IPInfoPlus.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_IPINFOPLUS_H
6 #define JETTAGINFO_IPINFOPLUS_H
9 #include <vector>
10 #include <iostream>
11 
12 class MsgStream;
13 namespace Rec { class TrackParticle; }
14 
15 namespace Analysis {
16 
25 class IPInfoPlus : public BaseTagInfo {
26 public:
28  IPInfoPlus();
30  IPInfoPlus(const TagInfoType& x);
32  IPInfoPlus &operator= (const IPInfoPlus& rhs);
33  virtual ~IPInfoPlus();
34  virtual IPInfoPlus* clone() const;
35 
37  inline int numTrackInfo() const { return m_trackinfo.size();}
39  inline void addTrackInfo(const IPTrackInfo& i) { m_trackinfo.push_back(i); }
41  inline const IPTrackInfo& getTrackInfo(uint i) const {
42  return m_trackinfo.at(i);
43  }
45  void updateTrackWeight(const Rec::TrackParticle* trk, const std::string& view, double w);
46 
47 private:
48  std::vector<IPTrackInfo> m_trackinfo;
49 
50 };
51 
52 MsgStream& operator<<(MsgStream& out, const IPInfoPlus&);
53 
54 std::ostream& operator<<(std::ostream& out, const IPInfoPlus&);
55 
56 inline IPInfoPlus* IPInfoPlus::clone() const {
57  return new IPInfoPlus(*this);
58 }
59 
60 }
61 #endif // JETTAGINFO_IPINFOPLUS
Analysis::IPInfoPlus::operator=
IPInfoPlus & operator=(const IPInfoPlus &rhs)
Definition: IPInfoPlus.cxx:30
Analysis::IPInfoPlus::~IPInfoPlus
virtual ~IPInfoPlus()
Definition: IPInfoPlus.cxx:38
Analysis::IPInfoPlus
Definition: IPInfoPlus.h:25
python.AthDsoLogger.out
out
Definition: AthDsoLogger.py:71
x
#define x
Analysis::IPInfoPlus::getTrackInfo
const IPTrackInfo & getTrackInfo(uint i) const
Get a track info object.
Definition: IPInfoPlus.h:41
Analysis::IPInfoPlus::updateTrackWeight
void updateTrackWeight(const Rec::TrackParticle *trk, const std::string &view, double w)
Update the track weights for a trackparticle.
Definition: IPInfoPlus.cxx:41
xAOD::TrackParticle
TrackParticle_v1 TrackParticle
Reference the current persistent version:
Definition: Event/xAOD/xAODTracking/xAODTracking/TrackParticle.h:13
uint
unsigned int uint
Definition: LArOFPhaseFill.cxx:20
lumiFormat.i
int i
Definition: lumiFormat.py:92
Rec
Name: MuonSpContainer.h Package : offline/Reconstruction/MuonIdentification/muonEvent.
Definition: FakeTrackBuilder.h:10
Analysis::BaseTagInfo
Class BasetagInfo: Implements methods defined in ITagInfo.
Definition: BaseTagInfo.h:40
Analysis::TagInfoType
std::string TagInfoType
Definition: JetTagInfoBase.h:19
BaseTagInfo.h
Analysis
The namespace of all packages in PhysicsAnalysis/JetTagging.
Definition: BTaggingCnvAlg.h:20
IPTrackInfo.h
Analysis::IPInfoPlus::IPInfoPlus
IPInfoPlus()
Default constructor.
Definition: IPInfoPlus.cxx:14
Analysis::IPTrackInfo
Definition: IPTrackInfo.h:18
Analysis::IPInfoPlus::m_trackinfo
std::vector< IPTrackInfo > m_trackinfo
Definition: IPInfoPlus.h:48
Rec::TrackParticle
Definition: Reconstruction/Particle/Particle/TrackParticle.h:47
Analysis::IPInfoPlus::clone
virtual IPInfoPlus * clone() const
a clone method for the proper workings of the copy constructor
Definition: IPInfoPlus.h:56
Analysis::operator<<
MsgStream & operator<<(MsgStream &out, const IPInfoBase &)
output.
Definition: IPInfoBase.cxx:47
Analysis::IPInfoPlus::addTrackInfo
void addTrackInfo(const IPTrackInfo &i)
Insert a new track info object.
Definition: IPInfoPlus.h:39
python.IoTestsLib.w
def w
Definition: IoTestsLib.py:200
Analysis::IPInfoPlus::numTrackInfo
int numTrackInfo() const
Number of track info objects stored.
Definition: IPInfoPlus.h:37
drawFromPickle.view
view
Definition: drawFromPickle.py:294