geomc 1.0
A c++ linear algebra template library
Loading...
Searching...
No Matches
MatrixWrapper< M > Class Template Reference
Inheritance diagram for MatrixWrapper< M >:
MatrixHandle< M::elem_t > WriteableMatrixBase< M::elem_t, DYNAMIC_DIM, DYNAMIC_DIM, MatrixHandle< M::elem_t > > MatrixBase< M::elem_t, M, N, MatrixHandle< M::elem_t > >

Public Types

typedef MtxColIterator< MatrixHandle< M::elem_t >, derived_referencecol_iterator
 Writeable iterator over column elements.
 
typedef MtxColIterator< const MatrixHandle< M::elem_t >, const elem_t > const_col_iterator
 Read-only iterator over the elements of a column.
 
typedef MtxSubsetIterator< const MatrixHandle< M::elem_t >, const elem_t > const_iterator
 Read-only row-major iterator over matrix elements.
 
typedef const_iterator const_region_iterator
 Read-only row-major iterator over the matrix elements in a rectangular region.
 
typedef MtxRowIterator< const MatrixHandle< M::elem_t >, const elem_t > const_row_iterator
 Read-only iterator over the elments of a row.
 
typedef M::elem_t elem_t
 
typedef MtxSubsetIterator< MatrixHandle< M::elem_t >, derived_referenceiterator
 Writeable row-major iterator.
 
typedef MatrixHandle< M::elem_t > recurring_t
 
typedef MatrixHandle< elem_t >::reference reference
 
typedef iterator region_iterator
 Writeable row-major region iterator.
 
typedef MtxRowIterator< MatrixHandle< M::elem_t >, derived_referencerow_iterator
 Writeable iterator over row elements.
 
typedef Storage< storage_token_t, _ImplStorageObjCount< MatrixHandle< M::elem_t > >::count > storagebuffer_t
 

Public Member Functions

 MatrixWrapper (M *m)
 
iterator begin ()
 
const_iterator begin () const
 
const_iterator begin () const
 
col_iterator col (index_t i)
 
const_col_iterator col (index_t i) const
 
const_col_iterator col (index_t i) const
 
virtual index_t cols () const
 
iterator end ()
 
const_iterator end () const
 
const_iterator end () const
 
storagebuffer_t get_storage_token_buffer () const
 
virtual void get_storage_tokens (storage_token_t *buf) const
 
derived_reference operator() (index_t row, index_t col)
 
virtual elem_t operator() (index_t r, index_t c) const
 
derived_row_iterator operator[] (index_t i)
 
derived_const_row_iterator operator[] (index_t i) const
 
derived_const_row_iterator operator[] (index_t i) const
 
region_iterator region_begin (const MatrixRegion &r)
 
const_region_iterator region_begin (const MatrixRegion &r) const
 
const_region_iterator region_begin (const MatrixRegion &r) const
 
region_iterator region_end (const MatrixRegion &r)
 
const_region_iterator region_end (const MatrixRegion &r) const
 
const_region_iterator region_end (const MatrixRegion &r) const
 
row_iterator row (index_t i)
 
const_row_iterator row (index_t i) const
 
const_row_iterator row (index_t i) const
 
virtual index_t rows () const
 
virtual reference set (index_t r, index_t c, elem_t val)
 
virtual void set_identity ()
 
virtual void set_zero ()
 
virtual index_t storage_token_count () const
 

Public Attributes

M * m
 

Static Public Attributes

static constexpr index_t COLDIM
 Column dimension template parameter.
 
static constexpr index_t ROWDIM
 Row dimension template parameter.
 

Member Function Documentation

◆ begin() [1/3]

iterator begin ( )
inlineinherited
Returns
A writeable, random-access, row-major iterator over the elements of this matrix, pointing to the element at (0,0).

◆ begin() [2/3]

( ) const
inherited
Returns
A read-only random-access row major-ordered iterator over the elements of this matrix, pointing to the element at (0,0).

◆ begin() [3/3]

const_iterator begin ( ) const
inlineinherited
Returns
A read-only random-access row major-ordered iterator over the elements of this matrix, pointing to the element at (0,0).

◆ col() [1/3]

col_iterator col ( index_t i)
inlineinherited
Parameters
iIndex of column (zero-indexed)
Returns
A writeable iterator over the elements of column i.

◆ col() [2/3]

( index_t i) const
inherited
Parameters
iIndex of column (zero-indexed)
Returns
A const iterator over the elements of column i

◆ col() [3/3]

const_col_iterator col ( index_t i) const
inlineinherited
Parameters
iIndex of column (zero-indexed)
Returns
A const iterator over the elements of column i

◆ cols()

template<typename M>
virtual index_t cols ( ) const
inlinevirtual

