ACTS
Experiment-independent tracking
Loading...
Searching...
No Matches
Acts::TrackContainer< track_container_t, traj_t, holder_t > Class Template Reference

Track container interface class. More...

#include <Acts/EventData/TrackContainer.hpp>

Public Types

using const_iterator
 Type alias for const iterator over tracks in container.
using ConstTrackProxy
 Alias for the const version of a track proxy, with the same backends as this container.
using ConstTrackStateProxy
 Type alias for const track state proxy from multi-trajectory.
using IndexType = TrackIndexType
 The index type of the track container, taken from the container backend.
using iterator
 Type alias for mutable iterator over tracks in container.
using size_type = IndexType
 Type alias for size type of track container.
using TrackContainerBackend = track_container_t
 Type alias for track container backend type.
using TrackProxy
 Alias for the mutable version of a track proxy, with the same backends as this container.
using TrackStateContainerBackend = traj_t
 Type alias for track state container backend type.
using TrackStateProxy = typename MultiTrajectory<traj_t>::TrackStateProxy
 Type alias for mutable track state proxy from multi-trajectory.

Public Member Functions

void clear ()
 Clear the content of the track container.
constexpr IndexType size () const
 Get the size (number of tracks) of the track container.
TrackContainer construction

Constructors for the track container by using a set of backends (track + track state). The container can either take ownership of the backends or just hold references to them. This is driven by the holder_t template parameter, where you can also supply a custom holder type. Template deduction is used to try to guess the correct holder type.

 TrackContainer (holder_t< track_container_t > container, holder_t< traj_t > traj)
 Constructor from a track container backend and a track state container backend.
 TrackContainer (auto &container, auto &traj)
 Constructor from references to a track container backend and to a track state container backend.
 TrackContainer (const auto &container, const auto &traj)
 Constructor from const references to a track container backend and to a track state container backend.
TrackContainer track (proxy) access and manipulation

These methods allow accessing tracks, i.e. adding or retrieving a track proxy that points at a specific track in the container.

ConstTrackProxy getTrack (IndexType itrack) const
 Get a const track proxy for a track index.
TrackProxy getTrack (IndexType itrack)
 Get a mutable track proxy for a track index.
ConstTrackProxy at (IndexType itrack) const
 Get a const track proxy for a track index.
TrackProxy at (IndexType itrack)
 Get a mutable track proxy for a track index.
IndexType addTrack ()
 Add a track to the container.
TrackProxy makeTrack ()
 Add a track to the container and return a track proxy to it This effectively calls addTrack and getTrack.
void removeTrack (IndexType itrack)
 Remove a track at index itrack from the container.
iterator begin ()
 Get a mutable iterator to the first track in the container.
iterator end ()
 Get a past-the-end iterator for this container.
const_iterator begin () const
 Get an const iterator to the first track in the container.
const_iterator end () const
 Get a past-the-end iterator for this container.
TrackContainer column management

TrackContainer can manage a set of common static columns, and dynamic columns that can be added at runtime.

This set of methods allows you to manage the dynamic columns.

template<typename T>
requires (!ReadOnly)
constexpr void addColumn (std::string_view key)
 Add a dynamic column to the track container.
constexpr bool hasColumn (const std::string &key) const
 Check if this track container has a specific dynamic column.
constexpr bool hasColumn (HashedString key) const
 Check if a this track container has a specific dynamic column.
template<typename other_track_container_t>
requires (!ReadOnly)
void ensureDynamicColumns (const other_track_container_t &other)
 Helper function to make this track container match the dynamic columns of another one.
TrackContainer backend access

These methods allow accessing the backend of the track container.

In most cases, this is not necessary for interacting with the container.

auto & container ()
 Get a mutable reference to the track container backend.
const auto & container () const
 Get a const reference to the track container backend.
auto & trackStateContainer ()
 Get a mutable reference to the track state container backend.
auto & trackStateContainerHolder ()
 Retrieve the holder of the track state container.
const auto & trackStateContainer () const
 Get a const reference to the track state container backend.
const auto & trackStateContainerHolder () const
 Retrieve the holder of the track state container.

Static Public Attributes

static constexpr IndexType kInvalid = kTrackIndexInvalid
 Sentinel value that indicates an invalid index.
static constexpr bool ReadOnly
 Indicates if this track container is read-only, or if it can be modified.
