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 49 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 52 of file TrackContainer.h.

◆ ElementConstPointer

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

Definition at line 90 of file TrackContainer.h.

◆ ElementConstReference

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

Definition at line 89 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 54 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 93 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 96 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 98 of file TrackContainer.h.

98  {
99  return index != ConstTrackProxy::kInvalid;
100  }

◆ 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 111 of file TrackContainer.h.

111  {
112  return container.getTrack(index);
113  }

◆ reset()

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

Definition at line 106 of file TrackContainer.h.

106  {
107  index=ConstTrackProxy::kInvalid;
108  }

◆ 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 116 of file TrackContainer.h.

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

◆ storedToExternal()

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

Definition at line 102 of file TrackContainer.h.

102  {
103  return index;
104  }

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