batmat 0.0.13
Batched linear algebra routines
Loading...
Searching...
No Matches
batmat::matrix::Matrix< T, I, S, D, O, A > Struct Template Reference

#include <batmat/matrix/matrix.hpp>

Detailed Description

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
struct batmat::matrix::Matrix< T, I, S, D, O, A >

Class for a batch of matrices that owns its storage.

Template Parameters
TElement value type.
IIndex type.
SInner stride (batch size).
DDepth type.
OStorage order (column or row major).
ABatch alignment type.
Examples
example.cpp.

Definition at line 52 of file matrix.hpp.

Public Types

using view_type = View<T, I, S, D, DefaultStride, O>
using const_view_type = typename view_type::const_view_type
using layout_type = typename view_type::layout_type
using plain_layout_type = typename layout_type::PlainLayout
using value_type = T
using index_type = typename layout_type::index_type
using batch_size_type = typename layout_type::batch_size_type
using depth_type = typename layout_type::depth_type
using standard_stride_type = typename layout_type::standard_stride_type
using alignment_type = A

Public Member Functions

view_type view ()
const_view_type view () const
layout_type layout () const
void resize (layout_type new_layout)
void set_constant (value_type t)
 Matrix ()=default
 Matrix (layout_type layout)
 Matrix (layout_type layout, uninitialized_t init)
 Matrix (plain_layout_type p)
 Matrix (plain_layout_type p, uninitialized_t init)
 Matrix (const Matrix &o)
 Matrix (Matrix &&o) noexcept
Matrixoperator= (const Matrix &o)
Matrixoperator= (Matrix &&o) noexcept
 ~Matrix ()
 operator view_type ()
 operator const_view_type () const
 operator View< T, I, S, D, I, O > ()
 operator View< const T, I, S, D, I, O > () const
guanaqo::MatrixView< T, I, standard_stride_type, O > operator() (index_type l)
value_typeoperator() (index_type l, index_type r, index_type c)
guanaqo::MatrixView< const T, I, standard_stride_type, O > operator() (index_type l) const
const value_typeoperator() (index_type l, index_type r, index_type c) const
auto batch (index_type b)
auto batch (index_type b) const
auto batch_dyn (index_type b)
auto batch_dyn (index_type b) const
auto reshaped (index_type rows, index_type cols)
auto reshaped (index_type rows, index_type cols) const
auto top_rows (index_type n)
auto top_rows (index_type n) const
auto left_cols (index_type n)
auto left_cols (index_type n) const
auto bottom_rows (index_type n)
auto bottom_rows (index_type n) const
auto right_cols (index_type n)
auto right_cols (index_type n) const
auto middle_rows (index_type r, index_type n)
auto middle_rows (index_type r, index_type n) const
auto middle_cols (index_type c, index_type n)
auto middle_cols (index_type c, index_type n) const
auto top_left (index_type nr, index_type nc)
auto top_left (index_type nr, index_type nc) const
auto top_right (index_type nr, index_type nc)
auto top_right (index_type nr, index_type nc) const
auto bottom_left (index_type nr, index_type nc)
auto bottom_left (index_type nr, index_type nc) const
auto bottom_right (index_type nr, index_type nc)
auto bottom_right (index_type nr, index_type nc) const
auto block (index_type r, index_type c, index_type nr, index_type nc)
auto block (index_type r, index_type c, index_type nr, index_type nc) const
auto transposed ()
auto transposed () const
auto as_const () const
auto begin ()
auto begin () const
auto end ()
auto end () const
index_type size () const
index_type padded_size () const
value_typedata ()
const value_typedata () const
depth_type depth () const
index_type ceil_depth () const
index_type num_batches () const
index_type rows () const
index_type cols () const
index_type outer_stride () const
batch_size_type batch_size () const

Private Member Functions

void clear ()

Static Private Member Functions

static constexpr auto default_alignment (layout_type layout)
static auto allocate (layout_type layout)
static auto allocate (layout_type layout, uninitialized_t init)

Private Attributes

view_type view_

Member Typedef Documentation

◆ view_type

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
using batmat::matrix::Matrix< T, I, S, D, O, A >::view_type = View<T, I, S, D, DefaultStride, O>

Definition at line 54 of file matrix.hpp.

