CMR  1.3.0
Public Types | Public Member Functions | List of all members
tu::matrix_modified< MatrixType, ModifierType > Class Template Reference

#include <matrix_modified.hpp>

Inheritance diagram for tu::matrix_modified< MatrixType, ModifierType >:

Public Types

typedef matrix_modified< MatrixType, ModifierType > self_type
 
typedef MatrixType matrix_type
 
typedef MatrixType::size_type size_type
 
typedef MatrixType::difference_type difference_type
 
typedef ModifierType::value_type value_type
 
typedef MatrixType::const_reference const_reference
 
typedef MatrixType::const_reference reference
 
typedef MatrixType::const_closure_type matrix_closure_type
 
typedef const self_type const_closure_type
 
typedef self_type closure_type
 
typedef ModifierType modifier_type
 

Public Member Functions

 matrix_modified (const MatrixType &matrix, modifier_type &modifier)
 
size_type size1 () const
 
size_type size2 () const
 
MatrixType & data ()
 
modifier_typemodifier ()
 
value_type operator() (size_type i, size_type j) const
 

Detailed Description

template<typename MatrixType, typename ModifierType>
class tu::matrix_modified< MatrixType, ModifierType >

A matrix proxy which can modify arbitrary entries by attaching a separator functor to it.

Member Typedef Documentation

◆ closure_type

template<typename MatrixType , typename ModifierType >
typedef self_type tu::matrix_modified< MatrixType, ModifierType >::closure_type

◆ const_closure_type

template<typename MatrixType , typename ModifierType >
typedef const self_type tu::matrix_modified< MatrixType, ModifierType >::const_closure_type

◆ const_reference

template<typename MatrixType , typename ModifierType >
typedef MatrixType::const_reference tu::matrix_modified< MatrixType, ModifierType >::const_reference

◆ difference_type

template<typename MatrixType , typename ModifierType >
typedef MatrixType::difference_type tu::matrix_modified< MatrixType, ModifierType >::difference_type

◆ matrix_closure_type

template<typename MatrixType , typename ModifierType >
typedef MatrixType::const_closure_type tu::matrix_modified< MatrixType, ModifierType >::matrix_closure_type

◆ matrix_type

template<typename MatrixType , typename ModifierType >
typedef MatrixType tu::matrix_modified< MatrixType, ModifierType >::matrix_type

◆ modifier_type

template<typename MatrixType , typename ModifierType >
typedef ModifierType tu::matrix_modified< MatrixType, ModifierType >::modifier_type

◆ reference

template<typename MatrixType , typename ModifierType >
typedef MatrixType::const_reference tu::matrix_modified< MatrixType, ModifierType >::reference

◆ self_type

template<typename MatrixType , typename ModifierType >
typedef matrix_modified<MatrixType, ModifierType> tu::matrix_modified< MatrixType, ModifierType >::self_type

◆ size_type

template<typename MatrixType , typename ModifierType >
typedef MatrixType::size_type tu::matrix_modified< MatrixType, ModifierType >::size_type

◆ value_type

template<typename MatrixType , typename ModifierType >
typedef ModifierType::value_type tu::matrix_modified< MatrixType, ModifierType >::value_type

Constructor & Destructor Documentation

◆ matrix_modified()

template<typename MatrixType , typename ModifierType >
tu::matrix_modified< MatrixType, ModifierType >::matrix_modified ( const MatrixType &  matrix,
modifier_type modifier 
)
inline

Constructs the modified matrix.

Parameters
matrixThe orginal matrix
modifierModifier to calculate each entry

Member Function Documentation

◆ data()

template<typename MatrixType , typename ModifierType >
MatrixType& tu::matrix_modified< MatrixType, ModifierType >::data ( )
inline
Returns
Reference to the proxied matrix

◆ modifier()

template<typename MatrixType , typename ModifierType >
modifier_type& tu::matrix_modified< MatrixType, ModifierType >::modifier ( )
inline
Returns
The modifier instance

◆ operator()()

template<typename MatrixType , typename ModifierType >
value_type tu::matrix_modified< MatrixType, ModifierType >::operator() ( size_type  i,
size_type  j 
) const
inline

Access operator which calls the modifier to calculate the new value.

Parameters
iRow index
jColumn index
Returns
Modified entry

◆ size1()

template<typename MatrixType , typename ModifierType >
size_type tu::matrix_modified< MatrixType, ModifierType >::size1 ( ) const
inline
Returns
Height of the matrix

◆ size2()

template<typename MatrixType , typename ModifierType >
size_type tu::matrix_modified< MatrixType, ModifierType >::size2 ( ) const
inline
Returns
Width of the matrix

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