lin
|
Generic matrix reference with read and write access. More...
#include <lin/references/matrix_mapping_reference.hpp>
Public Types | |
typedef traits< MatrixMappingReference< E, R, C, MR, MC > > | Traits |
Traits information for this type. More... | |
![]() | |
typedef traits< MatrixMappingReference< E, R, C, MR, MC > > | Traits |
Traits information for this type. More... | |
![]() | |
typedef traits< MatrixMappingReference< E, R, C, MR, MC > > | Traits |
Traits information for this type. More... | |
![]() | |
typedef traits< MatrixMappingReference< E, R, C, MR, MC > > | Traits |
Traits information for this type. More... | |
Public Member Functions | |
constexpr | MatrixMappingReference (MatrixMappingReference< E, R, C, MR, MC > const &)=default |
constexpr | MatrixMappingReference (MatrixMappingReference< E, R, C, MR, MC > &&)=default |
constexpr MatrixMappingReference< E, R, C, MR, MC > & | operator= (MatrixMappingReference< E, R, C, MR, MC > const &)=default |
constexpr MatrixMappingReference< E, R, C, MR, MC > & | operator= (MatrixMappingReference< E, R, C, MR, MC > &&)=default |
![]() | |
constexpr | TensorMappingReference (TensorMappingReference< MatrixMappingReference< E, R, C, MR, MC >, E > const &)=default |
constexpr | TensorMappingReference (TensorMappingReference< MatrixMappingReference< E, R, C, MR, MC >, E > &&)=default |
constexpr | TensorMappingReference (Mapping< E > &mapping, size_t i, size_t j) |
Constructs a new reference with the provided mapping and anchor point. More... | |
constexpr | TensorMappingReference (Mapping< E > &mapping, size_t i, size_t j, size_t r, size_t c) |
Constructs a new reference with the provided mapping, anchor point, and dimensions. More... | |
constexpr TensorMappingReference< MatrixMappingReference< E, R, C, MR, MC >, E > & | operator= (TensorMappingReference< MatrixMappingReference< E, R, C, MR, MC >, E > const &)=default |
constexpr TensorMappingReference< MatrixMappingReference< E, R, C, MR, MC >, E > & | operator= (TensorMappingReference< MatrixMappingReference< E, R, C, MR, MC >, E > &&)=default |
constexpr Traits::elem_t & | operator() (size_t i, size_t j) |
Provides read and write access to tensor elements. More... | |
constexpr Traits::elem_t & | operator() (size_t i) |
Provides read and write access to tensor elements. More... | |
![]() | |
constexpr | Mapping (Mapping< MatrixMappingReference< E, R, C, MR, MC > > const &)=default |
constexpr | Mapping (Mapping< MatrixMappingReference< E, R, C, MR, MC > > &&)=default |
constexpr Mapping< MatrixMappingReference< E, R, C, MR, MC > > & | operator= (Mapping< MatrixMappingReference< E, R, C, MR, MC > > const &)=default |
constexpr Mapping< MatrixMappingReference< E, R, C, MR, MC > > & | operator= (Mapping< MatrixMappingReference< E, R, C, MR, MC > > &&)=default |
constexpr MatrixMappingReference< E, R, C, MR, MC > & | operator= (std::initializer_list< T > const &list) |
Copy an initializer list's elements into the tensor's elements. More... | |
constexpr MatrixMappingReference< E, R, C, MR, MC > & | operator= (Stream< C > const &s) |
Copy another tensor's elements into this tenosr's elements. More... | |
constexpr Traits::elem_t & | operator() (size_t i, size_t j) |
Provides read and write access to tensor elements. More... | |
constexpr Traits::elem_t | operator() (size_t i, size_t j) const |
Provides read only access to tensor elements. More... | |
constexpr Traits::elem_t & | operator() (size_t i) |
Provides read and write access to tensor elements. More... | |
constexpr Traits::elem_t | operator() (size_t i) const |
Provides read only access to tensor elements. More... | |
constexpr Traits::elem_t & | operator[] (size_t i) |
Provides read and write access to tensor elements. More... | |
constexpr Traits::elem_t | operator[] (size_t i) const |
Provides read only access to tensor elements. More... | |
![]() | |
constexpr | Stream (Stream< MatrixMappingReference< E, R, C, MR, MC > > const &)=default |
constexpr | Stream (Stream< MatrixMappingReference< E, R, C, MR, MC > > &&)=default |
constexpr Stream< MatrixMappingReference< E, R, C, MR, MC > > & | operator= (Stream< MatrixMappingReference< E, R, C, MR, MC > > const &)=default |
constexpr Stream< MatrixMappingReference< E, R, C, MR, MC > > & | operator= (Stream< MatrixMappingReference< E, R, C, MR, MC > > &&)=default |
constexpr size_t | rows () const |
constexpr size_t | cols () const |
constexpr size_t | size () const |
constexpr Traits::elem_t | operator() (size_t i, size_t j) const |
Provides read only access to tensor elements. More... | |
constexpr Traits::elem_t | operator() (size_t i) const |
Provides read only access to tensor elements. More... | |
constexpr Traits::elem_t | operator[] (size_t i) const |
Provides read only access to tensor elements. More... | |
constexpr Traits::eval_t | eval () const |
Forces evaluation of this stream to a value backed type. More... | |
![]() | |
constexpr | Dimensions (Dimensions< MatrixMappingReference< E, R, C, MR, MC > > const &)=default |
constexpr | Dimensions (Dimensions< MatrixMappingReference< E, R, C, MR, MC > > &&)=default |
constexpr Dimensions< MatrixMappingReference< E, R, C, MR, MC > > & | operator= (Dimensions< MatrixMappingReference< E, R, C, MR, MC > > const &)=default |
constexpr Dimensions< MatrixMappingReference< E, R, C, MR, MC > > & | operator= (Dimensions< MatrixMappingReference< E, R, C, MR, MC > > &&)=default |
constexpr size_t | rows () const |
constexpr size_t | cols () const |
constexpr void | resize (size_t r, size_t c) |
Resizes a tensor's dimensions. More... | |
Additional Inherited Members | |
![]() | |
constexpr MatrixMappingReference< E, R, C, MR, MC > & | derived () |
constexpr MatrixMappingReference< E, R, C, MR, MC >const & | derived () const |
Generic matrix reference with read and write access.
E | Underlying referenced type. |
R | Rows at compile time. |
C | Columns at compile time. |
MR | Maximum rows at compile time. |
MC | Maximum columns at compile time. |
The template parameters specify the reference's traits. The traits must qualify the type as a matrix.
It's important to note, if the underlying type goes out of scope the reference is invalidated.
typedef traits<MatrixMappingReference<E, R, C, MR, MC> > lin::internal::MatrixMappingReference< E, R, C, MR, MC >::Traits |
Traits information for this type.