ATLAS Offline Software
Classes | Public Types | Static Public Member Functions | List of all members
ActsTrk::IndexingPolicy< track_container_t > Class Template Reference

#include <TrackContainer.h>

Collaboration diagram for ActsTrk::IndexingPolicy< track_container_t >:

Classes

struct  ConstTrackProxyPtr
 

Public Types

using ConstTrackProxy = typename track_container_t::ConstTrackProxy
 The type of the const track proxy. More...
 
using ElementType = std::optional< ConstTrackProxy >
 The type we get when we dereference a link, and derived types. More...
 
using ElementConstReference = std::optional< ConstTrackProxy >
 
using ElementConstPointer = ConstTrackProxyPtr
 
using index_type = track_container_t::IndexType
 The type of an index, as provided to or returned from a link. More...
 
using stored_index_type = index_type
 The type of an index, as stored internally within a link. More...
 

Static Public Member Functions

static bool isValid (const stored_index_type &index)
 
static index_type storedToExternal (stored_index_type index)
 
static void reset (stored_index_type &index)
 
static ElementType lookup (const stored_index_type &index, const track_container_t &container)
 
static void reverseLookup ([[maybe_unused]] const track_container_t &container, ElementConstReference element, index_type &index)
 

Detailed Description

template<typename track_container_t>
class ActsTrk::IndexingPolicy< track_container_t >

Definition at line 47 of file TrackContainer.h.

Member Typedef Documentation

◆ ConstTrackProxy

template<typename track_container_t >
using ActsTrk::IndexingPolicy< track_container_t >::ConstTrackProxy = typename track_container_t::ConstTrackProxy

The type of the const track proxy.

Definition at line 50 of file TrackContainer.h.

◆ ElementConstPointer

template<typename track_container_t >
using ActsTrk::IndexingPolicy< track_container_t >::ElementConstPointer = ConstTrackProxyPtr

Definition at line 88 of file TrackContainer.h.

◆ ElementConstReference

template<typename track_container_t >
using ActsTrk::IndexingPolicy< track_container_t >::ElementConstReference = std::optional<ConstTrackProxy>

Definition at line 87 of file TrackContainer.h.

◆ ElementType

template<typename track_container_t >
using ActsTrk::IndexingPolicy< track_container_t >::ElementType = std::optional<ConstTrackProxy>

The type we get when we dereference a link, and derived types.

Definition at line 52 of file TrackContainer.h.

◆ index_type

template<typename track_container_t >
using ActsTrk::IndexingPolicy< track_container_t >::index_type = track_container_t::IndexType

The type of an index, as provided to or returned from a link.

Definition at line 91 of file TrackContainer.h.

◆ stored_index_type

template<typename track_container_t >
using ActsTrk::IndexingPolicy< track_container_t >::stored_index_type = index_type

The type of an index, as stored internally within a link.

Definition at line 94 of file TrackContainer.h.

Member Function Documentation

◆ isValid()

template<typename track_container_t >
static bool ActsTrk::IndexingPolicy< track_container_t >::isValid ( const stored_index_type index)
inlinestatic

Definition at line 96 of file TrackContainer.h.

96  {
97  return index != ConstTrackProxy::kInvalid;
98  }

◆ lookup()

template<typename track_container_t >
static ElementType ActsTrk::IndexingPolicy< track_container_t >::lookup ( const stored_index_type index,
const track_container_t &  container 
)
inlinestatic

Definition at line 109 of file TrackContainer.h.

109  {
110  return container.getTrack(index);
111  }

◆ reset()

template<typename track_container_t >
static void ActsTrk::IndexingPolicy< track_container_t >::reset ( stored_index_type index)
inlinestatic

Definition at line 104 of file TrackContainer.h.

104  {
105  index=ConstTrackProxy::kInvalid;
106  }

◆ reverseLookup()

template<typename track_container_t >
static void ActsTrk::IndexingPolicy< track_container_t >::reverseLookup ( [[maybe_unused] ] const track_container_t &  container,
ElementConstReference  element,
index_type index 
)
inlinestatic

Definition at line 114 of file TrackContainer.h.

116  {
117  index = element.has_value() ? element.value().index() : ConstTrackProxy::kInvalid;
118  }

◆ storedToExternal()

template<typename track_container_t >
static index_type ActsTrk::IndexingPolicy< track_container_t >::storedToExternal ( stored_index_type  index)
inlinestatic

Definition at line 100 of file TrackContainer.h.

100  {
101  return index;
102  }

The documentation for this class was generated from the following file:
index
Definition: index.py:1
DeMoScan.index
string index
Definition: DeMoScan.py:362