static constexpr bool TrackStateReadOnly
 Indicates if the track state container is read-only, or if it can be modified.

Protected Member Functions

template<typename T>
requires (!ReadOnly)
constexpr T & component (HashedString key, IndexType itrack)
 Get mutable reference to track component using runtime key.
template<typename T>
constexpr const T & component (HashedString key, IndexType itrack) const
 Get const reference to track component using runtime key.
template<typename T, HashedString key>
requires (!ReadOnly)
constexpr T & component (IndexType itrack)
 Get mutable reference to track component using compile-time key.
template<typename T, HashedString key>
constexpr const T & component (IndexType itrack) const
 Get const reference to track component using compile-time key.
constexpr TrackProxy::Covariance covariance (IndexType itrack)
 Get mutable covariance matrix for a track.
constexpr ConstTrackProxy::ConstCovariance covariance (IndexType itrack) const
 Get const covariance matrix for a track.
auto forwardTrackStateRange (IndexType itrack)
 Get mutable range for iterating track states in forward order.
auto forwardTrackStateRange (IndexType itrack) const
 Get const range for iterating track states in forward order.
constexpr TrackProxy::Parameters parameters (IndexType itrack)
 Get mutable parameters for a track.
constexpr ConstTrackProxy::ConstParameters parameters (IndexType itrack) const
 Get const parameters for a track.
auto reverseTrackStateRange (IndexType itrack)
 Get mutable range for iterating track states in reverse order.
auto reverseTrackStateRange (IndexType itrack) const
 Get const range for iterating track states in reverse order.

Detailed Description

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
requires HolderFor<holder_t, track_container_t> && HolderFor<holder_t, traj_t>
class Acts::TrackContainer< track_container_t, traj_t, holder_t >

Track container interface class.

This type represents a collections of tracks. It uses a backend to store both the actual tracks and the associated track states.

Template Parameters
track_container_tthe track container backend
traj_tthe track state container backend
holder_townership management class for the backend

Member Typedef Documentation

◆ const_iterator

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
using Acts::TrackContainer< track_container_t, traj_t, holder_t >::const_iterator
Initial value:
detail::ContainerIterator<TrackContainer, ConstTrackProxy, IndexType,
true>
TrackContainer(holder_t< track_container_t > container, holder_t< traj_t > traj)
Constructor from a track container backend and a track state container backend.
Definition TrackContainer.hpp:118
Acts::TrackProxy< track_container_t, traj_t, holder_t, true > ConstTrackProxy
Alias for the const version of a track proxy, with the same backends as this container.
Definition TrackContainer.hpp:69
TrackIndexType IndexType
The index type of the track container, taken from the container backend.
Definition TrackContainer.hpp:57

Type alias for const iterator over tracks in container.

◆ ConstTrackProxy

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
using Acts::TrackContainer< track_container_t, traj_t, holder_t >::ConstTrackProxy
Initial value:
Proxy class representing a single track.
Definition TrackProxy.hpp:53

Alias for the const version of a track proxy, with the same backends as this container.

◆ ConstTrackStateProxy

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
using Acts::TrackContainer< track_container_t, traj_t, holder_t >::ConstTrackStateProxy
Initial value:
Acts::TrackStateProxy< Derived, MeasurementSizeMax, true > ConstTrackStateProxy
Alias for the const version of a track state proxy, with the same backends as this container.
Definition MultiTrajectory.hpp:187

Type alias for const track state proxy from multi-trajectory.

◆ IndexType

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
using Acts::TrackContainer< track_container_t, traj_t, holder_t >::IndexType = TrackIndexType

The index type of the track container, taken from the container backend.

◆ iterator

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
using Acts::TrackContainer< track_container_t, traj_t, holder_t >::iterator
Initial value:
detail::ContainerIterator<TrackContainer, TrackProxy, IndexType, false>

Type alias for mutable iterator over tracks in container.

◆ size_type

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
using Acts::TrackContainer< track_container_t, traj_t, holder_t >::size_type = IndexType

Type alias for size type of track container.

◆ TrackContainerBackend

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
using Acts::TrackContainer< track_container_t, traj_t, holder_t >::TrackContainerBackend = track_container_t

Type alias for track container backend type.

◆ TrackProxy

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
using Acts::TrackContainer< track_container_t, traj_t, holder_t >::TrackProxy
Initial value:

Alias for the mutable version of a track proxy, with the same backends as this container.

