12#ifndef ALICEO2_ITSMFT_TRACKING_ITERATIONCONFIGURATION_H_
13#define ALICEO2_ITSMFT_TRACKING_ITERATIONCONFIGURATION_H_
35 return std::views::iota(uint16_t{0},
static_cast<uint16_t
>(
topology.
edges.size())) |
36 std::views::transform([](uint16_t
id) {
return EdgeId{
id}; });
40 return std::views::iota(uint16_t{0},
static_cast<uint16_t
>(
topology.
paths.size())) |
41 std::views::transform([](uint16_t
id) {
return CellPathId{
id}; });
51 return id.isValid() &&
id.value() <
topology.
edges.size() ? std::optional<uint16_t>{
id.value()} : std::nullopt;
56 return id.isValid() &&
id.value() <
topology.
paths.size() ? std::optional<uint16_t>{
id.value()} : std::nullopt;
Shared CA tracking configuration for ITS and MFT.
uint32_t trackClusterIndicesSize noexcept
TrackingKernelParameters kernelParameters
std::optional< uint16_t > getCellSlot(CellPathId id) const noexcept
TraversalTopology topology
std::optional< uint16_t > getEdgeSlot(EdgeId id) const noexcept
IterationParameters parameters
TraversalTopologyView getTopologyView(SurfaceCatalogView catalog) const noexcept
auto edgeIds() const noexcept
auto cellIds() const noexcept
bool hasLayer(LayerId id) const noexcept
std::vector< Edge > edges
TraversalTopologyView getView(SurfaceCatalogView catalog) const noexcept
std::vector< CellPath > paths