ATLAS Offline Software
OfflineTrackQualitySelectionTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 #ifndef INDETTRACKPERFMON_IDTPM_OFFLINETRACKQUALITYSELECTIONTOOL_H
5 #define INDETTRACKPERFMON_IDTPM_OFFLINETRACKQUALITYSELECTIONTOOL_H
6 
7 // Package includes
9 
10 // Framework includes
11 #include "AsgTools/AsgTool.h"
13 #include "AthLinks/ElementLink.h"
14 // STL includes
15 #include <string>
16 
17 namespace IDTPM {
18 
25 public:
27  OfflineTrackQualitySelectionTool(const std::string& name);
28 
29  virtual StatusCode initialize() override;
30 
31  virtual StatusCode selectTracks(
32  TrackAnalysisCollections& trkAnaColls ) override;
33 
35  TrackAnalysisCollections& trkAnaColls,
36  const ElementLink< TrigRoiDescriptorCollection >& roiLink ) override;
37 
38 
39  bool accept(const xAOD::TrackParticle* track);
40 
41 private:
42  ToolHandle<InDet::IInDetTrackSelectionTool> m_offlineTool{this, "offlineTool", "", "Instance name of track selection tool"};
43  FloatProperty m_minAbsEta { this, "minAbsEta", -9999., "Lower cut on |eta| for truth particles" };
44  FloatProperty m_minAbsPhi { this, "minAbsPhi", -9999., "Lower cut on |phi| for truth particles" };
45  FloatProperty m_maxAbsPhi { this, "maxAbsPhi", -9999., "Higher cut on |phi| for truth particles" };
46  FloatProperty m_minAbsD0 { this, "minAbsD0", -9999., "Lower cut on |d0| for truth particles" };
47  FloatProperty m_maxAbsD0 { this, "maxAbsD0", -9999., "Higher cut on |d0| for truth particles" };
48  FloatProperty m_minAbsZ0 { this, "minAbsZ0", -9999., "Lower cut on |z0| for truth particles" };
49  FloatProperty m_maxAbsZ0 { this, "maxAbsZ0", -9999., "Higher cut on |z0| for truth particles" };
50  FloatProperty m_minAbsQoPT { this, "minAbsQoPT", -9999., "Lower cut on |q/pt| for truth particles" };
51  FloatProperty m_maxAbsQoPT { this, "maxAbsQoPT", -9999., "Higher cut on |q/pt| for truth particles" };
52  FloatProperty m_maxPt { this, "maxPt", -9999., "Higher cut on phi for truth particles" };
53  FloatProperty m_minEta { this, "minEta", -9999., "Lower cut on eta for truth particles" };
54  FloatProperty m_maxEta { this, "maxEta", -9999., "Higher cut on eta for truth particles" };
55  FloatProperty m_minPhi { this, "minPhi", -9999., "Lower cut on phi for truth particles" };
56  FloatProperty m_maxPhi { this, "maxPhi", -9999., "Higher cut on phi for truth particles" };
57  FloatProperty m_minD0 { this, "minD0", -9999., "Lower cut on d0 for truth particles" };
58  FloatProperty m_minZ0 { this, "minZ0", -9999., "Lower cut on z0 for truth particles" };
59  FloatProperty m_minQoPT { this, "minQoPT", -9999., "Lower cut on q/pt for truth particles" };
60  FloatProperty m_maxQoPT { this, "maxQoPT", -9999., "Higher cut on q/pt for truth particles" };
61 
62 };
63 
64 } // namespace IDTPM
65 
66 #endif // INDETTRACKPERFMON_IDTPM_OFFLINETRACKQUALITYSELECTIONTOOL_H
IDTPM::OfflineTrackQualitySelectionTool::m_offlineTool
ToolHandle< InDet::IInDetTrackSelectionTool > m_offlineTool
Definition: OfflineTrackQualitySelectionTool.h:42
asg::AsgTool
Base class for the dual-use tool implementation classes.
Definition: AsgTool.h:47
IDTPM::OfflineTrackQualitySelectionTool
Uses InDetTrackSelection tool and working points defined there for tracks quality selection In future...
Definition: OfflineTrackQualitySelectionTool.h:24
IDTPM::TrackAnalysisCollections
Definition: TrackAnalysisCollections.h:44
IDTPM::OfflineTrackQualitySelectionTool::m_minPhi
FloatProperty m_minPhi
Definition: OfflineTrackQualitySelectionTool.h:55
IDTPM::OfflineTrackQualitySelectionTool::m_minZ0
FloatProperty m_minZ0
Definition: OfflineTrackQualitySelectionTool.h:58
IDTPM::OfflineTrackQualitySelectionTool::m_maxAbsQoPT
FloatProperty m_maxAbsQoPT
Definition: OfflineTrackQualitySelectionTool.h:51
IDTPM::OfflineTrackQualitySelectionTool::m_minAbsPhi
FloatProperty m_minAbsPhi
Definition: OfflineTrackQualitySelectionTool.h:44
IDTPM::OfflineTrackQualitySelectionTool::m_maxPhi
FloatProperty m_maxPhi
Definition: OfflineTrackQualitySelectionTool.h:56
IDTPM::OfflineTrackQualitySelectionTool::m_minAbsQoPT
FloatProperty m_minAbsQoPT
Definition: OfflineTrackQualitySelectionTool.h:50
IDTPM::OfflineTrackQualitySelectionTool::m_maxAbsZ0
FloatProperty m_maxAbsZ0
Definition: OfflineTrackQualitySelectionTool.h:49
IDTPM::OfflineTrackQualitySelectionTool::selectTracks
virtual StatusCode selectTracks(TrackAnalysisCollections &trkAnaColls) override
Definition: OfflineTrackQualitySelectionTool.cxx:19
IDTPM::OfflineTrackQualitySelectionTool::m_minAbsD0
FloatProperty m_minAbsD0
Definition: OfflineTrackQualitySelectionTool.h:46
IDTPM::OfflineTrackQualitySelectionTool::m_minQoPT
FloatProperty m_minQoPT
Definition: OfflineTrackQualitySelectionTool.h:59
IDTPM::OfflineTrackQualitySelectionTool::m_maxAbsPhi
FloatProperty m_maxAbsPhi
Definition: OfflineTrackQualitySelectionTool.h:45
IDTPM::OfflineTrackQualitySelectionTool::ASG_TOOL_CLASS
ASG_TOOL_CLASS(OfflineTrackQualitySelectionTool, ITrackSelectionTool)
IDTPM::OfflineTrackQualitySelectionTool::OfflineTrackQualitySelectionTool
OfflineTrackQualitySelectionTool(const std::string &name)
Definition: OfflineTrackQualitySelectionTool.cxx:10
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
IDTPM::ITrackSelectionTool
Definition: ITrackSelectionTool.h:27
IDTPM::OfflineTrackQualitySelectionTool::m_maxPt
FloatProperty m_maxPt
Definition: OfflineTrackQualitySelectionTool.h:52
IInDetTrackSelectionTool.h
IDTPM::OfflineTrackQualitySelectionTool::accept
bool accept(const xAOD::TrackParticle *track)
Definition: OfflineTrackQualitySelectionTool.cxx:40
IDTPM::OfflineTrackQualitySelectionTool::m_maxQoPT
FloatProperty m_maxQoPT
Definition: OfflineTrackQualitySelectionTool.h:60
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:221
IDTPM::OfflineTrackQualitySelectionTool::m_minAbsZ0
FloatProperty m_minAbsZ0
Definition: OfflineTrackQualitySelectionTool.h:48
IDTPM::OfflineTrackQualitySelectionTool::m_maxAbsD0
FloatProperty m_maxAbsD0
Definition: OfflineTrackQualitySelectionTool.h:47
IDTPM::OfflineTrackQualitySelectionTool::m_minD0
FloatProperty m_minD0
Definition: OfflineTrackQualitySelectionTool.h:57
IDTPM::OfflineTrackQualitySelectionTool::m_minAbsEta
FloatProperty m_minAbsEta
Definition: OfflineTrackQualitySelectionTool.h:43
IDTPM::OfflineTrackQualitySelectionTool::m_maxEta
FloatProperty m_maxEta
Definition: OfflineTrackQualitySelectionTool.h:54
IDTPM::OfflineTrackQualitySelectionTool::m_minEta
FloatProperty m_minEta
Definition: OfflineTrackQualitySelectionTool.h:53
ITrackSelectionTool.h
header file for interface for all the various track selection tools in this package
IDTPM::OfflineTrackQualitySelectionTool::selectTracksInRoI
virtual StatusCode selectTracksInRoI(TrackAnalysisCollections &trkAnaColls, const ElementLink< TrigRoiDescriptorCollection > &roiLink) override
Definition: OfflineTrackQualitySelectionTool.cxx:32
xAOD::track
@ track
Definition: TrackingPrimitives.h:512
xAOD::TrackParticle_v1
Class describing a TrackParticle.
Definition: TrackParticle_v1.h:43
IDTPM
Athena include(s).
Definition: IPlotsDefinitionSvc.h:25
AsgTool.h
IDTPM::OfflineTrackQualitySelectionTool::initialize
virtual StatusCode initialize() override
Dummy implementation of the initialisation function.
Definition: OfflineTrackQualitySelectionTool.cxx:13