◆ const_view_type

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
using batmat::matrix::Matrix< T, I, S, D, O, A >::const_view_type = typename view_type::const_view_type

Definition at line 55 of file matrix.hpp.

◆ layout_type

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
using batmat::matrix::Matrix< T, I, S, D, O, A >::layout_type = typename view_type::layout_type

Definition at line 56 of file matrix.hpp.

◆ plain_layout_type

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
using batmat::matrix::Matrix< T, I, S, D, O, A >::plain_layout_type = typename layout_type::PlainLayout

Definition at line 57 of file matrix.hpp.

◆ value_type

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
using batmat::matrix::Matrix< T, I, S, D, O, A >::value_type = T

Definition at line 58 of file matrix.hpp.

◆ index_type

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
using batmat::matrix::Matrix< T, I, S, D, O, A >::index_type = typename layout_type::index_type

Definition at line 59 of file matrix.hpp.

◆ batch_size_type

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
using batmat::matrix::Matrix< T, I, S, D, O, A >::batch_size_type = typename layout_type::batch_size_type

Definition at line 60 of file matrix.hpp.

◆ depth_type

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
using batmat::matrix::Matrix< T, I, S, D, O, A >::depth_type = typename layout_type::depth_type

Definition at line 61 of file matrix.hpp.

◆ standard_stride_type

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
using batmat::matrix::Matrix< T, I, S, D, O, A >::standard_stride_type = typename layout_type::standard_stride_type

Definition at line 62 of file matrix.hpp.

◆ alignment_type

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
using batmat::matrix::Matrix< T, I, S, D, O, A >::alignment_type = A

Definition at line 63 of file matrix.hpp.

Constructor & Destructor Documentation

◆ Matrix() [1/7]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
batmat::matrix::Matrix< T, I, S, D, O, A >::Matrix ( )
default

◆ Matrix() [2/7]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
batmat::matrix::Matrix< T, I, S, D, O, A >::Matrix ( layout_type layout)
inline

Definition at line 108 of file matrix.hpp.

◆ Matrix() [3/7]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
batmat::matrix::Matrix< T, I, S, D, O, A >::Matrix ( layout_type layout,
uninitialized_t init )
inline

Definition at line 109 of file matrix.hpp.

◆ Matrix() [4/7]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
batmat::matrix::Matrix< T, I, S, D, O, A >::Matrix ( plain_layout_type p)
inline

Definition at line 111 of file matrix.hpp.

◆ Matrix() [5/7]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
batmat::matrix::Matrix< T, I, S, D, O, A >::Matrix ( plain_layout_type p,
uninitialized_t init )
inline

Definition at line 112 of file matrix.hpp.

◆ Matrix() [6/7]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
batmat::matrix::Matrix< T, I, S, D, O, A >::Matrix ( const Matrix< T, I, S, D, O, A > & o)
inline

Definition at line 114 of file matrix.hpp.

◆ Matrix() [7/7]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
batmat::matrix::Matrix< T, I, S, D, O, A >::Matrix ( Matrix< T, I, S, D, O, A > && o)
inlinenoexcept

Definition at line 117 of file matrix.hpp.

◆ ~Matrix()

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
batmat::matrix::Matrix< T, I, S, D, O, A >::~Matrix ( )
inline

Definition at line 136 of file matrix.hpp.

Member Function Documentation

◆ default_alignment()

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
constexpr auto batmat::matrix::Matrix< T, I, S, D, O, A >::default_alignment ( layout_type layout)
inlinestaticconstexprprivate

Definition at line 68 of file matrix.hpp.

