ACTS
Experiment-independent tracking
Loading...
Searching...
No Matches
Acts::BroadTripletSeedFilter Class Referencefinal

Triplet seed filter used in the triplet seeding algorithm. More...

#include <Acts/Seeding2/BroadTripletSeedFilter.hpp>

Inheritance diagram for Acts::BroadTripletSeedFilter:
[legend]
Collaboration diagram for Acts::BroadTripletSeedFilter:
[legend]

Classes

struct  Cache
 Cache for intermediate results to avoid reallocations. More...
struct  Config
 Structure that holds configuration parameters for the seed filter algorithm. More...
struct  State
 State of the filter that is communicated between different stages. More...

Public Member Functions

 BroadTripletSeedFilter (const Config &config, State &state, Cache &cache, const Logger &logger)
void filterTripletsMiddleFixed (const SpacePointContainer2 &spacePoints, SeedContainer2 &outputCollection) const override
 Create final seeds for all candidates with the same middle space point.
void filterTripletTopCandidates (const SpacePointContainer2 &spacePoints, const ConstSpacePointProxy2 &spM, const DoubletsForMiddleSp::Proxy &bottomLink, const TripletTopCandidates &tripletTopCandidates) const override
 Create seed candidates with fixed bottom and middle space points and all compatible top space points.
bool sufficientTopDoublets (const SpacePointContainer2 &spacePoints, const ConstSpacePointProxy2 &spM, const DoubletsForMiddleSp &topDoublets) const override
Public Member Functions inherited from Acts::ITripletSeedFilter
virtual ~ITripletSeedFilter ()=default

Detailed Description

Triplet seed filter used in the triplet seeding algorithm.

Note that this algorithm is designed and tuned for cylindrical detectors and uses R-Z coordinates for the space points.

Constructor & Destructor Documentation

◆ BroadTripletSeedFilter()

Acts::BroadTripletSeedFilter::BroadTripletSeedFilter ( const Config & config,
State & state,
Cache & cache,
const Logger & logger )
explicit
Parameters
configConfiguration parameters for the seed filter
stateMutable state that is used to store intermediate results
cacheCache object to store intermediate results
loggerLogger for debugging and information messages
Note
objects from this class depend on a per-event state and cache and should not be used across events.

Member Function Documentation

◆ filterTripletsMiddleFixed()

void Acts::BroadTripletSeedFilter::filterTripletsMiddleFixed ( const SpacePointContainer2 & spacePoints,
SeedContainer2 & outputCollection ) const
overridevirtual

Create final seeds for all candidates with the same middle space point.

Parameters
spacePointsContainer with all space points
outputCollectionOutput container for the seeds

Implements Acts::ITripletSeedFilter.

◆ filterTripletTopCandidates()

void Acts::BroadTripletSeedFilter::filterTripletTopCandidates ( const SpacePointContainer2 & spacePoints,
const ConstSpacePointProxy2 & spM,
const DoubletsForMiddleSp::Proxy & bottomLink,
const TripletTopCandidates & tripletTopCandidates ) const
overridevirtual

Create seed candidates with fixed bottom and middle space points and all compatible top space points.

Parameters
spacePointsContainer with all space points
spMFixed middle space point
bottomLinkLink to the bottom doublet space point
tripletTopCandidatesCollection of triplet top candidates

Implements Acts::ITripletSeedFilter.

◆ sufficientTopDoublets()

bool Acts::BroadTripletSeedFilter::sufficientTopDoublets ( const SpacePointContainer2 & spacePoints,
const ConstSpacePointProxy2 & spM,
const DoubletsForMiddleSp & topDoublets ) const
overridevirtual
Parameters
spacePointsContainer of space points
spMMiddle space point proxy
topDoubletsCollection of top doublets for the middle space point
Returns
true if sufficient top doublets are found

Implements Acts::ITripletSeedFilter.