|
| DNDS_DEVICE_CALLABLE | ArrayEigenUniMatrixBatchDeviceView (const t_base &base_view, int n_row_dynamic, int n_col_dynamic, int n_m_size) |
| |
| DNDS_DEVICE_CALLABLE int | Rows () const |
| |
| DNDS_DEVICE_CALLABLE int | Cols () const |
| |
| DNDS_DEVICE_CALLABLE int | MSize () const |
| |
| DNDS_DEVICE_CALLABLE rowsize | BatchSize (index i) const |
| |
| DNDS_DEVICE_CALLABLE rowsize | RowSize (index i) const |
| |
| DNDS_DEVICE_CALLABLE t_EigenMap | operator() (index i, rowsize j) |
| |
| DNDS_DEVICE_CALLABLE t_EigenMap_const | operator() (index i, rowsize j) const |
| |
| | ArrayDeviceView ()=delete |
| |
| DNDS_DEVICE_CALLABLE | ArrayView (index n_size, T *n_data, index n_data_size, const index *n_rowstart, index n_rowstart_size, const rowsize *n_rowsizes, index n_rowsizes_size, rowsize n_row_size_dynamic, bool n_isCompressed, t_dataUncompressed *n_p_dataUncompressed) |
| | Construct a view from raw pointers. Intended for internal use by Array::view().
|
| |
| DNDS_DEVICE_CALLABLE bool | isCompressed () const |
| | Whether the underlying array is in the compressed (flat) form (always true for non-CSR).
|
| |
| DNDS_DEVICE_CALLABLE index | Size () const |
| | Number of rows in the viewed array.
|
| |
| DNDS_DEVICE_CALLABLE rowsize | RowSize () const |
| | Uniform row width for fixed layouts (asserts otherwise).
|
| |
| DNDS_DEVICE_CALLABLE rowsize | RowSize (index iRow) const |
| | Per-row width. Handles CSR compressed and decompressed modes.
|
| |
| DNDS_DEVICE_CALLABLE rowsize | RowSizeMax () const |
| | Maximum row width (TABLE_*Max only).
|
| |
| DNDS_DEVICE_CALLABLE rowsize | RowSizeField () const |
| | "Logical" row-field width used by derived Eigen arrays; see Array::RowSizeField.
|
| |
| DNDS_DEVICE_CALLABLE rowsize | RowSizeField (index iRow) const |
| | Per-row "field" size for CSR (= actual row width).
|
| |
| const T & | at (index iRow, rowsize iCol) const |
| | Bounds-checked element read (not device-callable because CSR decompressed uses std::vector::at which throws on the host).
|
| |
| T & | operator() (index iRow, rowsize iCol=0) |
| | 2D indexed access (writable). See at.
|
| |
| const T & | operator() (index iRow, rowsize iCol=0) const |
| | 2D indexed access (read-only).
|
| |
| T * | operator[] (index iRow) |
| | Raw row pointer. iRow == Size() is allowed for past-the-end queries (useful for computing buffer end in sweeps).
|
| |
| const T * | operator[] (index iRow) const |
| | Const row pointer; see the non-const overload.
|
| |
| DNDS_DEVICE_CALLABLE T * | data () |
| | Raw pointer to the start of the flat data buffer.
|
| |
| DNDS_DEVICE_CALLABLE size_t | DataSize () const |
| | Size of the flat data buffer in T elements.
|
| |
| DNDS_DEVICE_CALLABLE bool | operator== (const self_type &R) const |
| | Pointer equality (two views referring to the same buffer).
|
| |
|
| static constexpr DataLayout | _GetDataLayout () |
| | Deduce the DataLayout tag from the template parameters.
|
| |
| static std::string | GetArrayName () |
| | Human-readable type identifier including element typeid, sizes, and alignment.
|
| |
| static std::string | GetArraySignature () |
| | Compiler-independent identifier used by serializers to tag an array.
|
| |
| static std::string | GetArraySignatureRelaxed () |
| | Signature with _row_size / _row_max replaced by DynamicSize.
|
| |
| static std::tuple< int, int, int, int > | ParseArraySignatureTuple (const std::string &v) |
| | Parse a signature string into (sizeof_T, row_size, row_max, align).
|
| |
| static bool | ArraySignatureIsCompatible (const std::string &v) |
| | Whether a stored signature can be read into this array type.
|
| |
| static const rowsize | al = _align |
| |
| static const rowsize | rs = _row_size |
| |
| static const rowsize | rm = _row_max |
| |
| static const size_t | sizeof_T = sizeof(value_type) |
| |
| static const rowsize | s_T = al == NoAlign ? sizeof_T : (sizeof_T / al + 1) * al |
| |
| static const DataLayout | _dataLayout = _GetDataLayout() |
| |
| static const bool | isCSR = _dataLayout == CSR |
| |
| using | self_type = ArrayView< T, _row_size, _row_max, _align > |
| |
| using | t_Layout = ArrayLayout< T, _row_size, _row_max, _align > |
| |
| using | t_dataUncompressed = std::vector< std::vector< T > > |
| |
| DNDS_DEVICE_CALLABLE rowsize | RowSize_Compressed (index iRow) const |
| |
| DNDS_DEVICE_CALLABLE const T & | at_compressed (index iRow, rowsize iCol) const |
| |
| DNDS_DEVICE_CALLABLE T * | get_rowstart_pointer_compressed (index iRow) |
| |
| index | _size |
| |
| T * | _data = nullptr |
| |
| index | _data_size = 0 |
| |
| std::conditional_t< _dataLayout==CSR, const index *, std::conditional_t< _dataLayout==TABLE_Max||_dataLayout==TABLE_StaticMax, const rowsize *, EmptyNoDefault > > | _rowstart_or_rowsize = nullptr |
| |
| bool | _isCompressed = true |
| |
| std::conditional_t< _dataLayout==TABLE_Max||_dataLayout==TABLE_Fixed, rowsize, EmptyNoDefault > | _row_size_dynamic = 0 |
| |
| std::conditional_t< _dataLayout==CSR, t_dataUncompressed *, EmptyNoDefault > | _p_dataUncompressed = nullptr |
| |
template<
DeviceBackend B, class real_T, int _n_row, int _n_col>
class DNDS::ArrayEigenUniMatrixBatchDeviceView< B, real_T, _n_row, _n_col >
Device-callable view onto ArrayEigenUniMatrixBatch rows.
operator()(i, j) returns an Eigen::Map<Matrix<real, _n_row, _n_col>> pointing at the j-th matrix of row i's batch. BatchSize(i) reports the batch count (not the raw CSR width).
Definition at line 38 of file ArrayEigenUniMatrixBatch_DeviceView.hpp.