ATLAS Offline Software
MuonTrackScoringTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef MUONTRACKSCORINGTOOL_H
6 #define MUONTRACKSCORINGTOOL_H
7 
8 #include <string>
9 #include <vector>
10 
12 #include "GaudiKernel/ToolHandle.h"
17 
18 namespace Trk {
19  class Track;
20  class TrackSummary;
21 } // namespace Trk
22 
23 namespace Muon {
24 
26  class MuonTrackScoringTool : virtual public Trk::ITrackScoringTool, public AthAlgTool {
27  public:
28  MuonTrackScoringTool(const std::string&, const std::string&, const IInterface*);
29  virtual ~MuonTrackScoringTool() = default;
30  virtual StatusCode initialize() override;
31 
33  virtual Trk::TrackScore score(const Trk::Track& track) const override;
34 
36  virtual Trk::TrackScore simpleScore(const Trk::Track& track, const Trk::TrackSummary& trackSummary) const override;
37 
38  private:
40  ToolHandle<Trk::IExtendedTrackSummaryTool> m_trkSummaryTool{this, "SumHelpTool", "Trk::TrackSummaryTool"};
41  PublicToolHandle<MuonEDMPrinterTool> m_printer{this, "EDMPrinter", "Muon::MuonEDMPrinterTool/MuonEDMPrinterTool",
42  "helper to nicely print out tracks"};
43 
45  std::vector<Trk::TrackScore> m_summaryTypeScore;
46  };
47 
48 } // namespace Muon
49 #endif
Muon::MuonTrackScoringTool::~MuonTrackScoringTool
virtual ~MuonTrackScoringTool()=default
Trk::Track
The ATLAS Track class.
Definition: Tracking/TrkEvent/TrkTrack/TrkTrack/Track.h:73
MuonEDMPrinterTool.h
Muon::MuonTrackScoringTool::score
virtual Trk::TrackScore score(const Trk::Track &track) const override
create a score based on how good the passed track is
Definition: MuonTrackScoringTool.cxx:57
Trk::ITrackScoringTool
Interface for tool to return a score from a given track.
Definition: ITrackScoringTool.h:23
ITrackScoringTool.h
Muon::MuonTrackScoringTool::simpleScore
virtual Trk::TrackScore simpleScore(const Trk::Track &track, const Trk::TrackSummary &trackSummary) const override
create a score based on how good the passed TrackSummary is
Definition: MuonTrackScoringTool.cxx:70
Muon
This class provides conversion from CSC RDO data to CSC Digits.
Definition: TrackSystemController.h:49
Muon::MuonTrackScoringTool::m_printer
PublicToolHandle< MuonEDMPrinterTool > m_printer
Definition: MuonTrackScoringTool.h:41
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthAlgTool.h
Trk::TrackScore
float TrackScore
Definition: TrackScore.h:10
Muon::MuonTrackScoringTool::m_trkSummaryTool
ToolHandle< Trk::IExtendedTrackSummaryTool > m_trkSummaryTool
Definition: MuonTrackScoringTool.h:40
Muon::MuonTrackScoringTool::initialize
virtual StatusCode initialize() override
Definition: MuonTrackScoringTool.cxx:50
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
Trk::TrackSummary
A summary of the information contained by a track.
Definition: Tracking/TrkEvent/TrkTrackSummary/TrkTrackSummary/TrackSummary.h:287
TrackScore.h
Muon::MuonTrackScoringTool
Concrete implementation of the ITrackScoringTool pABC.
Definition: MuonTrackScoringTool.h:26
Muon::MuonTrackScoringTool::m_summaryTypeScore
std::vector< Trk::TrackScore > m_summaryTypeScore
holds the scores assigned to each Trk::SummaryType from the track's Trk::TrackSummary
Definition: MuonTrackScoringTool.h:45
IExtendedTrackSummaryTool.h
Track
Definition: TriggerChamberClusterOnTrackCreator.h:21
xAOD::track
@ track
Definition: TrackingPrimitives.h:512
AthAlgTool
Definition: AthAlgTool.h:26
Muon::MuonTrackScoringTool::MuonTrackScoringTool
MuonTrackScoringTool(const std::string &, const std::string &, const IInterface *)
Definition: MuonTrackScoringTool.cxx:17
xAOD::TrackSummary
TrackSummary_v1 TrackSummary
Definition: Event/xAOD/xAODTracking/xAODTracking/TrackSummary.h:10