ATLAS Offline Software
TrackQualitySelectionTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef INDETTRACKPERFMON_TRACKQUALITYSELECTIONTOOL_H
6 #define INDETTRACKPERFMON_TRACKQUALITYSELECTIONTOOL_H
7 
16 #include "AsgTools/AsgTool.h"
18 
20 #include "ITrackSelectionTool.h"
21 
23 #include <string>
24 
25 
26 namespace IDTPM {
27 
29  public virtual IDTPM::ITrackSelectionTool,
30  public asg::AsgTool {
31 
32  public:
33 
35 
37  TrackQualitySelectionTool( const std::string& name );
38 
40  virtual ~TrackQualitySelectionTool() = default;
41 
43  virtual StatusCode initialize() override;
44 
46  virtual StatusCode selectTracks(
47  TrackAnalysisCollections& trkAnaColls ) override;
48 
49  private:
50 
51  BooleanProperty m_doOfflSelection {
52  this, "DoOfflineSelection", false, "Perform offline tracks quality selection" };
53 
54  ToolHandle< ITrackSelectionTool > m_offlineSelectionTool {
55  this, "OfflineSelectionTool", "IDTPM::InDetTrackPerfMon/ITrackSelectionTool",
56  "Tool to perform track quality selection selection" };
57 
58  BooleanProperty m_doTruthSelection {
59  this, "DoTruthSelection", false, "Perform truth particles quality selection" };
60 
61  ToolHandle< ITrackSelectionTool > m_truthSelectionTool {
62  this, "TruthSelectionTool", "IDTPM::InDetTrackPerfMon/ITrackSelectionTool",
63  "Tool to perform truth track selection" };
64 
65  BooleanProperty m_doObjSelection {
66  this, "DoObjectSelection", false, "Perform track-object selection" };
67 
68  ToolHandle< ITrackSelectionTool > m_objSelectionTool {
69  this, "TrackObjectSelectionTool", "IDTPM::InDetTrackPerfMon/ITrackSelectionTool",
70  "Tool to perform track-object selection" };
71 
72  }; // class InDetGeneralSelectionTool
73 
74 } // namespace IDTPM
75 
76 
77 
78 #endif // > ! INDETTRACKPERFMON_TRACKQUALITYSELECTIONTOOL_H
IDTPM::TrackQualitySelectionTool::m_offlineSelectionTool
ToolHandle< ITrackSelectionTool > m_offlineSelectionTool
Definition: TrackQualitySelectionTool.h:54
IDTPM::TrackQualitySelectionTool::ASG_TOOL_CLASS
ASG_TOOL_CLASS(TrackQualitySelectionTool, ITrackSelectionTool)
asg::AsgTool
Base class for the dual-use tool implementation classes.
Definition: AsgTool.h:47
IDTPM::TrackAnalysisCollections
Definition: TrackAnalysisCollections.h:46
IDTPM::TrackQualitySelectionTool::m_doOfflSelection
BooleanProperty m_doOfflSelection
Definition: TrackQualitySelectionTool.h:51
IDTPM::TrackQualitySelectionTool::TrackQualitySelectionTool
TrackQualitySelectionTool(const std::string &name)
Constructor.
Definition: TrackQualitySelectionTool.cxx:22
IDTPM::TrackQualitySelectionTool::m_doObjSelection
BooleanProperty m_doObjSelection
Definition: TrackQualitySelectionTool.h:65
IDTPM::TrackQualitySelectionTool::initialize
virtual StatusCode initialize() override
Initialize.
Definition: TrackQualitySelectionTool.cxx:30
IDTPM::TrackQualitySelectionTool::m_objSelectionTool
ToolHandle< ITrackSelectionTool > m_objSelectionTool
Definition: TrackQualitySelectionTool.h:68
IDTPM::TrackQualitySelectionTool::~TrackQualitySelectionTool
virtual ~TrackQualitySelectionTool()=default
Destructor.
IDTPM::TrackQualitySelectionTool::m_doTruthSelection
BooleanProperty m_doTruthSelection
Definition: TrackQualitySelectionTool.h:58
IDTPM::TrackQualitySelectionTool
Definition: TrackQualitySelectionTool.h:30
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
IDTPM::ITrackSelectionTool
Definition: ITrackSelectionTool.h:24
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
IDTPM::TrackQualitySelectionTool::selectTracks
virtual StatusCode selectTracks(TrackAnalysisCollections &trkAnaColls) override
Main Track selection method.
Definition: TrackQualitySelectionTool.cxx:47
IDTPM::TrackQualitySelectionTool::m_truthSelectionTool
ToolHandle< ITrackSelectionTool > m_truthSelectionTool
Definition: TrackQualitySelectionTool.h:61
ITrackSelectionTool.h
header file for interface for all the various track selection tools in this package
IDTPM
Athena include(s).
Definition: IPlotsDefinitionSvc.h:25
AsgTool.h