![]() |
ATLAS Offline Software
|
The IMuonSegmentFinder is a pure virtual interface for tools to find segments in the muon spectrometer. More...
#include <IMuonSegmentMaker.h>
Public Member Functions | |
virtual void | find (const std::vector< const Trk::RIO_OnTrack * > &rios, Trk::SegmentCollection *segColl=nullptr) const =0 |
find segments starting from a list of Trk::RIO_OnTrack objects More... | |
virtual void | find (const std::vector< const Trk::RIO_OnTrack * > &rios1, const std::vector< const Trk::RIO_OnTrack * > &rios2) const =0 |
find segments starting from two lists of Trk::RIO_OnTrack objects in two neighbouring chambers More... | |
virtual void | find (const std::vector< const MdtDriftCircleOnTrack * > &mdts, const std::vector< const MuonClusterOnTrack * > &clusters, Trk::SegmentCollection *segColl=nullptr) const =0 |
find segments starting from a list of MdtDriftCircleOnTrack objects and a list of MuonClusterOnTrack objects More... | |
virtual void | find (const Amg::Vector3D &gpos, const Amg::Vector3D &gdir, const std::vector< const MdtDriftCircleOnTrack * > &mdts, const std::vector< const MuonClusterOnTrack * > &clusters, bool updatePhi=false, Trk::SegmentCollection *segColl=nullptr, double momentum=1e9, double sinAngleCut=0., double beta=1.) const =0 |
seeded segment search starting from a list of MdtDriftCircleOnTrack objects and a list of MuonClusterOnTrack objects More... | |
virtual void | find (const Trk::TrackRoad &road, const std::vector< std::vector< const MdtDriftCircleOnTrack * > > &mdts, const std::vector< std::vector< const MuonClusterOnTrack * > > &clusters, Trk::SegmentCollection *segColl, bool updatePhi=false, double momentum=1e9) const =0 |
seeded segment search starting from a list of MdtDriftCircleOnTrack objects and a list of MuonClusterOnTrack objects More... | |
Static Public Member Functions | |
static const InterfaceID & | interfaceID () |
access to tool interface More... | |
The IMuonSegmentFinder is a pure virtual interface for tools to find segments in the muon spectrometer.
It provides several routines for the segment search. These routines have in common that they take a set of RIO_OnTrack objects as input and return a pointer to a vector of MuonSegment objects. The client calling the IMuonSegmentFinder is responsible for the memory management of the segments and should ensure that they get deleted before the end of the event.
Several interfaces are available, they can be divided into two categories:
It is recommended but not required that users implement all interfaces. Currently the following implementations of the interface exist:
Definition at line 69 of file IMuonSegmentMaker.h.
|
pure virtual |
seeded segment search starting from a list of MdtDriftCircleOnTrack objects and a list of MuonClusterOnTrack objects
gpos | an estimate of the global position of the muon in the chamber |
gdir | an estimate of the global direction of the muon in the chamber |
mdts | a vector of Muon::MdtDriftCircleOnTrack obejcts |
clusters | a vector of Muon::MuonClusterOnTrack obejcts |
updatePhi | a boolean to indicate whether the external prediction should be used to set the \( \phi \)-direction of the segment |
momentum | for low momentum tracks the segment finders may increase the errors on the measurements to allow for multiple scattering |
segColl | a Trk::SegmentCollection to store the segments The ownership of the segments is passed to the SegmentCollection |
|
pure virtual |
find segments starting from a list of MdtDriftCircleOnTrack objects and a list of MuonClusterOnTrack objects
mdts | a vector of Muon::MdtDriftCircleOnTrack obejcts |
clusters | a vector of Muon::MuonClusterOnTrack obejcts |
segColl | a Trk::SegmentCollection to store the segments The ownership of the segments is passed to the SegmentCollection |
|
pure virtual |
find segments starting from a list of Trk::RIO_OnTrack objects
rios | a vector of Trk::RIO_OnTrack objects |
segColl | a Trk::SegmentCollection to store the segments The ownership of the segments is passed to the SegmentCollection |
|
pure virtual |
find segments starting from two lists of Trk::RIO_OnTrack objects in two neighbouring chambers
rios1 | a vector of Trk::RIO_OnTrack objects in the first chamber |
rios2 | a vector of Trk::RIO_OnTrack objects in the second chamber Note: this interface is deprecated! |
|
pure virtual |
seeded segment search starting from a list of MdtDriftCircleOnTrack objects and a list of MuonClusterOnTrack objects
road | an estimate of the position and direction of the muon in the chamber |
mdts | a vector of Muon::MdtDriftCircleOnTrack obejcts |
clusters | a vector of Muon::MuonClusterOnTrack obejcts |
updatePhi | a boolean to indicate whether the external prediction should be used to set the \( \phi \)-direction of the segment |
segColl | if a Trk::SegmentCollection is passed (should be the case if segments will go into SG), store the segments in here directly |
momentum | for low momentum tracks the segment finders may increase the errors on the measurements to allow for multiple scattering |
segColl | a Trk::SegmentCollection to store the segments The ownership of the segments is passed to the SegmentCollection |
|
inlinestatic |
access to tool interface
Definition at line 133 of file IMuonSegmentMaker.h.