ATLAS Offline Software
Loading...
Searching...
No Matches
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
19namespace 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
30 StatusCode initialize();
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;
71 static void calculateSummaryCounts(CompactSummary& sum) ;
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
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
Interface for tools calculating hit count summaries for track.
ToolHandle< Trk::ITrackSummaryHelperTool > m_summaryHelperTool
PublicToolHandle< MuonEDMPrinterTool > m_printer
virtual CompactSummary summary(const Trk::Track &track) const
Calculate compact summary.
ServiceHandle< IMuonEDMHelperSvc > m_edmHelperSvc
MuonHitSummaryTool(const std::string &, const std::string &, const IInterface *)
virtual ~MuonHitSummaryTool()=default
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
void getMuonTrackSummary(Trk::MuonTrackSummary &muonSummary, const Trk::Track &track) const
helper function to calculate MuonTrackSummary from track
static void calculateSummaryCounts(CompactSummary &sum)
This is the common class for 3D segments used in the muon spectrometer.
Detailed track summary for the muon system Give access to hit counts per chamber.
A summary of the information contained by a track.
NRpcCablingAlg reads raw condition data and writes derived condition data to the condition store.