ACTS
Experiment-independent tracking
Loading...
Searching...
No Matches
detray::algebra::smatrix::storage::element_getter Struct Reference

Functor used to access elements of SMatrix matrices. More...

#include <algebra/impl/smatrix_getter.hpp>

Public Member Functions

template<unsigned int N, concepts::scalar scalar_t>
constexpr scalar_t operator() (const ROOT::Math::SMatrix< scalar_t, N, 1 > &m, unsigned int row) const
 Read an element of a single-column matrix.
template<unsigned int ROWS, unsigned int COLS, concepts::scalar scalar_t>
constexpr scalar_t operator() (const ROOT::Math::SMatrix< scalar_t, ROWS, COLS > &m, unsigned int row, unsigned int col) const
 Read a matrix element.
template<unsigned int N, concepts::scalar scalar_t>
constexpr scalar_t operator() (const ROOT::Math::SVector< scalar_t, N > &m, unsigned int row) const
 Read a vector element.
template<unsigned int N, concepts::scalar scalar_t>
constexpr scalar_t & operator() (ROOT::Math::SMatrix< scalar_t, N, 1 > &m, unsigned int row) const
 Access a mutable element of a single-column matrix.
template<unsigned int ROWS, unsigned int COLS, concepts::scalar scalar_t>
constexpr scalar_t & operator() (ROOT::Math::SMatrix< scalar_t, ROWS, COLS > &m, unsigned int row, unsigned int col) const
 Access a mutable matrix element.
template<concepts::scalar scalar_t, unsigned int N>
constexpr scalar_t & operator() (ROOT::Math::SVector< scalar_t, N > &m, unsigned int row) const
 Access a mutable vector element.

Detailed Description

Functor used to access elements of SMatrix matrices.

Member Function Documentation

◆ operator()() [1/6]

template<unsigned int N, concepts::scalar scalar_t>
scalar_t detray::algebra::smatrix::storage::element_getter::operator() ( const ROOT::Math::SMatrix< scalar_t, N, 1 > & m,
unsigned int row ) const
constexpr

Read an element of a single-column matrix.

Parameters
mMatrix to read.
rowZero-based row index.
Returns
The element value.

◆ operator()() [2/6]

template<unsigned int ROWS, unsigned int COLS, concepts::scalar scalar_t>
scalar_t detray::algebra::smatrix::storage::element_getter::operator() ( const ROOT::Math::SMatrix< scalar_t, ROWS, COLS > & m,
unsigned int row,
unsigned int col ) const
constexpr

Read a matrix element.

Parameters
mMatrix to read.
rowZero-based row index.
colZero-based column index.
Returns
The element value.

◆ operator()() [3/6]

template<unsigned int N, concepts::scalar scalar_t>
scalar_t detray::algebra::smatrix::storage::element_getter::operator() ( const ROOT::Math::SVector< scalar_t, N > & m,
unsigned int row ) const
constexpr

Read a vector element.

Parameters
mVector to read.
rowZero-based element index.
Returns
The element value.

◆ operator()() [4/6]

template<unsigned int N, concepts::scalar scalar_t>
scalar_t & detray::algebra::smatrix::storage::element_getter::operator() ( ROOT::Math::SMatrix< scalar_t, N, 1 > & m,
unsigned int row ) const
constexpr

Access a mutable element of a single-column matrix.

Parameters
mMatrix to access.
rowZero-based row index.
Returns
A mutable reference to the element.

◆ operator()() [5/6]

template<unsigned int ROWS, unsigned int COLS, concepts::scalar scalar_t>
scalar_t & detray::algebra::smatrix::storage::element_getter::operator() ( ROOT::Math::SMatrix< scalar_t, ROWS, COLS > & m,
unsigned int row,
unsigned int col ) const
constexpr

Access a mutable matrix element.

Parameters
mMatrix to access.
rowZero-based row index.
colZero-based column index.
Returns
A mutable reference to the element.

◆ operator()() [6/6]

template<concepts::scalar scalar_t, unsigned int N>
scalar_t & detray::algebra::smatrix::storage::element_getter::operator() ( ROOT::Math::SVector< scalar_t, N > & m,
unsigned int row ) const
constexpr

Access a mutable vector element.

Parameters
mVector to access.
rowZero-based element index.
Returns
A mutable reference to the element.