Provide read-only and read/write access to constantly sized portions/windows of a linearised buffer with an implied row/column matrix (2D array) structure.
More...
|
| | WindowedMatrix (const NumRows &nRows, const NumCols &nCols, const WindowSize &sz, const T initial=T{}) |
| | Constructor.
|
|
Idx | numCols () const |
| | Retrieve number of columns allocated for this matrix.
|
|
Idx | numRows () const |
| | Retrieve number of rows allocated for this matrix.
|
|
Idx | windowSize () const |
| | Retrieve number of data items per windows.
|
| WriteWindow | operator() (const Idx row, const Idx col) |
| | Request read/write access to individual window.
|
| ReadWindow | operator() (const Idx row, const Idx col) const |
| | Request read-only access to individual window.
|
|
auto | data () const -> decltype(std::declval< const WindowedArray< T > >().data()) |
| | Get read-only access to full, linearised data items for all windows.
|
| auto | getDataDestructively () -> decltype(std::declval< WindowedArray< T > >() .getDataDestructively()) |
| | Extract full, linearised data items for all windows.
|
template<typename T>
class Opm::RestartIO::Helpers::WindowedMatrix< T >
Provide read-only and read/write access to constantly sized portions/windows of a linearised buffer with an implied row/column matrix (2D array) structure.
Intended as backing store for vectors that have a constant number of items per sub-entity of a fixed number of containing entities (e.g., K double precision data items for each of N maximum well connections for each of M maximum active wells at a particular report step).
- Template Parameters
-
| T | Element type for underlying data items. |