ATLAS Offline Software
MuonAmbiTrackSelectionTool.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_MUONAMBITRACKSELECTIONTOOL_H
6 #define MUON_MUONAMBITRACKSELECTIONTOOL_H
7 
8 #include <map>
9 #include <vector>
10 
12 #include "GaudiKernel/ServiceHandle.h"
13 #include "GaudiKernel/ToolHandle.h"
17 
18 namespace Trk {
19  class Track;
20 }
21 
22 namespace Muon {
23 
35  public:
36  MuonAmbiTrackSelectionTool(const std::string &, const std::string &, const IInterface *);
37 
40 
42  virtual StatusCode initialize() override;
43 
44  virtual std::tuple<Trk::Track *, bool> getCleanedOutTrack(const Trk::Track *track, const Trk::TrackScore score,
45  Trk::ClusterSplitProbabilityContainer &splitProbContainer,
46  Trk::PRDtoTrackMap &prd_to_track_map, int trackId = -1,
47  int subtrackId = -1) const override;
48 
49  private:
50  ToolHandle<Muon::MuonEDMPrinterTool> m_printer{
51  this,
52  "Printer",
53  "Muon::MuonEDMPrinterTool/MuonEDMPrinterTool",
54  };
56  this,
57  "MuonIdHelperSvc",
58  "Muon::MuonIdHelperSvc/MuonIdHelperSvc",
59  };
60 
62  Gaudi::Property<double> m_maxOverlapFraction{this, "MaxOverlapFraction", 0.1};
63 
65  Gaudi::Property<bool> m_keepPartial{this, "KeepPartialOverlaps", true};
66 
68  Gaudi::Property<bool> m_keepMoreThanOne{this, "KeepMoreThanOneShare", true};
69  };
70 } // namespace Muon
71 
72 #endif
Trk::Track
The ATLAS Track class.
Definition: Tracking/TrkEvent/TrkTrack/TrkTrack/Track.h:73
MuonEDMPrinterTool.h
Muon::MuonAmbiTrackSelectionTool::m_maxOverlapFraction
Gaudi::Property< double > m_maxOverlapFraction
maximum hit overlap fraction between two track, if higher track will be rejected
Definition: MuonAmbiTrackSelectionTool.h:62
Trk::PRDtoTrackMap
Definition: PRDtoTrackMap.h:17
Muon::MuonAmbiTrackSelectionTool::getCleanedOutTrack
virtual std::tuple< Trk::Track *, bool > getCleanedOutTrack(const Trk::Track *track, const Trk::TrackScore score, Trk::ClusterSplitProbabilityContainer &splitProbContainer, Trk::PRDtoTrackMap &prd_to_track_map, int trackId=-1, int subtrackId=-1) const override
Performs cleaning of a track from already used hits.
Definition: MuonAmbiTrackSelectionTool.cxx:36
Muon
This class provides conversion from CSC RDO data to CSC Digits.
Definition: TrackSystemController.h:49
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
Muon::MuonAmbiTrackSelectionTool::m_printer
ToolHandle< Muon::MuonEDMPrinterTool > m_printer
Definition: MuonAmbiTrackSelectionTool.h:50
AthAlgTool.h
Muon::MuonAmbiTrackSelectionTool::~MuonAmbiTrackSelectionTool
virtual ~MuonAmbiTrackSelectionTool()
default destructor
Definition: MuonAmbiTrackSelectionTool.h:39
Trk::TrackScore
float TrackScore
Definition: TrackScore.h:10
Muon::MuonAmbiTrackSelectionTool::m_keepMoreThanOne
Gaudi::Property< bool > m_keepMoreThanOne
flag to keep overlaps which share more than one presicion layer
Definition: MuonAmbiTrackSelectionTool.h:68
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
Muon::MuonAmbiTrackSelectionTool::MuonAmbiTrackSelectionTool
MuonAmbiTrackSelectionTool(const std::string &, const std::string &, const IInterface *)
Definition: MuonAmbiTrackSelectionTool.cxx:21
Trk::ClusterSplitProbabilityContainer
Container to associate Cluster with cluster splitting probabilities.
Definition: ClusterSplitProbabilityContainer.h:17
Muon::MuonAmbiTrackSelectionTool
Definition: MuonAmbiTrackSelectionTool.h:34
Trk::IAmbiTrackSelectionTool
Interface for building new tracks using information about shared and already associated hits.
Definition: IAmbiTrackSelectionTool.h:28
xAOD::score
@ score
Definition: TrackingPrimitives.h:513
Track
Definition: TriggerChamberClusterOnTrackCreator.h:21
IAmbiTrackSelectionTool.h
xAOD::track
@ track
Definition: TrackingPrimitives.h:512
AthAlgTool
Definition: AthAlgTool.h:26
Muon::MuonAmbiTrackSelectionTool::initialize
virtual StatusCode initialize() override
standard Athena-Algorithm method
Definition: MuonAmbiTrackSelectionTool.cxx:28
Muon::MuonAmbiTrackSelectionTool::m_keepPartial
Gaudi::Property< bool > m_keepPartial
flag to keep partial overlaps
Definition: MuonAmbiTrackSelectionTool.h:65
IMuonIdHelperSvc.h
ServiceHandle< Muon::IMuonIdHelperSvc >
Muon::MuonAmbiTrackSelectionTool::m_idHelperSvc
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
Definition: MuonAmbiTrackSelectionTool.h:55