Non-owning view of a two-dimensional double matrix. More...
#include <core.hpp>
Public Member Functions | |
| constexpr | MatrixView () noexcept=default |
| constexpr | MatrixView (const double *data, std::size_t rows, std::size_t cols, MatrixLayout layout, std::size_t leading_dim) noexcept |
| constexpr const double * | data () const noexcept |
| constexpr std::size_t | rows () const noexcept |
| constexpr std::size_t | cols () const noexcept |
| constexpr MatrixLayout | layout () const noexcept |
| constexpr std::size_t | leading_dim () const noexcept |
| constexpr std::size_t | storage_size () const noexcept |
Static Public Member Functions | |
| static constexpr MatrixView | column_major (const double *data, std::size_t rows, std::size_t cols) noexcept |
| static constexpr MatrixView | strided_column_major (const double *data, std::size_t rows, std::size_t cols, std::size_t leading_dim) noexcept |
| static constexpr MatrixView | row_major (const double *data, std::size_t rows, std::size_t cols) noexcept |
Non-owning view of a two-dimensional double matrix.
MatrixView is for input only. It stores pointer, shape, layout, and leading dimension. It never owns memory. For column-major data, leading_dim is the physical stride between two adjacent columns. For row-major data, leading_dim is the physical stride between two adjacent rows.
The logical element (row, col) is interpreted as:
The view only borrows memory; the caller owns the backing data. Functions that need to keep data after the call copy it into Rust-owned storage.
|
constexprdefaultnoexcept |
|
inlineconstexprnoexcept |
|
inlinestaticconstexprnoexcept |
|
inlinestaticconstexprnoexcept |
|
inlinestaticconstexprnoexcept |
|
inlineconstexprnoexcept |
|
inlineconstexprnoexcept |
|
inlineconstexprnoexcept |
|
inlineconstexprnoexcept |
|
inlineconstexprnoexcept |
|
inlineconstexprnoexcept |