5#ifndef L0MuonMDTTools_COMPACTSEGMENTFINDERTOOL_H
6#define L0MuonMDTTools_COMPACTSEGMENTFINDERTOOL_H
37 using base_class::base_class;
52 virtual StatusCode
findSegments(
const std::vector<const xAOD::MdtDriftCircle*>& driftCircles,
54 std::vector<L0MDT::Segment>& segments)
const override;
60 "Maximum allowed distance in intercept space when attaching a hit to an existing cluster"};
64 "Maximum number of temporary clusters allowed during clustering"};
68 "Enable debug printout of cluster content and selection"};
133 virtual StatusCode
buildHitInfo(
const std::vector<const xAOD::MdtDriftCircle*>& driftCircles,
135 std::vector<HitInfo>& hitInfos)
const;
144 void clusterHits(
const std::vector<HitInfo>& hitInfos,
145 const std::vector<std::size_t>& orderedIndices,
146 std::vector<Cluster>& clusters)
const;
150 this,
"MuonIdHelperSvc",
"Muon::MuonIdHelperSvc/MuonIdHelperSvc"};
159 std::optional<Cluster>
chooseBestCluster(
const std::vector<Cluster>& clusters,
float b)
const;
171 FitResult
fitLine(
const std::vector<float>& zVals,
172 const std::vector<float>& rVals,
173 float sigma = 1.f / 8.f)
const;
Compact Segment Finder algorithm overview.
MdtDriftCircle_v1 MdtDriftCircle