ACTS
Experiment-independent tracking
Loading...
Searching...
No Matches
Acts::SpacePointProxy2< read_only > Class Template Reference

A proxy class for accessing individual space points. More...

#include <Acts/EventData/SpacePointProxy2.hpp>

Inheritance diagram for Acts::SpacePointProxy2< read_only >:
[legend]

Public Types

using Container = const_if_t<ReadOnly, SpacePointContainer2>
 Type alias for container type (const if read-only).
using Index = SpacePointIndex2
 Type alias for space point index type.

Public Member Functions

 SpacePointProxy2 (const SpacePointProxy2 &other) noexcept=default
 Copy construct a space point proxy.
 SpacePointProxy2 (const SpacePointProxy2< false > &other) noexcept
 Copy construct a mutable space point proxy.
 SpacePointProxy2 (Container &container, Index index) noexcept
 Constructs a space point proxy for the given container and index.
SpacePointProxy2< true > asConst () const noexcept
 Returns a const proxy of the space point.
void assignSourceLinks (std::span< const SourceLink > sourceLinks) const
 Assigns source links to the space point.
const std::array< float, 3 > & bottomStripVector () const noexcept
 Const access to the bottom strip vector of the space point.
std::array< float, 3 > & bottomStripVector () const noexcept
 Mutable access to the bottom strip vector of the space point.
const SpacePointContainer2container () const noexcept
 Gets the container holding the space point.
SpacePointContainer2container () const noexcept
 Gets the container holding the space point.
SpacePointIndex2 copyFromIndex () const noexcept
 Const access to the copy from index of the space point.
SpacePointIndex2copyFromIndex () const noexcept
 Mutable access to the copy from index of the space point.
template<typename T>
const T & extra (const ConstSpacePointColumnProxy< T > &column) const noexcept
 Const access to an extra column of data for the space point.
template<typename T>
T & extra (MutableSpacePointColumnProxy< T > &column) const noexcept
 Mutable access to an extra column of data for the space point.
Index index () const noexcept
 Gets the index of the space point in the container.
float phi () const noexcept
 Const access to the phi coordinate of the space point.
float & phi () const noexcept
 Mutable access to the phi coordinate of the space point.
float r () const noexcept
 Const access to the r coordinate of the space point.
float & r () const noexcept
 Mutable access to the r coordinate of the space point.
SpacePointIndex2 resolvedIndex () const noexcept
 Returns the resolved index of the space point.
std::span< const SourceLinksourceLinks () const noexcept
 Const access to the source links of the space point.
std::span< SourceLinksourceLinks () const noexcept
 Mutable access to the source links of the space point.
const std::array< float, 3 > & stripCenterDistance () const noexcept
 Const access to the strip center distance of the space point.
std::array< float, 3 > & stripCenterDistance () const noexcept
 Mutable access to the strip center distance of the space point.
float time () const noexcept
 Const access to the time information of the space point.
float & time () const noexcept
 Mutable access to the time information of the space point.
const std::array< float, 3 > & topStripCenter () const noexcept
 Const access to the top strip center of the space point.
std::array< float, 3 > & topStripCenter () const noexcept
 Mutable access to the top strip center of the space point.
const std::array< float, 3 > & topStripVector () const noexcept
 Const access to the top strip vector of the space point.
std::array< float, 3 > & topStripVector () const noexcept
 Mutable access to the top strip vector of the space point.
float varianceR () const noexcept
 Const access to the variance in R direction of the space point.
float & varianceR () const noexcept
 Mutable access to the variance in R direction of the space point.
float varianceZ () const noexcept
 Const access to the variance in Z direction of the space point.
float & varianceZ () const noexcept
 Mutable access to the variance in Z direction of the space point.
const std::array< float, 2 > & varianceZR () const noexcept
 Get const reference to ZR coordinate variances.
std::array< float, 2 > & varianceZR () const noexcept
 Get mutable reference to ZR coordinate variances.
float x () const noexcept
 Const access to the x coordinate of the space point.
float & x () const noexcept
 Mutable access to the x coordinate of the space point.
const std::array< float, 2 > & xy () const noexcept
 Get const reference to XY coordinates of the space point.
std::array< float, 2 > & xy () const noexcept
 Get mutable reference to XY coordinates of the space point.
const std::array< float, 4 > & xyzr () const noexcept
 Get const reference to XYZR coordinates of the space point.
std::array< float, 4 > & xyzr () const noexcept
 Get mutable reference to XYZR coordinates of the space point.
float y () const noexcept
 Const access to the y coordinate of the space point.
float & y () const noexcept
 Mutable access to the y coordinate of the space point.