◆ allocate() [1/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
auto batmat::matrix::Matrix< T, I, S, D, O, A >::allocate ( layout_type layout)
inlinestaticnodiscardprivate

Definition at line 76 of file matrix.hpp.

◆ allocate() [2/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
auto batmat::matrix::Matrix< T, I, S, D, O, A >::allocate ( layout_type layout,
uninitialized_t init )
inlinestaticnodiscardprivate

Definition at line 80 of file matrix.hpp.

◆ clear()

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
void batmat::matrix::Matrix< T, I, S, D, O, A >::clear ( )
inlineprivate

Definition at line 84 of file matrix.hpp.

◆ view() [1/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
view_type batmat::matrix::Matrix< T, I, S, D, O, A >::view ( )
inlinenodiscard

Definition at line 92 of file matrix.hpp.

◆ view() [2/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
const_view_type batmat::matrix::Matrix< T, I, S, D, O, A >::view ( ) const
inlinenodiscard

Definition at line 93 of file matrix.hpp.

◆ layout()

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
layout_type batmat::matrix::Matrix< T, I, S, D, O, A >::layout ( ) const
inlinenodiscard

Definition at line 95 of file matrix.hpp.

◆ resize()

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
void batmat::matrix::Matrix< T, I, S, D, O, A >::resize ( layout_type new_layout)
inline

Definition at line 97 of file matrix.hpp.

◆ set_constant()

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
void batmat::matrix::Matrix< T, I, S, D, O, A >::set_constant ( value_type t)
inline

Definition at line 105 of file matrix.hpp.

◆ operator=() [1/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
Matrix & batmat::matrix::Matrix< T, I, S, D, O, A >::operator= ( const Matrix< T, I, S, D, O, A > & o)
inline

Definition at line 118 of file matrix.hpp.

◆ operator=() [2/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
Matrix & batmat::matrix::Matrix< T, I, S, D, O, A >::operator= ( Matrix< T, I, S, D, O, A > && o)
inlinenoexcept

Definition at line 128 of file matrix.hpp.

◆ operator view_type()

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
batmat::matrix::Matrix< T, I, S, D, O, A >::operator view_type ( )
inline

Definition at line 138 of file matrix.hpp.

◆ operator const_view_type()

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
batmat::matrix::Matrix< T, I, S, D, O, A >::operator const_view_type ( ) const
inline

Definition at line 139 of file matrix.hpp.

◆ operator View< T, I, S, D, I, O >()

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
batmat::matrix::Matrix< T, I, S, D, O, A >::operator View< T, I, S, D, I, O > ( )
inline

Definition at line 140 of file matrix.hpp.

◆ operator View< const T, I, S, D, I, O >()

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
batmat::matrix::Matrix< T, I, S, D, O, A >::operator View< const T, I, S, D, I, O > ( ) const
inline

Definition at line 141 of file matrix.hpp.

◆ operator()() [1/4]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
guanaqo::MatrixView< T, I, standard_stride_type, O > batmat::matrix::Matrix< T, I, S, D, O, A >::operator() ( index_type l)
inlinenodiscard

Definition at line 143 of file matrix.hpp.

◆ operator()() [2/4]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
value_type & batmat::matrix::Matrix< T, I, S, D, O, A >::operator() ( index_type l,
index_type r,
index_type c )
inlinenodiscard

Definition at line 146 of file matrix.hpp.

◆ operator()() [3/4]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
guanaqo::MatrixView< const T, I, standard_stride_type, O > batmat::matrix::Matrix< T, I, S, D, O, A >::operator() ( index_type l) const
inlinenodiscard

Definition at line 150 of file matrix.hpp.

◆ operator()() [4/4]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
const value_type & batmat::matrix::Matrix< T, I, S, D, O, A >::operator() ( index_type l,
index_type r,
index_type c ) const
inlinenodiscard

Definition at line 153 of file matrix.hpp.

◆ batch() [1/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
auto batmat::matrix::Matrix< T, I, S, D, O, A >::batch ( index_type b)
inlinenodiscard

Definition at line 157 of file matrix.hpp.

◆ batch() [2/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
auto batmat::matrix::Matrix< T, I, S, D, O, A >::batch ( index_type b) const
inlinenodiscard

Definition at line 158 of file matrix.hpp.

◆ batch_dyn() [1/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
auto batmat::matrix::Matrix< T, I, S, D, O, A >::batch_dyn ( index_type b)
inlinenodiscard

Definition at line 159 of file matrix.hpp.

◆ batch_dyn() [2/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
auto batmat::matrix::Matrix< T, I, S, D, O, A >::batch_dyn ( index_type b) const
inlinenodiscard

Definition at line 160 of file matrix.hpp.

◆ reshaped() [1/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
auto batmat::matrix::Matrix< T, I, S, D, O, A >::reshaped ( index_type rows,
index_type cols )
inlinenodiscard

Definition at line 162 of file matrix.hpp.

◆ reshaped() [2/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
auto batmat::matrix::Matrix< T, I, S, D, O, A >::reshaped ( index_type rows,
index_type cols ) const
inlinenodiscard

Definition at line 165 of file matrix.hpp.

◆ top_rows() [1/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
auto batmat::matrix::Matrix< T, I, S, D, O, A >::top_rows ( index_type n)
inlinenodiscard

Definition at line 168 of file matrix.hpp.

◆ top_rows() [2/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
auto batmat::matrix::Matrix< T, I, S, D, O, A >::top_rows ( index_type n) const
inlinenodiscard

Definition at line 169 of file matrix.hpp.

◆ left_cols() [1/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
auto batmat::matrix::Matrix< T, I, S, D, O, A >::left_cols ( index_type n)
inlinenodiscard

Definition at line 170 of file matrix.hpp.

◆ left_cols() [2/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
auto batmat::matrix::Matrix< T, I, S, D, O, A >::left_cols ( index_type n) const
inlinenodiscard

Definition at line 171 of file matrix.hpp.

◆ bottom_rows() [1/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
auto batmat::matrix::Matrix< T, I, S, D, O, A >::bottom_rows ( index_type n)
inlinenodiscard

Definition at line 172 of file matrix.hpp.

◆ bottom_rows() [2/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
auto batmat::matrix::Matrix< T, I, S, D, O, A >::bottom_rows ( index_type n) const
inlinenodiscard

Definition at line 173 of file matrix.hpp.

◆ right_cols() [1/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
auto batmat::matrix::Matrix< T, I, S, D, O, A >::right_cols ( index_type n)
inlinenodiscard

Definition at line 174 of file matrix.hpp.

◆ right_cols() [2/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
auto batmat::matrix::Matrix< T, I, S, D, O, A >::right_cols ( index_type n) const
inlinenodiscard

Definition at line 175 of file matrix.hpp.

◆ middle_rows() [1/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
auto batmat::matrix::Matrix< T, I, S, D, O, A >::middle_rows ( index_type r,
index_type n )
inlinenodiscard

Definition at line 176 of file matrix.hpp.

◆ middle_rows() [2/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
auto batmat::matrix::Matrix< T, I, S, D, O, A >::middle_rows ( index_type r,
index_type n ) const
inlinenodiscard

Definition at line 177 of file matrix.hpp.

◆ middle_cols() [1/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
auto batmat::matrix::Matrix< T, I, S, D, O, A >::middle_cols ( index_type c,
index_type n )
inlinenodiscard

Definition at line 180 of file matrix.hpp.

◆ middle_cols() [2/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
auto batmat::matrix::Matrix< T, I, S, D, O, A >::middle_cols ( index_type c,
index_type n ) const
inlinenodiscard

Definition at line 181 of file matrix.hpp.

◆ top_left() [1/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
auto batmat::matrix::Matrix< T, I, S, D, O, A >::top_left ( index_type nr,
index_type nc )
inlinenodiscard

Definition at line 184 of file matrix.hpp.

◆ top_left() [2/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
auto batmat::matrix::Matrix< T, I, S, D, O, A >::top_left ( index_type nr,
index_type nc ) const
inlinenodiscard

Definition at line 185 of file matrix.hpp.

◆ top_right() [1/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
auto batmat::matrix::Matrix< T, I, S, D, O, A >::top_right ( index_type nr,
index_type nc )
inlinenodiscard

Definition at line 188 of file matrix.hpp.

◆ top_right() [2/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
auto batmat::matrix::Matrix< T, I, S, D, O, A >::top_right ( index_type nr,
index_type nc ) const
inlinenodiscard

Definition at line 189 of file matrix.hpp.

◆ bottom_left() [1/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
auto batmat::matrix::Matrix< T, I, S, D, O, A >::bottom_left ( index_type nr,
index_type nc )
inlinenodiscard

Definition at line 192 of file matrix.hpp.

◆ bottom_left() [2/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
auto batmat::matrix::Matrix< T, I, S, D, O, A >::bottom_left ( index_type nr,
index_type nc ) const
inlinenodiscard

Definition at line 195 of file matrix.hpp.

◆ bottom_right() [1/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
auto batmat::matrix::Matrix< T, I, S, D, O, A >::bottom_right ( index_type nr,
index_type nc )
inlinenodiscard

Definition at line 198 of file matrix.hpp.

◆ bottom_right() [2/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
auto batmat::matrix::Matrix< T, I, S, D, O, A >::bottom_right ( index_type nr,
index_type nc ) const
inlinenodiscard

Definition at line 201 of file matrix.hpp.

◆ block() [1/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
auto batmat::matrix::Matrix< T, I, S, D, O, A >::block ( index_type r,
index_type c,
index_type nr,
index_type nc )
inlinenodiscard

Definition at line 204 of file matrix.hpp.

◆ block() [2/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
auto batmat::matrix::Matrix< T, I, S, D, O, A >::block ( index_type r,
index_type c,
index_type nr,
index_type nc ) const
inlinenodiscard

Definition at line 207 of file matrix.hpp.

◆ transposed() [1/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
auto batmat::matrix::Matrix< T, I, S, D, O, A >::transposed ( )
inlinenodiscard

Definition at line 210 of file matrix.hpp.

◆ transposed() [2/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
auto batmat::matrix::Matrix< T, I, S, D, O, A >::transposed ( ) const
inlinenodiscard

Definition at line 211 of file matrix.hpp.

◆ as_const()

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
auto batmat::matrix::Matrix< T, I, S, D, O, A >::as_const ( ) const
inlinenodiscard

Definition at line 213 of file matrix.hpp.

◆ begin() [1/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
auto batmat::matrix::Matrix< T, I, S, D, O, A >::begin ( )
inlinenodiscard

Definition at line 214 of file matrix.hpp.

◆ begin() [2/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
auto batmat::matrix::Matrix< T, I, S, D, O, A >::begin ( ) const
inlinenodiscard

Definition at line 215 of file matrix.hpp.

◆ end() [1/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
auto batmat::matrix::Matrix< T, I, S, D, O, A >::end ( )
inlinenodiscard

Definition at line 216 of file matrix.hpp.

◆ end() [2/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
auto batmat::matrix::Matrix< T, I, S, D, O, A >::end ( ) const
inlinenodiscard

Definition at line 217 of file matrix.hpp.

◆ size()

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
index_type batmat::matrix::Matrix< T, I, S, D, O, A >::size ( ) const
inlinenodiscard

Definition at line 218 of file matrix.hpp.

◆ padded_size()

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
index_type batmat::matrix::Matrix< T, I, S, D, O, A >::padded_size ( ) const
inlinenodiscard

Definition at line 219 of file matrix.hpp.

◆ data() [1/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
value_type * batmat::matrix::Matrix< T, I, S, D, O, A >::data ( )
inline

Definition at line 221 of file matrix.hpp.

◆ data() [2/2]

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
const value_type * batmat::matrix::Matrix< T, I, S, D, O, A >::data ( ) const
inline

Definition at line 222 of file matrix.hpp.

◆ depth()

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
depth_type batmat::matrix::Matrix< T, I, S, D, O, A >::depth ( ) const
inline

Definition at line 223 of file matrix.hpp.

◆ ceil_depth()

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
index_type batmat::matrix::Matrix< T, I, S, D, O, A >::ceil_depth ( ) const
inline

Definition at line 224 of file matrix.hpp.

◆ num_batches()

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
index_type batmat::matrix::Matrix< T, I, S, D, O, A >::num_batches ( ) const
inline

Definition at line 225 of file matrix.hpp.

◆ rows()

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
index_type batmat::matrix::Matrix< T, I, S, D, O, A >::rows ( ) const
inline

Definition at line 226 of file matrix.hpp.

◆ cols()

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
index_type batmat::matrix::Matrix< T, I, S, D, O, A >::cols ( ) const
inline

Definition at line 227 of file matrix.hpp.

◆ outer_stride()

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
index_type batmat::matrix::Matrix< T, I, S, D, O, A >::outer_stride ( ) const
inline

Definition at line 228 of file matrix.hpp.

◆ batch_size()

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
batch_size_type batmat::matrix::Matrix< T, I, S, D, O, A >::batch_size ( ) const
inline

Definition at line 229 of file matrix.hpp.

Member Data Documentation

◆ view_

template<class T, class I = index_t, class S = std::integral_constant<I, 1>, class D = I, StorageOrder O = StorageOrder::ColMajor, class A = detail::default_alignment_t<T, I, S>>
view_type batmat::matrix::Matrix< T, I, S, D, O, A >::view_
private

Definition at line 66 of file matrix.hpp.


The documentation for this struct was generated from the following file: