ATLAS Offline Software
MuonSegmentConverterTool.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 MUON_MUONSEGMENTCONVERTERTOOL_H
6 #define MUON_MUONSEGMENTCONVERTERTOOL_H
7 
8 #include "AthLinks/ElementLink.h"
10 #include "GaudiKernel/ServiceHandle.h"
11 #include "GaudiKernel/ToolHandle.h"
18 #include "xAODMuon/MuonSegment.h"
21 
22 
23 namespace Muon {
24 
25 class MuonSegmentConverterTool : public extends<AthAlgTool, xAODMaker::IMuonSegmentConverterTool> {
26  public:
28  MuonSegmentConverterTool(const std::string&, const std::string&, const IInterface*);
29 
32 
35 
39  xAOD::MuonSegmentContainer* container = 0) const;
40 
43  xAOD::MuonSegment* convert(const MuonSegment& seg, xAOD::MuonSegmentContainer* container = 0) const;
44 
45  private:
47  void addClusterTiming(const MuonSegment& seg, xAOD::MuonSegment& xaodSeg) const;
48 
49  ToolHandle<IMuonSegmentHitSummaryTool> m_hitSummaryTool{
50  this,
51  "MuonSegmentHitSummaryTool",
52  "Muon::MuonSegmentHitSummaryTool/MuonSegmentHitSummaryTool",
53  };
54  ToolHandle<IMuonHitTimingTool> m_hitTimingTool{
55  this,
56  "MuonHitTimingTool",
57  "Muon::MuonHitTimingTool/MuonHitTimingTool",
58  };
60  this,
61  "MuonIdHelperSvc",
62  "Muon::MuonIdHelperSvc/MuonIdHelperSvc",
63  };
65  this,
66  "edmHelper",
67  "Muon::MuonEDMHelperSvc/MuonEDMHelperSvc",
68  "Handle to the service providing the IMuonEDMHelperSvc interface",
69  };
70 };
71 
72 } // namespace Muon
73 
74 #endif
Muon::MuonSegmentConverterTool::addClusterTiming
void addClusterTiming(const MuonSegment &seg, xAOD::MuonSegment &xaodSeg) const
helper function to dress output segment with cluster hit timing information
Definition: MuonSegmentConverterTool.cxx:62
Muon::MuonSegmentConverterTool::~MuonSegmentConverterTool
~MuonSegmentConverterTool()=default
destructor
MuonSegment.h
xAOD::MuonSegment_v1
Class describing a MuonSegment.
Definition: MuonSegment_v1.h:33
Muon::MuonSegmentConverterTool
Definition: MuonSegmentConverterTool.h:25
Muon
NRpcCablingAlg reads raw condition data and writes derived condition data to the condition store.
Definition: TrackSystemController.h:45
Muon::MuonSegmentConverterTool::m_edmHelper
ServiceHandle< IMuonEDMHelperSvc > m_edmHelper
Definition: MuonSegmentConverterTool.h:64
Muon::MuonSegmentConverterTool::MuonSegmentConverterTool
MuonSegmentConverterTool(const std::string &, const std::string &, const IInterface *)
default AlgTool constructor
Definition: MuonSegmentConverterTool.cxx:25
MuonSegmentContainer.h
IMuonHitTimingTool.h
Muon::MuonSegmentConverterTool::initialize
StatusCode initialize()
initialize method, method taken from bass-class AlgTool
Definition: MuonSegmentConverterTool.cxx:29
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
Muon::MuonSegmentConverterTool::m_hitSummaryTool
ToolHandle< IMuonSegmentHitSummaryTool > m_hitSummaryTool
Definition: MuonSegmentConverterTool.h:49
Muon::MuonSegmentConverterTool::m_idHelperSvc
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
Definition: MuonSegmentConverterTool.h:59
AthAlgTool.h
DataVector
Derived DataVector<T>.
Definition: DataVector.h:794
IMuonSegmentConverterTool.h
IMuonEDMHelperSvc.h
Muon::MuonSegmentConverterTool::convert
xAOD::MuonSegment * convert(const ElementLink< ::Trk::SegmentCollection > &segLink, xAOD::MuonSegmentContainer *container=0) const
convert a ElementLink to a Trk::Segment (should be of type MuonSegment) to a xAOD::MuonSegment,...
Definition: MuonSegmentConverterTool.cxx:40
MuonSegment.h
Muon::MuonSegment
Definition: MuonSpectrometer/MuonReconstruction/MuonRecEvent/MuonSegment/MuonSegment/MuonSegment.h:45
IMuonSegmentHitSummaryTool.h
Muon::MuonSegmentConverterTool::m_hitTimingTool
ToolHandle< IMuonHitTimingTool > m_hitTimingTool
Definition: MuonSegmentConverterTool.h:54
IMuonIdHelperSvc.h
SegmentCollection.h
ServiceHandle< Muon::IMuonIdHelperSvc >