float z () const noexcept
 Const access to the z coordinate of the space point.
float & z () const noexcept
 Mutable access to the z coordinate of the space point.
const std::array< float, 2 > & zr () const noexcept
 Get const reference to ZR coordinates of the space point.
std::array< float, 2 > & zr () const noexcept
 Get mutable reference to ZR coordinates of the space point.

Static Public Attributes

static constexpr bool ReadOnly = read_only
 Indicates whether this space point proxy is read-only or data can be modified.

Detailed Description

template<bool read_only>
class Acts::SpacePointProxy2< read_only >

A proxy class for accessing individual space points.

Member Typedef Documentation

◆ Container

template<bool read_only>
using Acts::SpacePointProxy2< read_only >::Container = const_if_t<ReadOnly, SpacePointContainer2>

Type alias for container type (const if read-only).

◆ Index

template<bool read_only>
using Acts::SpacePointProxy2< read_only >::Index = SpacePointIndex2

Type alias for space point index type.

Constructor & Destructor Documentation

◆ SpacePointProxy2() [1/3]

template<bool read_only>
Acts::SpacePointProxy2< read_only >::SpacePointProxy2 ( Container & container,
Index index )
noexcept

Constructs a space point proxy for the given container and index.

Parameters
containerThe container holding the space point.
indexThe index of the space point in the container.

◆ SpacePointProxy2() [2/3]

template<bool read_only>
Acts::SpacePointProxy2< read_only >::SpacePointProxy2 ( const SpacePointProxy2< read_only > & other)
defaultnoexcept

Copy construct a space point proxy.

Parameters
otherThe space point proxy to copy.

◆ SpacePointProxy2() [3/3]

template<bool read_only>
Acts::SpacePointProxy2< read_only >::SpacePointProxy2 ( const SpacePointProxy2< false > & other)
explicitnoexcept

Copy construct a mutable space point proxy.

Parameters
otherThe mutable space point proxy to copy.

Member Function Documentation

◆ asConst()

template<bool read_only>
SpacePointProxy2< true > Acts::SpacePointProxy2< read_only >::asConst ( ) const
noexcept

Returns a const proxy of the space point.

Returns
A const proxy of the space point.

◆ assignSourceLinks()

template<bool read_only>
void Acts::SpacePointProxy2< read_only >::assignSourceLinks ( std::span< const SourceLink > sourceLinks) const

Assigns source links to the space point.

Parameters
sourceLinksA span of source links to assign to the space point.
Exceptions
std::out_of_rangeif the index is out of range.
std::logic_errorif no source links column is available.
std::logic_errorif source links are already assigned to the space point.

◆ bottomStripVector() [1/2]

template<bool read_only>
const std::array< float, 3 > & Acts::SpacePointProxy2< read_only >::bottomStripVector ( ) const
noexcept

Const access to the bottom strip vector of the space point.

Returns
A const reference to the bottom strip vector of the space point.

◆ bottomStripVector() [2/2]

template<bool read_only>
std::array< float, 3 > & Acts::SpacePointProxy2< read_only >::bottomStripVector ( ) const
noexcept

Mutable access to the bottom strip vector of the space point.

Returns
A mutable reference to the bottom strip vector of the space point.

◆ container() [1/2]

template<bool read_only>
const SpacePointContainer2 & Acts::SpacePointProxy2< read_only >::container ( ) const
noexcept

Gets the container holding the space point.

Returns
A const reference to the container holding the space point.

◆ container() [2/2]

template<bool read_only>
SpacePointContainer2 & Acts::SpacePointProxy2< read_only >::container ( ) const
noexcept

Gets the container holding the space point.

Returns
A reference to the container holding the space point.

◆ copyFromIndex() [1/2]

template<bool read_only>
SpacePointIndex2 Acts::SpacePointProxy2< read_only >::copyFromIndex ( ) const
noexcept

Const access to the copy from index of the space point.

Returns
A const reference to the copy from index of the space point.

◆ copyFromIndex() [2/2]

template<bool read_only>
SpacePointIndex2 & Acts::SpacePointProxy2< read_only >::copyFromIndex ( ) const
noexcept

Mutable access to the copy from index of the space point.

Returns
A mutable reference to the copy from index of the space point.

◆ extra() [1/2]

template<bool read_only>
template<typename T>
const T & Acts::SpacePointProxy2< read_only >::extra ( const ConstSpacePointColumnProxy< T > & column) const
noexcept

Const access to an extra column of data for the space point.

Parameters
columnThe extra column proxy to access.
Returns
A const reference to the value in the extra column for the space point.

