ATLAS Offline Software
TrackObjectSelectionTool.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_TRACKOBJECTSELECTIONTOOL_H
6 #define INDETTRACKPERFMON_TRACKOBJECTSELECTIONTOOL_H
7 
17 #include "AsgTools/AsgTool.h"
20 
22 #include "ITrackSelectionTool.h"
23 
27 
28 
29 namespace IDTPM {
30 
32  public virtual IDTPM::ITrackSelectionTool,
33  public asg::AsgTool {
34 
35  public:
36 
38 
40  TrackObjectSelectionTool( const std::string& name );
41 
43  virtual ~TrackObjectSelectionTool() = default;
44 
46  virtual StatusCode initialize() override;
47 
49  virtual StatusCode selectTracks(
50  TrackAnalysisCollections& trkAnaColls ) override;
51 
52  bool accept( const xAOD::TrackParticle& offTrack,
53  const std::vector< const xAOD::TruthParticle* >& truthVec ) const;
54 
55  private:
56 
57  StringProperty m_objectType {
58  this, "ObjectType", "Electron", "Offline object type requested" };
59 
60  StringProperty m_objectQuality {
61  this, "ObjectQuality", "", "Quality-based object selection" };
62 
63  StringProperty m_tauType {
64  this, "TauType", "RNN", "Request RNN or BDT taus" };
65 
66  IntegerProperty m_tauNprongs {
67  this, "TauNprongs", 1, "Request 1- or 3- prong taus" };
68 
69  FloatProperty m_truthProbCut {
70  this, "MatchingTruthProb", 0.5, "Minimal truthProbability for valid matching" };
71 
72  }; // class TrackObjectSelectionTool
73 
74 } // namespace IDTPM
75 
76 
77 
78 #endif // > ! INDETTRACKPERFMON_INDETTRACKOBJECTSELECTIONTOOL_H
IDTPM::TrackObjectSelectionTool::initialize
virtual StatusCode initialize() override
Initialize.
Definition: TrackObjectSelectionTool.cxx:32
IDTPM::TrackObjectSelectionTool::m_truthProbCut
FloatProperty m_truthProbCut
Definition: TrackObjectSelectionTool.h:69
asg::AsgTool
Base class for the dual-use tool implementation classes.
Definition: AsgTool.h:47
IDTPM::TrackObjectSelectionTool::selectTracks
virtual StatusCode selectTracks(TrackAnalysisCollections &trkAnaColls) override
Main Track selection method.
Definition: TrackObjectSelectionTool.cxx:45
IDTPM::TrackObjectSelectionTool::TrackObjectSelectionTool
TrackObjectSelectionTool(const std::string &name)
Constructor.
Definition: TrackObjectSelectionTool.cxx:24
IDTPM::TrackAnalysisCollections
Definition: TrackAnalysisCollections.h:46
IDTPM::TrackObjectSelectionTool::m_objectType
StringProperty m_objectType
Definition: TrackObjectSelectionTool.h:57
IDTPM::TrackObjectSelectionTool::~TrackObjectSelectionTool
virtual ~TrackObjectSelectionTool()=default
Destructor.
IDTPM::TrackObjectSelectionTool::m_tauNprongs
IntegerProperty m_tauNprongs
Definition: TrackObjectSelectionTool.h:66
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:240
IDTPM::TrackObjectSelectionTool
Definition: TrackObjectSelectionTool.h:33
TrackParticle.h
IDTPM::TrackObjectSelectionTool::accept
bool accept(const xAOD::TrackParticle &offTrack, const std::vector< const xAOD::TruthParticle * > &truthVec) const
Definition: TrackObjectSelectionTool.cxx:97
IDTPM::TrackObjectSelectionTool::ASG_TOOL_CLASS
ASG_TOOL_CLASS(TrackObjectSelectionTool, ITrackSelectionTool)
IDTPM::TrackObjectSelectionTool::m_tauType
StringProperty m_tauType
Definition: TrackObjectSelectionTool.h:63
ITrackSelectionTool.h
header file for interface for all the various track selection tools in this package
IDTPM::TrackObjectSelectionTool::m_objectQuality
StringProperty m_objectQuality
Definition: TrackObjectSelectionTool.h:60
TrigRoiDescriptor.h
xAOD::TrackParticle_v1
Class describing a TrackParticle.
Definition: TrackParticle_v1.h:43
IDTPM
Athena include(s).
Definition: IPlotsDefinitionSvc.h:25
AsgTool.h
TruthParticle.h