ATLAS Offline Software
Classes | Public Types | Static Public Member Functions | List of all members
ActsTrk::TrackContainer::IndexingPolicy Class Reference

#include <TrackContainer.h>

Collaboration diagram for ActsTrk::TrackContainer::IndexingPolicy:

Classes

struct  ConstTrackProxyPtr
 

Public Types

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 = TrackContainerBase::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 TrackContainerBase &container)
 
static void reverseLookup ([[maybe_unused]] const TrackContainerBase &container, ElementConstReference element, index_type &index)
 

Detailed Description

Definition at line 48 of file TrackContainer.h.

Member Typedef Documentation

◆ ElementConstPointer

Definition at line 86 of file TrackContainer.h.

◆ ElementConstReference

Definition at line 85 of file TrackContainer.h.

◆ ElementType

using ActsTrk::TrackContainer::IndexingPolicy::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

using ActsTrk::TrackContainer::IndexingPolicy::index_type = TrackContainerBase::IndexType

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

Definition at line 89 of file TrackContainer.h.

◆ stored_index_type

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

Definition at line 92 of file TrackContainer.h.

Member Function Documentation

◆ isValid()

static bool ActsTrk::TrackContainer::IndexingPolicy::isValid ( const stored_index_type index)
inlinestatic

Definition at line 94 of file TrackContainer.h.

94  {
95  return index != ConstTrackProxy::kInvalid;
96  }

◆ lookup()

static ElementType ActsTrk::TrackContainer::IndexingPolicy::lookup ( const stored_index_type index,
const TrackContainerBase container 
)
inlinestatic

Definition at line 105 of file TrackContainer.h.

105  {
106  return container.getTrack(index);
107  }

◆ reset()

static void ActsTrk::TrackContainer::IndexingPolicy::reset ( stored_index_type index)
inlinestatic

Definition at line 101 of file TrackContainer.h.

101  {
102  index=ConstTrackProxy::kInvalid;
103  }

◆ reverseLookup()

static void ActsTrk::TrackContainer::IndexingPolicy::reverseLookup ( [[maybe_unused] ] const TrackContainerBase container,
ElementConstReference  element,
index_type index 
)
inlinestatic

Definition at line 110 of file TrackContainer.h.

112  {
113  index= element.has_value() ? element.value().index() : ConstTrackProxy::kInvalid;
114  }

◆ storedToExternal()

static index_type ActsTrk::TrackContainer::IndexingPolicy::storedToExternal ( stored_index_type  index)
inlinestatic

Definition at line 98 of file TrackContainer.h.

98  {
99  return index;
100  }

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