◆ extra() [2/2]

template<bool read_only>
template<typename T>
T & Acts::SpacePointProxy2< read_only >::extra ( MutableSpacePointColumnProxy< T > & column) const
noexcept

Mutable access to an extra column of data for the space point.

Parameters
columnThe extra column proxy to access.
Returns
A mutable reference to the value in the extra column for the space point.

◆ index()

template<bool read_only>
Index Acts::SpacePointProxy2< read_only >::index ( ) const
noexcept

Gets the index of the space point in the container.

Returns
The index of the space point in the container.

◆ phi() [1/2]

template<bool read_only>
float Acts::SpacePointProxy2< read_only >::phi ( ) const
noexcept

Const access to the phi coordinate of the space point.

Returns
The phi coordinate of the space point.

◆ phi() [2/2]

template<bool read_only>
float & Acts::SpacePointProxy2< read_only >::phi ( ) const
noexcept

Mutable access to the phi coordinate of the space point.

Returns
A mutable reference to the phi coordinate of the space point.

◆ r() [1/2]

template<bool read_only>
float Acts::SpacePointProxy2< read_only >::r ( ) const
noexcept

Const access to the r coordinate of the space point.

Returns
The r coordinate of the space point.

◆ r() [2/2]

template<bool read_only>
float & Acts::SpacePointProxy2< read_only >::r ( ) const
noexcept

Mutable access to the r coordinate of the space point.

Returns
A mutable reference to the r coordinate of the space point.

◆ resolvedIndex()

template<bool read_only>
SpacePointIndex2 Acts::SpacePointProxy2< read_only >::resolvedIndex ( ) const
noexcept

Returns the resolved index of the space point.

This resolves the index if the space point was copied from another index.

Returns
The resolved index of the space point.

◆ sourceLinks() [1/2]

template<bool read_only>
std::span< const SourceLink > Acts::SpacePointProxy2< read_only >::sourceLinks ( ) const
noexcept

Const access to the source links of the space point.

Returns
A const span of source links associated with the space point.

◆ sourceLinks() [2/2]

template<bool read_only>
std::span< SourceLink > Acts::SpacePointProxy2< read_only >::sourceLinks ( ) const
noexcept

Mutable access to the source links of the space point.

Returns
A mutable span of source links associated with the space point.

◆ stripCenterDistance() [1/2]

template<bool read_only>
const std::array< float, 3 > & Acts::SpacePointProxy2< read_only >::stripCenterDistance ( ) const
noexcept

Const access to the strip center distance of the space point.

Returns
A const reference to the strip center distance of the space point.

◆ stripCenterDistance() [2/2]

template<bool read_only>
std::array< float, 3 > & Acts::SpacePointProxy2< read_only >::stripCenterDistance ( ) const
noexcept

Mutable access to the strip center distance of the space point.

Returns
A mutable reference to the strip center distance of the space point.

◆ time() [1/2]

template<bool read_only>
float Acts::SpacePointProxy2< read_only >::time ( ) const
noexcept

Const access to the time information of the space point.

Returns
An optional containing the time information of the space point, or

◆ time() [2/2]

template<bool read_only>
float & Acts::SpacePointProxy2< read_only >::time ( ) const
noexcept

Mutable access to the time information of the space point.

Returns
A mutable reference to the time information of the space point.

◆ topStripCenter() [1/2]

template<bool read_only>
const std::array< float, 3 > & Acts::SpacePointProxy2< read_only >::topStripCenter ( ) const
noexcept

Const access to the top strip center of the space point.

Returns
A const reference to the top strip center of the space point.

◆ topStripCenter() [2/2]

template<bool read_only>
std::array< float, 3 > & Acts::SpacePointProxy2< read_only >::topStripCenter ( ) const
noexcept

Mutable access to the top strip center of the space point.

Returns
A mutable reference to the top strip center of the space point.

◆ topStripVector() [1/2]

template<bool read_only>
const std::array< float, 3 > & Acts::SpacePointProxy2< read_only >::topStripVector ( ) const
noexcept

Const access to the top strip vector of the space point.

Returns
A const reference to the top strip vector of the space point.

◆ topStripVector() [2/2]

template<bool read_only>
std::array< float, 3 > & Acts::SpacePointProxy2< read_only >::topStripVector ( ) const
noexcept

Mutable access to the top strip vector of the space point.

Returns
A mutable reference to the top strip vector of the space point.

◆ varianceR() [1/2]

template<bool read_only>
float Acts::SpacePointProxy2< read_only >::varianceR ( ) const
noexcept

Const access to the variance in R direction of the space point.

