 |
ATLAS Offline Software
|
Go to the documentation of this file.
4 #ifndef MUONTRACKFINDINGTOOLS_MSTRACKSEEDER_H
5 #define MUONTRACKFINDINGTOOLS_MSTRACKSEEDER_H
9 #include "GaudiKernel/SystemOfUnits.h"
10 #include "Acts/Utilities/KDTree.hpp"
46 using SearchTree_t = Acts::KDTree<3, const xAOD::MuonSegment*, double, std::array, 6>;
80 std::unique_ptr<MsTrackSeedContainer>
findTrackSeeds(
const EventContext& ctx,
std::unique_ptr< MsTrackSeedContainer > findTrackSeeds(const EventContext &ctx, const xAOD::MuonSegmentContainer &segments) const
Constructs the MS track seeds from the segment container.
double barrelRadius
The radius of the barrel cylinder to seed.
bool withinBounds(const Amg::Vector2D &projPos, const Location loc) const
Returns whether the expression on the cylinder is within the surface bounds.
double barrelLength
The maximum length of the barrel cylinder, if not capped by the placement of the endcap discs.
Eigen::Matrix< double, 2, 1 > Vector2D
Acts::KDTree< 3, const xAOD::MuonSegment *, double, std::array, 6 > SearchTree_t
Definition of the search tree class.
Class describing a MuonSegment.
void appendSegment(const xAOD::MuonSegment *segment, const Location loc, TreeRawVec_t &outContainer) const
Append the to the raw data container.
@ eSector
Sector of the associated spectrometer sector.
double endcapDiscZ
Position of the endcap discs.
SeedCoords
Abrivation of the seed coordinates.
Location
Enum defining whether the seed is made in the endcap / barrel.
SearchTree_t constructTree(const xAOD::MuonSegmentContainer &segments) const
Construct a complete search tree from a MuonSegment container.
SearchTree_t::vector_t TreeRawVec_t
Abbrivation of the KDTree raw data vector.
Class to provide easy MsgStream access and capabilities.
MsTrackSeed::Location Location
Enum toggling whether the segment is in the endcap or barrel.
@ ePosOnCylinder
Extrapolation position along the cylinder surface.
double endcapDiscRadius
Radius of the endcap discs.
MsTrackSeeder::SearchTree_t SearchTree_t
double seedHalfLength
Maximum separation of point on the cylinder to be picked up onto a seed.
Helper class to group muon sgements that may belong to a muon trajectory.
This header ties the generic definitions in this package.
const ISegmentSelectionTool * selector
Pointer to the segement selection tool which compares two segments for their compatibilitiy.
std::vector< MsTrackSeed > MsTrackSeedContainer
std::unique_ptr< MsTrackSeedContainer > resolveOverlaps(MsTrackSeedContainer &&unresolved) const
Removes exact duplciates or partial subsets of the MsTrackSeeds.
Amg::Vector2D expressOnCylinder(const xAOD::MuonSegment &segment, const Location loc) const
Expresses the segment on the cylinder surface.
@ eDetSection
Encode the seed location (-1,1 -> endcaps, 0 -> barrel
Muon::NSW_PadTriggerSegment segment(const NSWL1::PadTrigger &data)
MsTrackSeeder(const std::string &msgName, Config &&cfg)
Standard constructor.