ATLAS Offline Software
MuonHitSummaryTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef MUON_MUONHITSUMMARYTOOL_H
6 #define MUON_MUONHITSUMMARYTOOL_H
7 
8 #include <string>
9 
11 #include "GaudiKernel/ServiceHandle.h"
12 #include "GaudiKernel/ToolHandle.h"
18 
19 namespace Muon {
24  class MuonHitSummaryTool : public AthAlgTool, virtual public IMuonHitSummaryTool {
25  public:
26  MuonHitSummaryTool(const std::string&, const std::string&, const IInterface*);
27 
28  virtual ~MuonHitSummaryTool() = default;
29 
31 
36  virtual CompactSummary summary(const Trk::Track& track) const;
37 
42  virtual CompactSummary summary(const Trk::TrackSummary& summary) const;
43 
49 
54  virtual CompactSummary summary(const Muon::MuonSegment& segment) const;
55 
60  virtual CompactSummary summary(const std::vector<const Muon::MuonSegment*>& segments) const;
61 
66  virtual CompactSummary summary(const std::vector<const Trk::MeasurementBase*>& measurements) const;
67 
68  private:
70  void getMuonTrackSummary(Trk::MuonTrackSummary& muonSummary, const Trk::Track& track) const;
73  this,
74  "MuonIdHelperSvc",
75  "Muon::MuonIdHelperSvc/MuonIdHelperSvc",
76  };
78  this,
79  "edmHelper",
80  "Muon::MuonEDMHelperSvc/MuonEDMHelperSvc",
81  "Handle to the service providing the IMuonEDMHelperSvc interface",
82  };
83 
84  PublicToolHandle<MuonEDMPrinterTool> m_printer{
85  this,
86  "Printer",
87  "Muon::MuonEDMPrinterTool/MuonEDMPrinterTool",
88  };
89  ToolHandle<Trk::ITrackSummaryHelperTool> m_summaryHelperTool{
90  this,
91  "MuonTrackSummaryHelperTool",
92  "Muon::MuonTrackSummaryHelperTool/MuonTrackSummaryHelperTool",
93  };
94  };
95 
96 } // namespace Muon
97 
98 #endif // MUON_IDHELPERTOOL_H
Muon::MuonHitSummaryTool::getMuonTrackSummary
void getMuonTrackSummary(Trk::MuonTrackSummary &muonSummary, const Trk::Track &track) const
helper function to calculate MuonTrackSummary from track
Definition: MuonHitSummaryTool.cxx:28
Muon::MuonHitSummaryTool::summary
virtual CompactSummary summary(const Trk::Track &track) const
Calculate compact summary.
Definition: MuonHitSummaryTool.cxx:41
IMuonHitSummaryTool.h
Trk::Track
The ATLAS Track class.
Definition: Tracking/TrkEvent/TrkTrack/TrkTrack/Track.h:73
MuonEDMPrinterTool.h
Muon::MuonHitSummaryTool::~MuonHitSummaryTool
virtual ~MuonHitSummaryTool()=default
Muon::MuonHitSummaryTool::m_edmHelperSvc
ServiceHandle< IMuonEDMHelperSvc > m_edmHelperSvc
Definition: MuonHitSummaryTool.h:77
Muon::IMuonHitSummaryTool
Interface for tools calculating hit count summaries for track.
Definition: IMuonHitSummaryTool.h:28
Muon::IMuonHitSummaryTool::CompactSummary
Definition: IMuonHitSummaryTool.h:70
Muon
This class provides conversion from CSC RDO data to CSC Digits.
Definition: TrackSystemController.h:49
Muon::MuonHitSummaryTool::initialize
StatusCode initialize()
Definition: MuonHitSummaryTool.cxx:20
Muon::MuonHitSummaryTool::m_summaryHelperTool
ToolHandle< Trk::ITrackSummaryHelperTool > m_summaryHelperTool
Definition: MuonHitSummaryTool.h:89
convertTimingResiduals.sum
sum
Definition: convertTimingResiduals.py:55
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthAlgTool.h
Trk::MuonTrackSummary
Detailed track summary for the muon system Give access to hit counts per chamber.
Definition: MuonTrackSummary.h:26
Muon::MuonHitSummaryTool::m_idHelperSvc
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
Definition: MuonHitSummaryTool.h:72
IMuonEDMHelperSvc.h
Trk::TrackSummary
A summary of the information contained by a track.
Definition: Tracking/TrkEvent/TrkTrackSummary/TrkTrackSummary/TrackSummary.h:287
Muon::MuonHitSummaryTool::m_printer
PublicToolHandle< MuonEDMPrinterTool > m_printer
Definition: MuonHitSummaryTool.h:84
ITrackSummaryHelperTool.h
Muon::MuonHitSummaryTool
Helper tool to extract simple counts from a Trk::Track, Trk::TrackSummary or Trk::MuonTrackSummary.
Definition: MuonHitSummaryTool.h:24
xAOD::track
@ track
Definition: TrackingPrimitives.h:512
Muon::MuonSegment
Definition: MuonSpectrometer/MuonReconstruction/MuonRecEvent/MuonSegment/MuonSegment/MuonSegment.h:45
AthAlgTool
Definition: AthAlgTool.h:26
Muon::MuonHitSummaryTool::MuonHitSummaryTool
MuonHitSummaryTool(const std::string &, const std::string &, const IInterface *)
Definition: MuonHitSummaryTool.cxx:16
IMuonIdHelperSvc.h
NSWL1::PadTriggerAdapter::segment
Muon::NSW_PadTriggerSegment segment(const NSWL1::PadTrigger &data)
Definition: PadTriggerAdapter.cxx:5
Muon::MuonHitSummaryTool::calculateSummaryCounts
static void calculateSummaryCounts(CompactSummary &sum)
Definition: MuonHitSummaryTool.cxx:139
ServiceHandle< Muon::IMuonIdHelperSvc >