Honeycomb  0.1
Component-Model Framework
Public Types | Public Member Functions | Protected Member Functions | List of all members
honey::matrix::priv::StorageBlock< Subclass > Class Template Reference

Block wrapper around any constant matrix with auto / dynamic dense storage type. Fully recursive, a block can wrap a block. More...

#include <Block.h>

Inheritance diagram for honey::matrix::priv::StorageBlock< Subclass >:
Inheritance graph
[legend]
Collaboration diagram for honey::matrix::priv::StorageBlock< Subclass >:
Collaboration graph
[legend]

Public Types

typedef Traits< Subclass >::MatrixP MatrixP
 
typedef Traits< Subclass >::ElemT ElemT
 
- Public Types inherited from honey::matrix::priv::StorageDense< Subclass >
typedef Traits< Subclass >::Real Real
 
typedef Traits< Subclass >::ElemT ElemT
 
typedef Traits< Subclass >::Alloc Alloc
 

Public Member Functions

ElemToperator[] (sdt row) const
 
ElemToperator() (sdt i) const
 
ElemToperator() (sdt row, sdt col) const
 
ElemTdata () const
 Get as array. Top-left corner of block sub-section is at index 0. More...
 
MatrixPparent () const
 Get parent matrix that contains this sub-block. More...
 
sdt row () const
 Get row offset. More...
 
sdt col () const
 Get column offset. More...
 
sdt rows () const
 Get row size. More...
 
sdt cols () const
 Get column size. More...
 
sdt size () const
 Get size. More...
 
- Public Member Functions inherited from honey::matrix::priv::StorageDense< Subclass >
const ElemToperator() (sdt row, sdt col) const
 
ElemToperator() (sdt row, sdt col)
 
void resize (sdt rows, sdt cols)
 Default resize, just asserts that fixed dimensions match args. More...
 
sdt rows () const
 
sdt cols () const
 
sdt size () const
 
const ElemTdata () const
 
ElemTdata ()
 
 operator ElemT * ()
 Cast to array. More...
 
 operator const ElemT * () const
 
const Subclass & subc () const
 Get the subclass that inherited from this base class. More...
 
Subclass & subc ()
 

Protected Member Functions

void initBlock (MatrixP &m, sdt row, sdt col, sdt rows, sdt cols)
 
- Protected Member Functions inherited from honey::matrix::priv::StorageDense< Subclass >
void assertIndex (sdt i) const
 
void assertIndex (sdt row, sdt col) const
 
void assertSize (sdt size) const
 
void assertSize (sdt rows, sdt cols) const
 

Additional Inherited Members

- Static Public Attributes inherited from honey::matrix::priv::StorageDense< Subclass >
static const sdt s_rows = Traits<Subclass>::rows
 
static const sdt s_cols = Traits<Subclass>::cols
 
static const sdt s_size = s_rows != dynamic && s_cols != dynamic ? s_rows*s_cols : dynamic
 
static const int options = Traits<Subclass>::options
 

Detailed Description

template<class Subclass>
class honey::matrix::priv::StorageBlock< Subclass >

Block wrapper around any constant matrix with auto / dynamic dense storage type. Fully recursive, a block can wrap a block.

Member Typedef Documentation

template<class Subclass>
typedef Traits<Subclass>::ElemT honey::matrix::priv::StorageDense< Subclass >::ElemT
template<class Subclass>
typedef Traits<Subclass>::MatrixP honey::matrix::priv::StorageBlock< Subclass >::MatrixP

Member Function Documentation

template<class Subclass>
sdt honey::matrix::priv::StorageBlock< Subclass >::col ( ) const
inline

Get column offset.

template<class Subclass>
sdt honey::matrix::priv::StorageBlock< Subclass >::cols ( ) const
inline

Get column size.

template<class Subclass>
ElemT* honey::matrix::priv::StorageBlock< Subclass >::data ( ) const
inline

Get as array. Top-left corner of block sub-section is at index 0.

template<class Subclass>
void honey::matrix::priv::StorageBlock< Subclass >::initBlock ( MatrixP m,
sdt  row,
sdt  col,
sdt  rows,
sdt  cols 
)
inlineprotected
template<class Subclass>
ElemT& honey::matrix::priv::StorageBlock< Subclass >::operator() ( sdt  i) const
inline
template<class Subclass>
ElemT& honey::matrix::priv::StorageBlock< Subclass >::operator() ( sdt  row,
sdt  col 
) const
inline
template<class Subclass>
ElemT* honey::matrix::priv::StorageBlock< Subclass >::operator[] ( sdt  row) const
inline
template<class Subclass>
MatrixP& honey::matrix::priv::StorageBlock< Subclass >::parent ( ) const
inline

Get parent matrix that contains this sub-block.

template<class Subclass>
sdt honey::matrix::priv::StorageBlock< Subclass >::row ( ) const
inline

Get row offset.

template<class Subclass>
sdt honey::matrix::priv::StorageBlock< Subclass >::rows ( ) const
inline

Get row size.

template<class Subclass>
sdt honey::matrix::priv::StorageBlock< Subclass >::size ( ) const
inline

Get size.


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