ATLAS Offline Software
IMuonLayerSegmentMatchingTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef MUON_IMUONLAYERSEGMENTMATCHINGTOOL_H
6 #define MUON_IMUONLAYERSEGMENTMATCHINGTOOL_H
7 
8 #include <vector>
9 
10 #include "GaudiKernel/IAlgTool.h"
12 
13 namespace Muon {
14 
15  class MuonSegment;
16 
18  class IMuonLayerSegmentMatchingTool : virtual public IAlgTool {
19  public:
20  virtual ~IMuonLayerSegmentMatchingTool() = default;
22  static const InterfaceID& interfaceID() {
23  static const InterfaceID IID_IMuonLayerSegmentMatchingTool("Muon::IMuonLayerSegmentMatchingTool", 1, 0);
24  return IID_IMuonLayerSegmentMatchingTool;
25  }
26 
28  virtual void select(const EventContext& ctx, const MuonSystemExtension::Intersection& intersection,
29  const std::vector<std::shared_ptr<const Muon::MuonSegment> >& segments,
30  std::vector<std::shared_ptr<const Muon::MuonSegment> >& selectedSegments) const = 0;
31 
32  virtual bool match(const EventContext& ctx, const MuonSystemExtension::Intersection& intersection, const MuonSegment& segment) const = 0;
33  };
34 } // namespace Muon
35 
36 #endif // IMuonLayerSegmentMatchingTool_H
Muon::IMuonLayerSegmentMatchingTool::match
virtual bool match(const EventContext &ctx, const MuonSystemExtension::Intersection &intersection, const MuonSegment &segment) const =0
Muon
This class provides conversion from CSC RDO data to CSC Digits.
Definition: TrackSystemController.h:49
intersection
std::vector< std::string > intersection(std::vector< std::string > &v1, std::vector< std::string > &v2)
Definition: compareFlatTrees.cxx:25
xAOD::MuonSegment
MuonSegment_v1 MuonSegment
Reference the current persistent version:
Definition: Event/xAOD/xAODMuon/xAODMuon/MuonSegment.h:13
Muon::IMuonLayerSegmentMatchingTool::interfaceID
static const InterfaceID & interfaceID()
IAlgTool interface.
Definition: IMuonLayerSegmentMatchingTool.h:22
Muon::IMuonLayerSegmentMatchingTool
Interface for tools calculating hit count summaries for track.
Definition: IMuonLayerSegmentMatchingTool.h:18
MuonSystemExtension.h
Muon::IMuonLayerSegmentMatchingTool::~IMuonLayerSegmentMatchingTool
virtual ~IMuonLayerSegmentMatchingTool()=default
Muon::IMuonLayerSegmentMatchingTool::select
virtual void select(const EventContext &ctx, const MuonSystemExtension::Intersection &intersection, const std::vector< std::shared_ptr< const Muon::MuonSegment > > &segments, std::vector< std::shared_ptr< const Muon::MuonSegment > > &selectedSegments) const =0
Match segments for to a given MuonSystemExtension::Intersection, return selected segments.
Muon::MuonSystemExtension::Intersection
data per intersection
Definition: MuonSystemExtension.h:21
Muon::MuonSegment
Definition: MuonSpectrometer/MuonReconstruction/MuonRecEvent/MuonSegment/MuonSegment/MuonSegment.h:45
NSWL1::PadTriggerAdapter::segment
Muon::NSW_PadTriggerSegment segment(const NSWL1::PadTrigger &data)
Definition: PadTriggerAdapter.cxx:5