◆ TrackStateContainerBackend

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
using Acts::TrackContainer< track_container_t, traj_t, holder_t >::TrackStateContainerBackend = traj_t

Type alias for track state container backend type.

◆ TrackStateProxy

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
using Acts::TrackContainer< track_container_t, traj_t, holder_t >::TrackStateProxy = typename MultiTrajectory<traj_t>::TrackStateProxy

Type alias for mutable track state proxy from multi-trajectory.

Constructor & Destructor Documentation

◆ TrackContainer() [1/3]

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
Acts::TrackContainer< track_container_t, traj_t, holder_t >::TrackContainer ( holder_t< track_container_t > container,
holder_t< traj_t > traj )

Constructor from a track container backend and a track state container backend.

Parameters
containerthe track container backend
trajthe track state container backend

◆ TrackContainer() [2/3]

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
Acts::TrackContainer< track_container_t, traj_t, holder_t >::TrackContainer ( auto & container,
auto & traj )

Constructor from references to a track container backend and to a track state container backend.

Note
The track container will not assume ownership over the backends in this case. You need to ensure suitable lifetime
Parameters
containerthe track container backend
trajthe track state container backend

◆ TrackContainer() [3/3]

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
Acts::TrackContainer< track_container_t, traj_t, holder_t >::TrackContainer ( const auto & container,
const auto & traj )

Constructor from const references to a track container backend and to a track state container backend.

Note
The track container will not assume ownership over the backends in this case. You need to ensure suitable lifetime
Parameters
containerthe track container backend
trajthe track state container backend

Member Function Documentation

◆ addColumn()

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
template<typename T>
requires (!ReadOnly)
void Acts::TrackContainer< track_container_t, traj_t, holder_t >::addColumn ( std::string_view key)
constexpr

Add a dynamic column to the track container.

Note
Only available if the track container is not read-only
Parameters
keythe name of the column to be added

◆ addTrack()

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
IndexType Acts::TrackContainer< track_container_t, traj_t, holder_t >::addTrack ( )

Add a track to the container.

Note this only creates the logical track and allocates memory. You can combine this with getTrack to obtain a track proxy

Note
Only available if the track container is not read-only
Returns
the index to the newly added track

◆ at() [1/2]

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
TrackProxy Acts::TrackContainer< track_container_t, traj_t, holder_t >::at ( IndexType itrack)

Get a mutable track proxy for a track index.

Note
Only available if the track container is not read-only
Parameters
itrackthe track index in the container
Returns
A mutable track proxy for the index

◆ at() [2/2]

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
ConstTrackProxy Acts::TrackContainer< track_container_t, traj_t, holder_t >::at ( IndexType itrack) const

Get a const track proxy for a track index.

Parameters
itrackthe track index in the container
Returns
A const track proxy for the index

◆ begin() [1/2]

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
iterator Acts::TrackContainer< track_container_t, traj_t, holder_t >::begin ( )

Get a mutable iterator to the first track in the container.

Note
Only available if the track container is not read-only
Returns
a mutable iterator to the first track

◆ begin() [2/2]

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
const_iterator Acts::TrackContainer< track_container_t, traj_t, holder_t >::begin ( ) const

Get an const iterator to the first track in the container.

Returns
a const iterator to the first track

◆ clear()

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
void Acts::TrackContainer< track_container_t, traj_t, holder_t >::clear ( )

Clear the content of the track container.

Note
Only available if the track container is not read-only

◆ component() [1/4]

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
template<typename T>
requires (!ReadOnly)
T & Acts::TrackContainer< track_container_t, traj_t, holder_t >::component ( HashedString key,
IndexType itrack )
constexprprotected

Get mutable reference to track component using runtime key.

Template Parameters
TComponent type to retrieve
Parameters
keyHashed string key for the component
itrackTrack index to get component for
Returns
Mutable reference to the component of type T

◆ component() [2/4]

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
template<typename T>
const T & Acts::TrackContainer< track_container_t, traj_t, holder_t >::component ( HashedString key,
IndexType itrack ) const
constexprprotected

Get const reference to track component using runtime key.

Template Parameters
TComponent type to retrieve
Parameters
keyHashed string key for the component
itrackTrack index to get component for
Returns
Const reference to the component of type T

