ATLAS Offline Software
HITrackQualityAugmentationTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 */
4 
8 
9 #ifndef DERIVATIONFRAMEWORK_HITrackQualityAugmentationTool_H
10 #define DERIVATIONFRAMEWORK_HITrackQualityAugmentationTool_H
11 
14 #include "GaudiKernel/ToolHandle.h"
16 #include "StoreGate/ReadHandle.h"
20 
21 #include <string>
22 
23 namespace DerivationFramework {
24 
25  class HITrackQualityAugmentationTool : public extends<AthAlgTool, IAugmentationTool> {
26  public:
27  enum{
28  PP_MIN_BIAS=1<<1, //2
29 
30  HI_LOOSE=1<<2, // 4
31  HI_LOOSE_7SCT_HITS =1<<5, // 32
32  HI_LOOSE_TIGHT_D0_Z0 =1<<7, // 128
34 
35  HI_TIGHT=1<<3, //8
38  };
39 
40  HITrackQualityAugmentationTool(const std::string& t, const std::string& n, const IInterface* p);
41  virtual StatusCode initialize() override;
42  virtual StatusCode addBranches() const override;
43 
44  private:
45  unsigned short GetTrackQuality (const xAOD::TrackParticle* track,float z_vtx ) const;
46  unsigned short GetTrackQualityNew(const xAOD::TrackParticle* track,const xAOD::Vertex* pv) const;
47 
48  SG::ReadHandleKey<xAOD::TrackParticleContainer> m_trackParticlesName{this, "TrackParticlesName", "InDetTrackParticles", ""};
49  SG::ReadHandleKey<xAOD::VertexContainer> m_vertexContainerName {this, "VertexContainerName", "PrimaryVertices", ""};
50 
51  SG::WriteDecorHandleKey<xAOD::TrackParticleContainer> m_decorator{ this, "TrackQuality", "TrackQuality", ""};
52 
53  ToolHandle<InDet::IInDetTrackSelectionTool> m_trkSelTool_pp {this, "TrackSelectionTool_pp", "", ""};
54  ToolHandle<InDet::IInDetTrackSelectionTool> m_trkSelTool_hi_loose {this, "TrackSelectionTool_hi_loose", "", ""};
55  ToolHandle<InDet::IInDetTrackSelectionTool> m_trkSelTool_hi_tight {this, "TrackSelectionTool_hi_tight", "", ""};
56  };
57 }
58 
59 #endif // DERIVATIONFRAMEWORK_HITrackQualityAugmentationTool_H
SG::WriteDecorHandleKey< xAOD::TrackParticleContainer >
DerivationFramework::HITrackQualityAugmentationTool::HI_TIGHT
@ HI_TIGHT
Definition: HITrackQualityAugmentationTool.h:35
DerivationFramework::HITrackQualityAugmentationTool::HI_LOOSE_7SCT_HITS
@ HI_LOOSE_7SCT_HITS
Definition: HITrackQualityAugmentationTool.h:31
DerivationFramework::HITrackQualityAugmentationTool::m_decorator
SG::WriteDecorHandleKey< xAOD::TrackParticleContainer > m_decorator
Definition: HITrackQualityAugmentationTool.h:51
DerivationFramework::HITrackQualityAugmentationTool::m_trkSelTool_pp
ToolHandle< InDet::IInDetTrackSelectionTool > m_trkSelTool_pp
Definition: HITrackQualityAugmentationTool.h:53
IAugmentationTool.h
DerivationFramework::HITrackQualityAugmentationTool::HI_LOOSE_TIGHTER_D0_Z0
@ HI_LOOSE_TIGHTER_D0_Z0
Definition: HITrackQualityAugmentationTool.h:33
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
SG::ReadHandleKey< xAOD::TrackParticleContainer >
DerivationFramework::HITrackQualityAugmentationTool::HI_TIGHT_TIGHTER_D0_Z0
@ HI_TIGHT_TIGHTER_D0_Z0
Definition: HITrackQualityAugmentationTool.h:36
DerivationFramework::HITrackQualityAugmentationTool::m_trkSelTool_hi_loose
ToolHandle< InDet::IInDetTrackSelectionTool > m_trkSelTool_hi_loose
Definition: HITrackQualityAugmentationTool.h:54
DerivationFramework::HITrackQualityAugmentationTool::GetTrackQuality
unsigned short GetTrackQuality(const xAOD::TrackParticle *track, float z_vtx) const
Definition: HITrackQualityAugmentationTool.cxx:135
DerivationFramework::HITrackQualityAugmentationTool::addBranches
virtual StatusCode addBranches() const override
Definition: HITrackQualityAugmentationTool.cxx:31
DerivationFramework::HITrackQualityAugmentationTool::m_trkSelTool_hi_tight
ToolHandle< InDet::IInDetTrackSelectionTool > m_trkSelTool_hi_tight
Definition: HITrackQualityAugmentationTool.h:55
python.utils.AtlRunQueryDQUtils.p
p
Definition: AtlRunQueryDQUtils.py:209
DerivationFramework::HITrackQualityAugmentationTool::HITrackQualityAugmentationTool
HITrackQualityAugmentationTool(const std::string &t, const std::string &n, const IInterface *p)
Definition: HITrackQualityAugmentationTool.cxx:9
beamspotman.n
n
Definition: beamspotman.py:727
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthAlgTool.h
WriteDecorHandle.h
Handle class for adding a decoration to an object.
DerivationFramework::HITrackQualityAugmentationTool::PP_MIN_BIAS
@ PP_MIN_BIAS
Definition: HITrackQualityAugmentationTool.h:28
DerivationFramework::HITrackQualityAugmentationTool::m_trackParticlesName
SG::ReadHandleKey< xAOD::TrackParticleContainer > m_trackParticlesName
Definition: HITrackQualityAugmentationTool.h:48
DerivationFramework::HITrackQualityAugmentationTool::HI_LOOSE_TIGHT_D0_Z0
@ HI_LOOSE_TIGHT_D0_Z0
Definition: HITrackQualityAugmentationTool.h:32
DerivationFramework::HITrackQualityAugmentationTool
Definition: HITrackQualityAugmentationTool.h:25
DerivationFramework
THE reconstruction tool.
Definition: ParticleSortingAlg.h:24
IInDetTrackSelectionTool.h
DerivationFramework::HITrackQualityAugmentationTool::HI_LOOSE
@ HI_LOOSE
Definition: HITrackQualityAugmentationTool.h:30
DerivationFramework::HITrackQualityAugmentationTool::HI_TIGHT_LOOSE_D0_Z0
@ HI_TIGHT_LOOSE_D0_Z0
Definition: HITrackQualityAugmentationTool.h:37
VertexContainer.h
xAOD::Vertex_v1
Class describing a Vertex.
Definition: Vertex_v1.h:42
python.changerun.pv
pv
Definition: changerun.py:79
DerivationFramework::HITrackQualityAugmentationTool::GetTrackQualityNew
unsigned short GetTrackQualityNew(const xAOD::TrackParticle *track, const xAOD::Vertex *pv) const
Definition: HITrackQualityAugmentationTool.cxx:68
DerivationFramework::HITrackQualityAugmentationTool::m_vertexContainerName
SG::ReadHandleKey< xAOD::VertexContainer > m_vertexContainerName
Definition: HITrackQualityAugmentationTool.h:49
xAOD::track
@ track
Definition: TrackingPrimitives.h:513
xAOD::TrackParticle_v1
Class describing a TrackParticle.
Definition: TrackParticle_v1.h:43
ReadHandle.h
Handle class for reading from StoreGate.
DerivationFramework::HITrackQualityAugmentationTool::initialize
virtual StatusCode initialize() override
Definition: HITrackQualityAugmentationTool.cxx:16
TrackParticleContainer.h