|
constexpr | StreamIdentity (StreamIdentity< T, R, C, MR, MC > const &)=default |
|
constexpr | StreamIdentity (StreamIdentity< T, R, C, MR, MC > &&)=default |
|
constexpr StreamIdentity< T, R, C, MR, MC > & | operator= (StreamIdentity< T, R, C, MR, MC > const &)=default |
|
constexpr StreamIdentity< T, R, C, MR, MC > & | operator= (StreamIdentity< T, R, C, MR, MC > &&)=default |
|
constexpr | StreamIdentity (size_t r, size_t c) |
| Constructs a tensor stream that specifies the identity matrix. More...
|
|
constexpr Traits::elem_t | operator() (size_t i, size_t j) const |
| Retrieves the requested tensor elements value, which, in this case is one when on the diagonal and zero otherwise. More...
|
|
constexpr Traits::elem_t | operator() (size_t i) const |
| Retrieves the requested tensor elements value, which, in this case is one when on the diagonal and zero otherwise. More...
|
|
constexpr | Stream (Stream< StreamIdentity< T, R, C, MR, MC > > const &)=default |
|
constexpr | Stream (Stream< StreamIdentity< T, R, C, MR, MC > > &&)=default |
|
constexpr Stream< StreamIdentity< T, R, C, MR, MC > > & | operator= (Stream< StreamIdentity< T, R, C, MR, MC > > const &)=default |
|
constexpr Stream< StreamIdentity< T, R, C, MR, MC > > & | operator= (Stream< StreamIdentity< T, 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< StreamIdentity< T, R, C, MR, MC > > const &)=default |
|
constexpr | Dimensions (Dimensions< StreamIdentity< T, R, C, MR, MC > > &&)=default |
|
constexpr Dimensions< StreamIdentity< T, R, C, MR, MC > > & | operator= (Dimensions< StreamIdentity< T, R, C, MR, MC > > const &)=default |
|
constexpr Dimensions< StreamIdentity< T, R, C, MR, MC > > & | operator= (Dimensions< StreamIdentity< T, 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...
|
|
template<typename T, size_t R, size_t C, size_t MR, size_t MC>
class lin::internal::StreamIdentity< T, R, C, MR, MC >
Tensor stream where all element accesses specify an identity matrix.
- Template Parameters
-
T | Stream element type. |
R | Rows at compile time. |
C | Columns at compile time. |
MR | Maximum rows at compile time. |
MC | Maximum columns at compile time. |
This is most commonly use to implement the identity generator function. The tensor parameters specified must be considered a square matrix.
- See also
- identity
-
internal::is_matrix
-
internal::is_square