◆ end() [1/3]

iterator end ( )
inlineinherited
Returns
A writeable, random-access, row-major iterator over the elements of this matrix, pointing to the element just beyond the last element in the lower right corner.

◆ end() [2/3]

( ) const
inherited
Returns
A read-only random-access row major-ordered iterator over the elements of this matrix, pointing to the element just beyond the last element in the lower right corner.

◆ end() [3/3]

const_iterator end ( ) const
inlineinherited
Returns
A read-only random-access row major-ordered iterator over the elements of this matrix, pointing to the element just beyond the last element in the lower right corner.

◆ get_storage_tokens()

template<typename M>
virtual void get_storage_tokens ( storage_token_t * buf) const
inlinevirtual

◆ operator()() [1/2]

derived_reference operator() ( index_t row,
index_t col )
inlineinherited

Get the element at (row, col).

Parameters
rowZero-indexed row coordinate
colZero-indexed column coordinate
Returns
A reference to the element at (row, col)

◆ operator()() [2/2]

template<typename M>
virtual elem_t operator() ( index_t r,
index_t c ) const
inlinevirtual

◆ operator[]() [1/3]

derived_row_iterator operator[] ( index_t i)
inlineinherited
Parameters
iIndex of row (zero-indexed)
Returns
A writeable iterator over the elements of row i.

◆ operator[]() [2/3]

( index_t i) const
inherited
Parameters
iIndex of row (zero-indexed)
Returns
A const iterator over the elements of row i

◆ operator[]() [3/3]

derived_const_row_iterator operator[] ( index_t i) const
inlineinherited
Parameters
iIndex of row (zero-indexed)
Returns
A const iterator over the elements of row i

◆ region_begin() [1/3]

region_iterator region_begin ( const MatrixRegion & r)
inlineinherited
Parameters
rThe zero-indexed region to iterate over. The upper extreme coordinates represent the index just beyond the last element to be iterated over.
Returns
A writeable, random-access, row-major iterator over the elements in region r, pointing at the first element in the region (upper left corner).

◆ region_begin() [2/3]

( const MatrixRegion & r) const
inherited
Parameters
rThe zero-indexed region to iterate over. The upper extreme coordinates represent the index just beyond the last element to be iterated over.
Returns
A read-only, random-access, row-major iterator over the elements in region r, pointing at the first element in the region (upper left corner).

◆ region_begin() [3/3]

const_region_iterator region_begin ( const MatrixRegion & r) const
inlineinherited
Parameters
rThe zero-indexed region to iterate over. The upper extreme coordinates represent the index just beyond the last element to be iterated over.
Returns
A read-only, random-access, row-major iterator over the elements in region r, pointing at the first element in the region (upper left corner).

◆ region_end() [1/3]

region_iterator region_end ( const MatrixRegion & r)
inlineinherited
Parameters
rThe zero-indexed region to iterate over. The upper extreme coordinates represent the index just beyond the last element to be iterated over.
Returns
A writeable, random-access, row-major iterator over the elements in region r, pointing at the element just beyond the last element in the region.

◆ region_end() [2/3]

( const MatrixRegion & r) const
inherited
Parameters
rThe zero-indexed region to iterate over. The upper extreme coordinates represent the index just beyond the last element to be iterated over.
Returns
A read-only, random-access, row-major iterator over the elements in region r, pointing at the element just beyond the last element in the region.

◆ region_end() [3/3]

const_region_iterator region_end ( const MatrixRegion & r) const
inlineinherited
Parameters
rThe zero-indexed region to iterate over. The upper extreme coordinates represent the index just beyond the last element to be iterated over.
Returns
A read-only, random-access, row-major iterator over the elements in region r, pointing at the element just beyond the last element in the region.

◆ row() [1/3]

row_iterator row ( index_t i)
inlineinherited
Parameters
iIndex of row (zero-indexed)
Returns
A writeable iterator over the elements of row i.

◆ row() [2/3]

( index_t i) const
inherited
Parameters
iIndex of row (zero-indexed)
Returns
A const iterator over the elements of row i

◆ row() [3/3]

const_row_iterator row ( index_t i) const
inlineinherited
Parameters
iIndex of row (zero-indexed)
Returns
A const iterator over the elements of row i

◆ rows()

template<typename M>
virtual index_t rows ( ) const
inlinevirtual

◆ set()

template<typename M>
virtual reference set ( index_t r,
index_t c,
elem_t val )
inlinevirtual

◆ set_identity()

template<typename M>
virtual void set_identity ( )
inlinevirtual

◆ set_zero()

template<typename M>
virtual void set_zero ( )
inlinevirtual

◆ storage_token_count()

template<typename M>
virtual index_t storage_token_count ( ) const
inlinevirtual

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