◆ component() [3/4]

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
template<typename T, HashedString key>
requires (!ReadOnly)
T & Acts::TrackContainer< track_container_t, traj_t, holder_t >::component ( IndexType itrack)
constexprprotected

Get mutable reference to track component using compile-time key.

Template Parameters
TComponent type to retrieve
keyHashed string key for the component
Parameters
itrackTrack index to get component for
Returns
Mutable reference to the component of type T

◆ component() [4/4]

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
template<typename T, HashedString key>
const T & Acts::TrackContainer< track_container_t, traj_t, holder_t >::component ( IndexType itrack) const
constexprprotected

Get const reference to track component using compile-time key.

Template Parameters
TComponent type to retrieve
keyHashed string key for the component
Parameters
itrackTrack index to get component for
Returns
Const reference to the component of type T

◆ container() [1/2]

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
auto & Acts::TrackContainer< track_container_t, traj_t, holder_t >::container ( )

Get a mutable reference to the track container backend.

Note
Only available if the track container is not read-only
Returns
a mutable reference to the backend

◆ container() [2/2]

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
const auto & Acts::TrackContainer< track_container_t, traj_t, holder_t >::container ( ) const

Get a const reference to the track container backend.

Returns
a const reference to the backend

◆ covariance() [1/2]

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
TrackProxy::Covariance Acts::TrackContainer< track_container_t, traj_t, holder_t >::covariance ( IndexType itrack)
constexprprotected

Get mutable covariance matrix for a track.

Parameters
itrackTrack index to get covariance for
Returns
Mutable covariance matrix for the track

◆ covariance() [2/2]

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
ConstTrackProxy::ConstCovariance Acts::TrackContainer< track_container_t, traj_t, holder_t >::covariance ( IndexType itrack) const
constexprprotected

Get const covariance matrix for a track.

Parameters
itrackTrack index to get covariance for
Returns
Const covariance matrix for the track

◆ end() [1/2]

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
iterator Acts::TrackContainer< track_container_t, traj_t, holder_t >::end ( )

Get a past-the-end iterator for this container.

Note
Only available if the track container is not read-only
Returns
a past-the-end iterator

◆ end() [2/2]

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
const_iterator Acts::TrackContainer< track_container_t, traj_t, holder_t >::end ( ) const

Get a past-the-end iterator for this container.

Returns
a past-the-end iterator

◆ ensureDynamicColumns()

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
template<typename other_track_container_t>
requires (!ReadOnly)
void Acts::TrackContainer< track_container_t, traj_t, holder_t >::ensureDynamicColumns ( const other_track_container_t & other)

Helper function to make this track container match the dynamic columns of another one.

This will only work if the track container supports this source, and depends on the implementation details of the dynamic columns of the container

Note
Only available if the track container is not read-only
Template Parameters
other_track_container_tType of the other track container
Parameters
otherThe other track container

◆ forwardTrackStateRange() [1/2]

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
auto Acts::TrackContainer< track_container_t, traj_t, holder_t >::forwardTrackStateRange ( IndexType itrack)
protected

Get mutable range for iterating track states in forward order.

Parameters
itrackTrack index to get state range for
Returns
Range object for forward iteration over track states from stem to tip
Exceptions
std::invalid_argumentif track has no stem index

◆ forwardTrackStateRange() [2/2]

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
auto Acts::TrackContainer< track_container_t, traj_t, holder_t >::forwardTrackStateRange ( IndexType itrack) const
protected

Get const range for iterating track states in forward order.

Parameters
itrackTrack index to get state range for
Returns
Const range object for forward iteration over track states from stem to tip
Exceptions
std::invalid_argumentif track has no stem index

◆ getTrack() [1/2]

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
TrackProxy Acts::TrackContainer< track_container_t, traj_t, holder_t >::getTrack ( IndexType itrack)

Get a mutable track proxy for a track index.

Note
Only available if the track container is not read-only
Parameters
itrackthe track index in the container
Returns
A mutable track proxy for the index

◆ getTrack() [2/2]

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
ConstTrackProxy Acts::TrackContainer< track_container_t, traj_t, holder_t >::getTrack ( IndexType itrack) const

Get a const track proxy for a track index.

Parameters
itrackthe track index in the container
Returns
A const track proxy for the index

◆ hasColumn() [1/2]

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
bool Acts::TrackContainer< track_container_t, traj_t, holder_t >::hasColumn ( const std::string & key) const
constexpr

Check if this track container has a specific dynamic column.

