ATLAS Offline Software
Loading...
Searching...
No Matches
IMuonSegmentOverlapRemovalTool.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef MUON_IMUONSEGMENTOVERLAPREMOVALTOOL_H
6#define MUON_IMUONSEGMENTOVERLAPREMOVALTOOL_H
7
8#include <vector>
9
10#include "GaudiKernel/IAlgTool.h"
12
13namespace Muon {
14
15 class MuonSegment;
17
22 class IMuonSegmentOverlapRemovalTool : virtual public IAlgTool {
23 public:
25 static const InterfaceID& interfaceID() {
26 static const InterfaceID IID_IMuonSegmentOverlapRemovalTool("Muon::IMuonSegmentOverlapRemovalTool", 1, 0);
27 return IID_IMuonSegmentOverlapRemovalTool;
28 }
29
31 virtual void removeDuplicates(Trk::SegmentCollection& segments) const = 0;
32
36 virtual std::unique_ptr<MuonSegmentCombination> removeDuplicates(const MuonSegmentCombination& combi) const = 0;
37 };
38
39} // namespace Muon
40
41#endif
abstract interface for tools removing duplicates from segment collections and segment combinations
virtual void removeDuplicates(Trk::SegmentCollection &segments) const =0
remove duplicates from a Trk::SegmentCollection
virtual std::unique_ptr< MuonSegmentCombination > removeDuplicates(const MuonSegmentCombination &combi) const =0
remove duplicates from a MuonSegmentCombination.
static const InterfaceID & interfaceID()
access to tool interface
Class to hold a set of MuonSegments belonging together.
This is the common class for 3D segments used in the muon spectrometer.
NRpcCablingAlg reads raw condition data and writes derived condition data to the condition store.
DataVector< Trk::Segment > SegmentCollection