ATLAS Offline Software
MuonSegmentConverterTool.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_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 static const InterfaceID IID_MuonSegmentConverterTool("xAODMaker::IMuonSegmentConverterTool", 1, 0);
23 
24 namespace Muon {
25 
27  public:
29  MuonSegmentConverterTool(const std::string&, const std::string&, const IInterface*);
30 
33 
36 
38  static const InterfaceID& interfaceID()
39  {
40  return IID_MuonSegmentConverterTool;
41  }
42 
46  xAOD::MuonSegmentContainer* container = 0) const;
47 
50  xAOD::MuonSegment* convert(const MuonSegment& seg, xAOD::MuonSegmentContainer* container = 0) const;
51 
52  private:
54  void addClusterTiming(const MuonSegment& seg, xAOD::MuonSegment& xaodSeg) const;
55 
56  ToolHandle<IMuonSegmentHitSummaryTool> m_hitSummaryTool{
57  this,
58  "MuonSegmentHitSummaryTool",
59  "Muon::MuonSegmentHitSummaryTool/MuonSegmentHitSummaryTool",
60  };
61  ToolHandle<IMuonHitTimingTool> m_hitTimingTool{
62  this,
63  "MuonHitTimingTool",
64  "Muon::MuonHitTimingTool/MuonHitTimingTool",
65  };
67  this,
68  "MuonIdHelperSvc",
69  "Muon::MuonIdHelperSvc/MuonIdHelperSvc",
70  };
72  this,
73  "edmHelper",
74  "Muon::MuonEDMHelperSvc/MuonEDMHelperSvc",
75  "Handle to the service providing the IMuonEDMHelperSvc interface",
76  };
77 };
78 
79 } // namespace Muon
80 
81 #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:64
MuonSegment.h
xAOD::MuonSegment_v1
Class describing a MuonSegment.
Definition: MuonSegment_v1.h:33
Muon::MuonSegmentConverterTool
Definition: MuonSegmentConverterTool.h:26
Muon
This class provides conversion from CSC RDO data to CSC Digits.
Definition: TrackSystemController.h:49
Muon::MuonSegmentConverterTool::m_edmHelper
ServiceHandle< IMuonEDMHelperSvc > m_edmHelper
Definition: MuonSegmentConverterTool.h:71
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:31
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:56
Muon::MuonSegmentConverterTool::m_idHelperSvc
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
Definition: MuonSegmentConverterTool.h:66
AthAlgTool.h
DataVector
Derived DataVector<T>.
Definition: DataVector.h:581
IMuonSegmentConverterTool.h
Muon::MuonSegmentConverterTool::interfaceID
static const InterfaceID & interfaceID()
access to tool interface
Definition: MuonSegmentConverterTool.h:38
Muon::MuonSegmentConverterTool::~MuonSegmentConverterTool
~MuonSegmentConverterTool()
destructor
Definition: MuonSegmentConverterTool.h:32
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:42
MuonSegment.h
Muon::MuonSegment
Definition: MuonSpectrometer/MuonReconstruction/MuonRecEvent/MuonSegment/MuonSegment/MuonSegment.h:45
AthAlgTool
Definition: AthAlgTool.h:26
IMuonSegmentHitSummaryTool.h
xAODMaker::IMuonSegmentConverterTool
Interface for tools calculating hit count summaries for track.
Definition: IMuonSegmentConverterTool.h:19
Muon::MuonSegmentConverterTool::m_hitTimingTool
ToolHandle< IMuonHitTimingTool > m_hitTimingTool
Definition: MuonSegmentConverterTool.h:61
IMuonIdHelperSvc.h
SegmentCollection.h
ServiceHandle< Muon::IMuonIdHelperSvc >