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"
22 
23 #include <string>
24 
25 namespace DerivationFramework {
26 
27  class HITrackQualityAugmentationTool : public extends<AthAlgTool, IAugmentationTool> {
28  public:
29  enum{
30  PP_MIN_BIAS=1<<1, //2
31 
32  HI_LOOSE=1<<2, // 4
33  HI_LOOSE_7SCT_HITS =1<<5, // 32
34  HI_LOOSE_TIGHT_D0_Z0 =1<<7, // 128
36 
37  HI_TIGHT=1<<3, //8
40  };
41 
42  using base_class::base_class;
43 
44  virtual StatusCode initialize() override final;
45  virtual StatusCode addBranches(const EventContext& ctx) const override final;
46 
47  private:
48  unsigned short GetTrackQuality (const xAOD::TrackParticle* track,float z_vtx ) const;
50 
51  SG::ReadHandleKey<xAOD::TrackParticleContainer> m_trackParticlesName{this, "TrackParticlesName", "InDetTrackParticles", ""};
52  SG::ReadHandleKey<xAOD::VertexContainer> m_vertexContainerName {this, "VertexContainerName", "PrimaryVertices", ""};
53  SG::ReadHandleKey<xAOD::EventInfo> m_eventInfoKey{this, "EventInfoKey", "EventInfo", ""};
54 
55  SG::WriteDecorHandleKey<xAOD::TrackParticleContainer> m_decorator{ this, "TrackQuality", "TrackQuality", ""};
58 
62 
63  ToolHandle<InDet::IInDetTrackSelectionTool> m_trkSelTool_pp {this, "TrackSelectionTool_pp", "", ""};
64  ToolHandle<InDet::IInDetTrackSelectionTool> m_trkSelTool_hi_loose {this, "TrackSelectionTool_hi_loose", "", ""};
65  ToolHandle<InDet::IInDetTrackSelectionTool> m_trkSelTool_hi_tight {this, "TrackSelectionTool_hi_tight", "", ""};
66 
67  ToolHandle<ITrkToLeptonPV> m_trkToLeptonPVTool {this, "TrkToLeptonPVTool", "", "Tool for matching tracks to PV"};
68  };
69 }
70 
71 
72 #endif // DERIVATIONFRAMEWORK_HITrackQualityAugmentationTool_H
DerivationFramework::HITrackQualityAugmentationTool::HI_LOOSE_TIGHT_D0_Z0
@ HI_LOOSE_TIGHT_D0_Z0
Definition: HITrackQualityAugmentationTool.h:34
SG::WriteDecorHandleKey< xAOD::TrackParticleContainer >
DerivationFramework::HITrackQualityAugmentationTool::m_covD0Decorator
SG::WriteDecorHandleKey< xAOD::TrackParticleContainer > m_covD0Decorator
Definition: HITrackQualityAugmentationTool.h:59
DerivationFramework::HITrackQualityAugmentationTool::HI_TIGHT_TIGHTER_D0_Z0
@ HI_TIGHT_TIGHTER_D0_Z0
Definition: HITrackQualityAugmentationTool.h:38
DerivationFramework::HITrackQualityAugmentationTool::m_decorator
SG::WriteDecorHandleKey< xAOD::TrackParticleContainer > m_decorator
Definition: HITrackQualityAugmentationTool.h:55
SG
Forward declaration.
Definition: CaloCellPacker_400_500.h:32
DerivationFramework::HITrackQualityAugmentationTool::m_trkSelTool_pp
ToolHandle< InDet::IInDetTrackSelectionTool > m_trkSelTool_pp
Definition: HITrackQualityAugmentationTool.h:63
AthCUDAExamples::TrackParticleContainer
vecmem::edm::container< TrackParticleInterface, vecmem::edm::type::vector< float >, vecmem::edm::type::vector< float >, vecmem::edm::type::vector< float > > TrackParticleContainer
SoA, GPU friendly TrackParticleContainer.
Definition: Control/AthenaExamples/AthExCUDA/src/TrackParticleContainer.h:46
IAugmentationTool.h
DerivationFramework::HITrackQualityAugmentationTool::PP_MIN_BIAS
@ PP_MIN_BIAS
Definition: HITrackQualityAugmentationTool.h:30
xAOD
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
Definition: ICaloAffectedTool.h:24
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:560
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition: StoreGate/StoreGate/ReadHandleKey.h:39
DerivationFramework::HITrackQualityAugmentationTool::m_trkSelTool_hi_loose
ToolHandle< InDet::IInDetTrackSelectionTool > m_trkSelTool_hi_loose
Definition: HITrackQualityAugmentationTool.h:64
DerivationFramework::HITrackQualityAugmentationTool::initialize
virtual StatusCode initialize() override final
Definition: HITrackQualityAugmentationTool.cxx:9
DerivationFramework::HITrackQualityAugmentationTool::m_chi2Decorator
SG::WriteDecorHandleKey< xAOD::TrackParticleContainer > m_chi2Decorator
Definition: HITrackQualityAugmentationTool.h:56
DerivationFramework::HITrackQualityAugmentationTool::GetTrackQuality
unsigned short GetTrackQuality(const xAOD::TrackParticle *track, float z_vtx) const
Definition: HITrackQualityAugmentationTool.cxx:220
xAOD::TrackParticle
TrackParticle_v1 TrackParticle
Reference the current persistent version:
Definition: Event/xAOD/xAODTracking/xAODTracking/TrackParticle.h:13
DerivationFramework::HITrackQualityAugmentationTool::m_trkSelTool_hi_tight
ToolHandle< InDet::IInDetTrackSelectionTool > m_trkSelTool_hi_tight
Definition: HITrackQualityAugmentationTool.h:65
DerivationFramework::HITrackQualityAugmentationTool::HI_TIGHT
@ HI_TIGHT
Definition: HITrackQualityAugmentationTool.h:37
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::HI_LOOSE_TIGHTER_D0_Z0
@ HI_LOOSE_TIGHTER_D0_Z0
Definition: HITrackQualityAugmentationTool.h:35
DerivationFramework::HITrackQualityAugmentationTool::HI_LOOSE
@ HI_LOOSE
Definition: HITrackQualityAugmentationTool.h:32
DerivationFramework::HITrackQualityAugmentationTool::m_trackParticlesName
SG::ReadHandleKey< xAOD::TrackParticleContainer > m_trackParticlesName
Definition: HITrackQualityAugmentationTool.h:51
DerivationFramework::HITrackQualityAugmentationTool
Definition: HITrackQualityAugmentationTool.h:27
DerivationFramework
THE reconstruction tool.
Definition: ParticleSortingAlg.h:24
IInDetTrackSelectionTool.h
DerivationFramework::HITrackQualityAugmentationTool::m_vertexIndexDecorator
SG::WriteDecorHandleKey< xAOD::TrackParticleContainer > m_vertexIndexDecorator
Definition: HITrackQualityAugmentationTool.h:57
DerivationFramework::HITrackQualityAugmentationTool::addBranches
virtual StatusCode addBranches(const EventContext &ctx) const override final
Definition: HITrackQualityAugmentationTool.cxx:45
Vertex
boost::graph_traits< boost::adjacency_list< boost::vecS, boost::vecS, boost::bidirectionalS > >::vertex_descriptor Vertex
Definition: FPGATrackSimGNNRoadMakerTool.h:35
EventInfo.h
DerivationFramework::HITrackQualityAugmentationTool::HI_TIGHT_LOOSE_D0_Z0
@ HI_TIGHT_LOOSE_D0_Z0
Definition: HITrackQualityAugmentationTool.h:39
VertexContainer.h
DerivationFramework::HITrackQualityAugmentationTool::HI_LOOSE_7SCT_HITS
@ HI_LOOSE_7SCT_HITS
Definition: HITrackQualityAugmentationTool.h:33
python.changerun.pv
pv
Definition: changerun.py:79
DerivationFramework::HITrackQualityAugmentationTool::m_covThetaDecorator
SG::WriteDecorHandleKey< xAOD::TrackParticleContainer > m_covThetaDecorator
Definition: HITrackQualityAugmentationTool.h:61
private
#define private
Definition: xAODTruthCnvAlg.h:20
DerivationFramework::HITrackQualityAugmentationTool::m_covZ0Decorator
SG::WriteDecorHandleKey< xAOD::TrackParticleContainer > m_covZ0Decorator
Definition: HITrackQualityAugmentationTool.h:60
DerivationFramework::HITrackQualityAugmentationTool::GetTrackQualityNew
unsigned short GetTrackQualityNew(const xAOD::TrackParticle *track, const xAOD::Vertex *pv) const
Definition: HITrackQualityAugmentationTool.cxx:153
DerivationFramework::HITrackQualityAugmentationTool::m_vertexContainerName
SG::ReadHandleKey< xAOD::VertexContainer > m_vertexContainerName
Definition: HITrackQualityAugmentationTool.h:52
xAOD::track
@ track
Definition: TrackingPrimitives.h:513
DerivationFramework::HITrackQualityAugmentationTool::m_eventInfoKey
SG::ReadHandleKey< xAOD::EventInfo > m_eventInfoKey
Definition: HITrackQualityAugmentationTool.h:53
ReadHandle.h
Handle class for reading from StoreGate.
ITrkToLeptonPV.h
DerivationFramework::HITrackQualityAugmentationTool::m_trkToLeptonPVTool
ToolHandle< ITrkToLeptonPV > m_trkToLeptonPVTool
Definition: HITrackQualityAugmentationTool.h:67
TrackParticleContainer.h