Parameters
keythe key to check for
Returns
true if the column exists

◆ hasColumn() [2/2]

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
bool Acts::TrackContainer< track_container_t, traj_t, holder_t >::hasColumn ( HashedString key) const
constexpr

Check if a this track container has a specific dynamic column.

Parameters
keythe key to check for
Returns
true if the column exists

◆ makeTrack()

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
TrackProxy Acts::TrackContainer< track_container_t, traj_t, holder_t >::makeTrack ( )

Add a track to the container and return a track proxy to it This effectively calls addTrack and getTrack.

Note
Only available if the track container is not read-only
Returns
a track proxy to the newly added track

◆ parameters() [1/2]

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
TrackProxy::Parameters Acts::TrackContainer< track_container_t, traj_t, holder_t >::parameters ( IndexType itrack)
constexprprotected

Get mutable parameters for a track.

Parameters
itrackTrack index to get parameters for
Returns
Mutable parameters object for the track

◆ parameters() [2/2]

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
ConstTrackProxy::ConstParameters Acts::TrackContainer< track_container_t, traj_t, holder_t >::parameters ( IndexType itrack) const
constexprprotected

Get const parameters for a track.

Parameters
itrackTrack index to get parameters for
Returns
Const parameters object for the track

◆ removeTrack()

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
void Acts::TrackContainer< track_container_t, traj_t, holder_t >::removeTrack ( IndexType itrack)

Remove a track at index itrack from the container.

Note
Only available if the track container is not read-only
This invalidates track proxies that point to tracks with larger indices than itrack!
Parameters
itrackThe index of the track to remove

◆ reverseTrackStateRange() [1/2]

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
auto Acts::TrackContainer< track_container_t, traj_t, holder_t >::reverseTrackStateRange ( IndexType itrack)
protected

Get mutable range for iterating track states in reverse order.

Parameters
itrackTrack index to get state range for
Returns
Range object for reverse iteration over track states from tip to stem

◆ reverseTrackStateRange() [2/2]

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
auto Acts::TrackContainer< track_container_t, traj_t, holder_t >::reverseTrackStateRange ( IndexType itrack) const
protected

Get const range for iterating track states in reverse order.

Parameters
itrackTrack index to get state range for
Returns
Const range object for reverse iteration over track states from tip to stem

◆ size()

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
IndexType Acts::TrackContainer< track_container_t, traj_t, holder_t >::size ( ) const
constexpr

Get the size (number of tracks) of the track container.

Returns
the sixe

◆ trackStateContainer() [1/2]

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
auto & Acts::TrackContainer< track_container_t, traj_t, holder_t >::trackStateContainer ( )

Get a mutable reference to the track state container backend.

Note
Only available if the track container is not read-only
Returns
a mutable reference to the backend

◆ trackStateContainer() [2/2]

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
const auto & Acts::TrackContainer< track_container_t, traj_t, holder_t >::trackStateContainer ( ) const

Get a const reference to the track state container backend.

Returns
a const reference to the backend

◆ trackStateContainerHolder() [1/2]

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
auto & Acts::TrackContainer< track_container_t, traj_t, holder_t >::trackStateContainerHolder ( )

Retrieve the holder of the track state container.

Returns
The track state container including it's holder
Note
Only available if the track container is not read-only

◆ trackStateContainerHolder() [2/2]

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
const auto & Acts::TrackContainer< track_container_t, traj_t, holder_t >::trackStateContainerHolder ( ) const

Retrieve the holder of the track state container.

Returns
The track state container including it's holder

Member Data Documentation

◆ kInvalid

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
IndexType Acts::TrackContainer< track_container_t, traj_t, holder_t >::kInvalid = kTrackIndexInvalid
staticconstexpr

Sentinel value that indicates an invalid index.

◆ ReadOnly

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
bool Acts::TrackContainer< track_container_t, traj_t, holder_t >::ReadOnly
staticconstexpr
Initial value:

Indicates if this track container is read-only, or if it can be modified.

◆ TrackStateReadOnly

template<TrackContainerBackend track_container_t, CommonMultiTrajectoryBackend traj_t, template< typename > class holder_t = RefHolder>
bool Acts::TrackContainer< track_container_t, traj_t, holder_t >::TrackStateReadOnly
staticconstexpr
Initial value:

Indicates if the track state container is read-only, or if it can be modified.