ATLAS Offline Software
MuonEDMPrinterTool.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 MUONRECHELPERTOOLS_H
6 #define MUONRECHELPERTOOLS_H
7 
9 #include "GaudiKernel/AlgTool.h"
10 #include "GaudiKernel/ServiceHandle.h"
11 #include "GaudiKernel/ToolHandle.h"
21 
22 
23 namespace Trk {
24 class Track;
25 class MuonTrackSummary;
26 class ResidualPull;
27 class MeasurementBase;
28 class PrepRawData;
29 class MaterialEffectsBase;
30 class TrackStateOnSurface;
31 } // namespace Trk
32 
33 namespace Muon {
34 class MuonSegment;
35 class MuonSegmentCombination;
36 class MuonPattern;
37 class MuonPatternCombination;
38 class MuonPatternChamberIntersect;
44  public:
46  MuonEDMPrinterTool(const std::string&, const std::string&, const IInterface*);
47 
49  ~MuonEDMPrinterTool()= default;
50 
53 
55  static const InterfaceID& interfaceID()
56  {
57  static const InterfaceID IID_MuonEDMPrinterTool("Muon::MuonEDMPrinterTool", 1, 0);
58  return IID_MuonEDMPrinterTool;
59  }
60 
62  std::string print(const Trk::Track& track) const;
63 
65  std::string printStations(const Trk::Track& track) const;
66 
68  std::string print(const Trk::MuonTrackSummary& summary) const;
69 
71  static std::string printPatRec(const Trk::Track& track) ;
72 
74  std::string print(const MuonSegment& segment) const;
75 
77  std::string print(const std::vector<const MuonSegment*>& segs) const;
78  std::string print(std::vector<std::unique_ptr<MuonSegment> >& segs) const;
79 
81  std::string print(const Trk::MeasurementBase& measurement) const;
82 
84  std::string print(const Trk::PrepRawData& prd) const;
85 
87  std::string print(const std::vector<const Trk::MeasurementBase*>& measurements) const;
88 
90  std::string print(const MuonSegmentCombinationCollection& combiCol) const;
91 
93  std::string print(const MuonSegmentCombination& combi) const;
94 
96  std::string print(const MuonPattern& pattern) const;
97 
99  std::string print(const MuonPatternCollection& patCol) const;
100 
102  std::string print(const MuonPrdPatternCollection& patCol) const;
103 
105  std::string print(const MuonPatternCombination& pattern) const;
106 
108  std::string print(const MuonPatternCombinationCollection& combiCol) const;
109 
111  std::string print(const MuonPatternChamberIntersect& intersect) const;
112 
114  static std::string print(const Trk::TrackParameters& pars) ;
115 
117  static std::string print(const Trk::ResidualPull& resPull) ;
118 
120  static std::string print(const Trk::MaterialEffectsBase& mat) ;
122  static std::string print(const Trk::AlignmentEffectsOnTrack& aeot) ;
123 
125  std::string print(const Trk::TrackStateOnSurface& tsos) const;
126 
128  std::string printMeasurements(const Trk::Track& track) const;
129 
131  std::string printData(const Trk::MeasurementBase& measurement) const;
132 
134  std::string printId(const Trk::MeasurementBase& measurement) const;
135 
136  private:
138  this,
139  "MuonIdHelperSvc",
140  "Muon::MuonIdHelperSvc/MuonIdHelperSvc",
141  };
143  this,
144  "edmHelper",
145  "Muon::MuonEDMHelperSvc/MuonEDMHelperSvc",
146  "Handle to the service providing the IMuonEDMHelperSvc interface",
147  };
148 
149  ToolHandle<Trk::IResidualPullCalculator> m_pullCalculator{
150  this,
151  "ResidualPullCalculator",
152  "Trk::ResidualPullCalculator/ResidualPullCalculator",
153  };
154 
156  this,
157  "DetectorManagerKey",
158  "MuonDetectorManager",
159  "Key of input MuonDetectorManager condition data",
160  };
162  this,
163  "MdtPrdCollection",
164  "MDT_DriftCircles",
165  "MDT PRD Container",
166  };
168  this,
169  "RpcPrdCollection",
170  "RPC_Measurements",
171  "RPC PRD Container",
172  };
174  this,
175  "TgcPrdCollection",
176  "TGC_Measurements",
177  "TGC PRD Container",
178  };
179 };
180 
181 } // namespace Muon
182 #endif
mergePhysValFiles.pattern
pattern
Definition: DataQuality/DataQualityUtils/scripts/mergePhysValFiles.py:26
make_hlt_rep.pars
pars
Definition: make_hlt_rep.py:90
Muon::MuonEDMPrinterTool::m_mdtKey
SG::ReadHandleKey< MdtPrepDataContainer > m_mdtKey
Definition: MuonEDMPrinterTool.h:161
Muon::MuonEDMPrinterTool::printData
std::string printData(const Trk::MeasurementBase &measurement) const
print data part of Muon MeasurementBase to string
Definition: MuonEDMPrinterTool.cxx:906
Muon::MuonSegmentCombination
Definition: MuonSegmentCombination.h:30
TrackParameters.h
Muon::MuonEDMPrinterTool::MuonEDMPrinterTool
MuonEDMPrinterTool(const std::string &, const std::string &, const IInterface *)
constructor
Definition: MuonEDMPrinterTool.cxx:35
Trk::Track
The ATLAS Track class.
Definition: Tracking/TrkEvent/TrkTrack/TrkTrack/Track.h:73
Muon::MuonEDMPrinterTool::m_tgcKey
SG::ReadHandleKey< TgcPrepDataContainer > m_tgcKey
Definition: MuonEDMPrinterTool.h:173
mat
GeoMaterial * mat
Definition: LArDetectorConstructionTBEC.cxx:53
Trk::ResidualPull
This class containes residual and pull information.
Definition: ResidualPull.h:46
Trk::MaterialEffectsBase
base class to integrate material effects on Trk::Track in a flexible way.
Definition: MaterialEffectsBase.h:35
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition: StoreGate/StoreGate/ReadHandleKey.h:39
Muon
This class provides conversion from CSC RDO data to CSC Digits.
Definition: TrackSystemController.h:49
Trk::AlignmentEffectsOnTrack
Class to represent misalignments or 'discontinuities' on tracks These have a surface where the z axis...
Definition: AlignmentEffectsOnTrack.h:24
xAOD::MuonSegment
MuonSegment_v1 MuonSegment
Reference the current persistent version:
Definition: Event/xAOD/xAODMuon/xAODMuon/MuonSegment.h:13
Muon::MuonEDMPrinterTool::m_edmHelperSvc
ServiceHandle< IMuonEDMHelperSvc > m_edmHelperSvc
Definition: MuonEDMPrinterTool.h:142
Muon::MuonPattern
Basic class for patterns in the muon spectrometer consistig out of a list of Trk::PrepRawData objects...
Definition: MuonPattern.h:23
MdtPrepDataContainer.h
Muon::MuonEDMPrinterTool::~MuonEDMPrinterTool
~MuonEDMPrinterTool()=default
destructor
Muon::MuonEDMPrinterTool::print
std::string print(const Trk::Track &track) const
print track parameters to string
Definition: MuonEDMPrinterTool.cxx:276
Muon::MuonPatternChamberIntersect
This class holds information needed for the Moore and MoMu pattern recognition for a muon chamber.
Definition: MuonPatternChamberIntersect.h:38
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
MuonSegmentCombinationCollection.h
Muon::MuonEDMPrinterTool
Helper tool to print EDM objects to string in a fix format.
Definition: MuonEDMPrinterTool.h:43
AthAlgTool.h
MuonPatternCombinationCollection.h
Trk::MuonTrackSummary
Detailed track summary for the muon system Give access to hit counts per chamber.
Definition: MuonTrackSummary.h:26
Muon::MuonEDMPrinterTool::m_rpcKey
SG::ReadHandleKey< RpcPrepDataContainer > m_rpcKey
Definition: MuonEDMPrinterTool.h:167
Trk::ParametersBase
Definition: ParametersBase.h:55
DataVector< Muon::MuonSegmentCombination >
Muon::MuonEDMPrinterTool::m_pullCalculator
ToolHandle< Trk::IResidualPullCalculator > m_pullCalculator
Definition: MuonEDMPrinterTool.h:149
Trk::PrepRawData
Definition: PrepRawData.h:62
Trk::MeasurementBase
Definition: MeasurementBase.h:58
Muon::MuonEDMPrinterTool::interfaceID
static const InterfaceID & interfaceID()
access to tool interface
Definition: MuonEDMPrinterTool.h:55
IMuonEDMHelperSvc.h
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
Trk::TrackStateOnSurface
represents the track state (measurement, material, fit parameters and quality) at a surface.
Definition: TrackStateOnSurface.h:71
Muon::MuonEDMPrinterTool::print
std::string print(const MuonPrdPatternCollection &patCol) const
print MuonPatternCollection
Muon::MuonEDMPrinterTool::initialize
StatusCode initialize()
AlgTool initilize.
Definition: MuonEDMPrinterTool.cxx:42
MuonDetectorManager.h
IResidualPullCalculator.h
SG::ReadCondHandleKey< MuonGM::MuonDetectorManager >
MuonPatternCollection.h
Muon::MuonEDMPrinterTool::printId
std::string printId(const Trk::MeasurementBase &measurement) const
print identifier part of Muon MeasurementBase to string
Definition: MuonEDMPrinterTool.cxx:978
Amg::intersect
std::optional< double > intersect(const AmgVector(N)&posA, const AmgVector(N)&dirA, const AmgVector(N)&posB, const AmgVector(N)&dirB)
Calculates the closest approach of two lines.
Definition: GeoPrimitivesHelpers.h:302
Track
Definition: TriggerChamberClusterOnTrackCreator.h:21
xAOD::track
@ track
Definition: TrackingPrimitives.h:512
Muon::MuonEDMPrinterTool::m_DetectorManagerKey
SG::ReadCondHandleKey< MuonGM::MuonDetectorManager > m_DetectorManagerKey
Definition: MuonEDMPrinterTool.h:155
Muon::MuonSegment
Definition: MuonSpectrometer/MuonReconstruction/MuonRecEvent/MuonSegment/MuonSegment/MuonSegment.h:45
AthAlgTool
Definition: AthAlgTool.h:26
Muon::MuonEDMPrinterTool::printPatRec
static std::string printPatRec(const Trk::Track &track)
produce a string indicating who produced the track
Definition: MuonEDMPrinterTool.cxx:257
Muon::MuonPatternCombination
The MuonPatternCombination class provides the means to store the output of the initial global pattern...
Definition: MuonPatternCombination.h:29
Muon::MuonEDMPrinterTool::printStations
std::string printStations(const Trk::Track &track) const
print stations on track to string
Definition: MuonEDMPrinterTool.cxx:133
IMuonIdHelperSvc.h
Muon::MuonEDMPrinterTool::m_idHelperSvc
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
Definition: MuonEDMPrinterTool.h:137
Muon::MuonEDMPrinterTool::printMeasurements
std::string printMeasurements(const Trk::Track &track) const
print measurements on track to string
Definition: MuonEDMPrinterTool.cxx:151
NSWL1::PadTriggerAdapter::segment
Muon::NSW_PadTriggerSegment segment(const NSWL1::PadTrigger &data)
Definition: PadTriggerAdapter.cxx:5
ServiceHandle< Muon::IMuonIdHelperSvc >
SCT_Monitoring::summary
@ summary
Definition: SCT_MonitoringNumbers.h:65