cml::et::MatrixXpr< ExprT > Class Template Reference

A placeholder for a matrix expression in the expression tree. More...

#include <matrix_expr.h>

Collaboration diagram for cml::et::MatrixXpr< ExprT >:

Collaboration graph
[legend]

List of all members.

Public Types

enum  { array_rows = ExprT::array_rows, array_cols = ExprT::array_cols }
 Record result size as an enum (if applicable). More...
typedef cml::et::not_assignable_tag assignable_tag
typedef result_type::basis_orient basis_orient
typedef expr_type expr_const_reference
typedef
expr_traits::const_reference 
expr_reference
typedef ExprTraits< ExprT > expr_traits
typedef MatrixXpr< ExprT > expr_type
typedef matrix_result_tag result_tag
typedef expr_traits::result_type result_type
typedef ExprT::size_tag size_tag
typedef result_type::temporary_type temporary_type
typedef ExprT::value_type value_type

Public Member Functions

value_type basis_element (size_t i, size_t j) const
 Return element j of basis vector i.
size_t cols () const
 Return number of columns in the expression (same as subexpression).
expr_reference expression () const
 Return reference to contained expression.
 MatrixXpr (const expr_type &e)
 Copy constructor.
 MatrixXpr (expr_reference expr)
 Construct from the subexpression to store.
value_type operator() (size_t i, size_t j) const
 Compute value at index i,j of the result matrix.
size_t rows () const
 Return number of rows in the expression (same as subexpression).
matrix_size size () const
 Return the expression size as a pair.

Protected Member Functions

value_type basis_element (size_t i, size_t j, col_basis) const
value_type basis_element (size_t i, size_t j, row_basis) const

Protected Attributes

expr_reference m_expr

Private Member Functions

expr_typeoperator= (const expr_type &)


Detailed Description

template<class ExprT>
class cml::et::MatrixXpr< ExprT >

A placeholder for a matrix expression in the expression tree.

Definition at line 40 of file matrix_expr.h.


Member Typedef Documentation

template<class ExprT>
typedef cml::et::not_assignable_tag cml::et::MatrixXpr< ExprT >::assignable_tag

Definition at line 69 of file matrix_expr.h.

template<class ExprT>
typedef result_type::basis_orient cml::et::MatrixXpr< ExprT >::basis_orient

Definition at line 63 of file matrix_expr.h.

template<class ExprT>
typedef expr_type cml::et::MatrixXpr< ExprT >::expr_const_reference

Definition at line 47 of file matrix_expr.h.

template<class ExprT>
typedef expr_traits::const_reference cml::et::MatrixXpr< ExprT >::expr_reference

Definition at line 57 of file matrix_expr.h.

template<class ExprT>
typedef ExprTraits<ExprT> cml::et::MatrixXpr< ExprT >::expr_traits

Definition at line 54 of file matrix_expr.h.

template<class ExprT>
typedef MatrixXpr<ExprT> cml::et::MatrixXpr< ExprT >::expr_type

Definition at line 44 of file matrix_expr.h.

template<class ExprT>
typedef matrix_result_tag cml::et::MatrixXpr< ExprT >::result_tag

Definition at line 50 of file matrix_expr.h.

template<class ExprT>
typedef expr_traits::result_type cml::et::MatrixXpr< ExprT >::result_type

Definition at line 60 of file matrix_expr.h.

template<class ExprT>
typedef ExprT::size_tag cml::et::MatrixXpr< ExprT >::size_tag

Definition at line 51 of file matrix_expr.h.

template<class ExprT>
typedef result_type::temporary_type cml::et::MatrixXpr< ExprT >::temporary_type

Definition at line 66 of file matrix_expr.h.

template<class ExprT>
typedef ExprT::value_type cml::et::MatrixXpr< ExprT >::value_type

Definition at line 49 of file matrix_expr.h.


Member Enumeration Documentation

template<class ExprT>
anonymous enum

Record result size as an enum (if applicable).

Enumerator:
array_rows 
array_cols 

Definition at line 75 of file matrix_expr.h.


Constructor & Destructor Documentation

template<class ExprT>
cml::et::MatrixXpr< ExprT >::MatrixXpr ( expr_reference  expr  )  [inline, explicit]

Construct from the subexpression to store.

Definition at line 112 of file matrix_expr.h.

template<class ExprT>
cml::et::MatrixXpr< ExprT >::MatrixXpr ( const expr_type e  )  [inline]

Copy constructor.

Definition at line 115 of file matrix_expr.h.


Member Function Documentation

template<class ExprT>
value_type cml::et::MatrixXpr< ExprT >::basis_element ( size_t  i,
size_t  j,
col_basis   
) const [inline, protected]

Definition at line 124 of file matrix_expr.h.

template<class ExprT>
value_type cml::et::MatrixXpr< ExprT >::basis_element ( size_t  i,
size_t  j,
row_basis   
) const [inline, protected]

Definition at line 120 of file matrix_expr.h.

template<class ExprT>
value_type cml::et::MatrixXpr< ExprT >::basis_element ( size_t  i,
size_t  j 
) const [inline]

Return element j of basis vector i.

Definition at line 104 of file matrix_expr.h.

template<class ExprT>
size_t cml::et::MatrixXpr< ExprT >::cols (  )  const [inline]

Return number of columns in the expression (same as subexpression).

Definition at line 91 of file matrix_expr.h.

References cml::et::MatrixXpr< ExprT >::m_expr.

Referenced by cml::et::ExprTraits< MatrixXpr< ExprT > >::cols(), cml::operator*(), and cml::et::MatrixXpr< ExprT >::size().

Here is the caller graph for this function:

template<class ExprT>
expr_reference cml::et::MatrixXpr< ExprT >::expression (  )  const [inline]

Return reference to contained expression.

Definition at line 96 of file matrix_expr.h.

References cml::et::MatrixXpr< ExprT >::m_expr.

Referenced by cml::col(), and cml::row().

Here is the caller graph for this function:

template<class ExprT>
value_type cml::et::MatrixXpr< ExprT >::operator() ( size_t  i,
size_t  j 
) const [inline]

Compute value at index i,j of the result matrix.

Definition at line 99 of file matrix_expr.h.

References cml::et::MatrixXpr< ExprT >::m_expr.

template<class ExprT>
expr_type& cml::et::MatrixXpr< ExprT >::operator= ( const expr_type  )  [private]

template<class ExprT>
size_t cml::et::MatrixXpr< ExprT >::rows (  )  const [inline]

Return number of rows in the expression (same as subexpression).

Definition at line 86 of file matrix_expr.h.

References cml::et::MatrixXpr< ExprT >::m_expr.

Referenced by cml::operator*(), cml::et::ExprTraits< MatrixXpr< ExprT > >::rows(), and cml::et::MatrixXpr< ExprT >::size().

Here is the caller graph for this function:

template<class ExprT>
matrix_size cml::et::MatrixXpr< ExprT >::size (  )  const [inline]

Return the expression size as a pair.

Definition at line 81 of file matrix_expr.h.

References cml::et::MatrixXpr< ExprT >::cols(), and cml::et::MatrixXpr< ExprT >::rows().

Referenced by cml::et::ExprTraits< MatrixXpr< ExprT > >::size().

Here is the call graph for this function:

Here is the caller graph for this function:


Member Data Documentation

template<class ExprT>
expr_reference cml::et::MatrixXpr< ExprT >::m_expr [protected]


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

Generated on Sat Jul 18 19:35:39 2009 for CML 1.0 by  doxygen 1.5.9