File SeedFinder.hpp

namespace Acts

Set the Geometry Context PLUGIN.

Set the Calibration Context PLUGIN.

Convenience functions to ease creation of and Acts::InterpolatedMaterialMap and to avoid code duplication.

Set the Mangetic Field Context PLUGIN.

Convenience functions to ease creation of and Acts::InterpolatedBFieldMap and to avoid code duplication.

Currently implemented for the two most common formats: rz and xyz.

namespace Cuda
template<typename external_spacepoint_t>
class SeedFinder
#include </home/docs/checkouts/>

Public Functions

SeedFinder(SeedfinderConfig<external_spacepoint_t> commonConfig, const SeedFilterConfig &seedFilterConfig, const TripletFilterConfig &tripletFilterConfig, int device = 0, std::unique_ptr<const Logger> logger = getDefaultLogger("Cuda::SeedFinder", Logging::INFO))

Create a CUDA backed seed finder object.

  • commonConfig – Configuration shared with Acts::Seedfinder

  • seedFilterConfig – Configuration shared with Acts::SeedFilter

  • tripletFilterConfig – Configuration for the GPU based triplet filtering

  • device – The identifier of the CUDA device to run on

  • logger – A Logger instance

template<typename sp_range_t>
std::vector<Seed<external_spacepoint_t>> createSeedsForGroup(sp_range_t bottomSPs, sp_range_t middleSPs, sp_range_t topSPs) const

Create all seeds from the space points in the three iterators.

Can be used to parallelize the seed creation

  • bottomSPs – group of space points to be used as innermost SP in a seed.

  • middleSPs – group of space points to be used as middle SP in a seed.

  • topSPs – group of space points to be used as outermost SP in a seed. Ranges must return pointers. Ranges must be separate objects for each parallel call.


vector in which all found seeds for this group are stored.

void setLogger(std::unique_ptr<const Logger> newLogger)

set logging instance


newLogger[in] is the logging istance to be set

Private Functions

inline const Logger &logger() const

Private access to the logger.


a const reference to the logger

Private Members

SeedfinderConfig<external_spacepoint_t> m_commonConfig

Configuration for the seed finder.

int m_device

CUDA device identifier.

std::unique_ptr<const Logger> m_logger

The logger object.

SeedFilterConfig m_seedFilterConfig

Configuration for the (host) seed filter.

TripletFilterConfig m_tripletFilterConfig

Configuration for the (device) triplet filter.