Returns
The variance in R direction of the space point.

◆ varianceR() [2/2]

template<bool read_only>
float & Acts::SpacePointProxy2< read_only >::varianceR ( ) const
noexcept

Mutable access to the variance in R direction of the space point.

Returns
A mutable reference to the variance in R direction of the space point.

◆ varianceZ() [1/2]

template<bool read_only>
float Acts::SpacePointProxy2< read_only >::varianceZ ( ) const
noexcept

Const access to the variance in Z direction of the space point.

Returns
The variance in Z direction of the space point.

◆ varianceZ() [2/2]

template<bool read_only>
float & Acts::SpacePointProxy2< read_only >::varianceZ ( ) const
noexcept

Mutable access to the variance in Z direction of the space point.

Returns
A mutable reference to the variance in Z direction of the space point.

◆ varianceZR() [1/2]

template<bool read_only>
const std::array< float, 2 > & Acts::SpacePointProxy2< read_only >::varianceZR ( ) const
noexcept

Get const reference to ZR coordinate variances.

Returns
Const reference to array containing [var_z, var_r] variances

◆ varianceZR() [2/2]

template<bool read_only>
std::array< float, 2 > & Acts::SpacePointProxy2< read_only >::varianceZR ( ) const
noexcept

Get mutable reference to ZR coordinate variances.

Returns
Mutable reference to array containing [var_z, var_r] variances

◆ x() [1/2]

template<bool read_only>
float Acts::SpacePointProxy2< read_only >::x ( ) const
noexcept

Const access to the x coordinate of the space point.

Returns
The x coordinate of the space point.

◆ x() [2/2]

template<bool read_only>
float & Acts::SpacePointProxy2< read_only >::x ( ) const
noexcept

Mutable access to the x coordinate of the space point.

Returns
A mutable reference to the x coordinate of the space point.

◆ xy() [1/2]

template<bool read_only>
const std::array< float, 2 > & Acts::SpacePointProxy2< read_only >::xy ( ) const
noexcept

Get const reference to XY coordinates of the space point.

Returns
Const reference to array containing [x, y] coordinates

◆ xy() [2/2]

template<bool read_only>
std::array< float, 2 > & Acts::SpacePointProxy2< read_only >::xy ( ) const
noexcept

Get mutable reference to XY coordinates of the space point.

Returns
Mutable reference to array containing [x, y] coordinates

◆ xyzr() [1/2]

template<bool read_only>
const std::array< float, 4 > & Acts::SpacePointProxy2< read_only >::xyzr ( ) const
noexcept

Get const reference to XYZR coordinates of the space point.

Returns
Const reference to array containing [x, y, z, r] coordinates

◆ xyzr() [2/2]

template<bool read_only>
std::array< float, 4 > & Acts::SpacePointProxy2< read_only >::xyzr ( ) const
noexcept

Get mutable reference to XYZR coordinates of the space point.

Returns
Mutable reference to array containing [x, y, z, r] coordinates

◆ y() [1/2]

template<bool read_only>
float Acts::SpacePointProxy2< read_only >::y ( ) const
noexcept

Const access to the y coordinate of the space point.

Returns
The y coordinate of the space point.

◆ y() [2/2]

template<bool read_only>
float & Acts::SpacePointProxy2< read_only >::y ( ) const
noexcept

Mutable access to the y coordinate of the space point.

Returns
A mutable reference to the y coordinate of the space point.

◆ z() [1/2]

template<bool read_only>
float Acts::SpacePointProxy2< read_only >::z ( ) const
noexcept

Const access to the z coordinate of the space point.

Returns
The z coordinate of the space point.

◆ z() [2/2]

template<bool read_only>
float & Acts::SpacePointProxy2< read_only >::z ( ) const
noexcept

Mutable access to the z coordinate of the space point.

Returns
A mutable reference to the z coordinate of the space point.

◆ zr() [1/2]

template<bool read_only>
const std::array< float, 2 > & Acts::SpacePointProxy2< read_only >::zr ( ) const
noexcept

Get const reference to ZR coordinates of the space point.

Returns
Const reference to array containing [z, r] coordinates

◆ zr() [2/2]

template<bool read_only>
std::array< float, 2 > & Acts::SpacePointProxy2< read_only >::zr ( ) const
noexcept

Get mutable reference to ZR coordinates of the space point.

Returns
Mutable reference to array containing [z, r] coordinates

Member Data Documentation

◆ ReadOnly

template<bool read_only>
bool Acts::SpacePointProxy2< read_only >::ReadOnly = read_only
staticconstexpr

Indicates whether this space point proxy is read-only or data can be modified.