Boost.uBlas 1.49
Linear Algebra in C++: matrices, vectors and numeric algorithms

boost::numeric::ublas::matrix_vector_indirect< M, IA > Class Template Reference

#include <matrix_proxy.hpp>

Inheritance diagram for boost::numeric::ublas::matrix_vector_indirect< M, IA >:
Collaboration diagram for boost::numeric::ublas::matrix_vector_indirect< M, IA >:

List of all members.

Classes

class  const_iterator
class  iterator

Public Types

typedef self_type closure_type
typedef const self_type const_closure_type
typedef M::const_reference const_reference
typedef reverse_iterator_base
< const_iterator
const_reverse_iterator
typedef M::difference_type difference_type
typedef matrix_vector_indirect
< M, IA > 
expression_type
typedef IA indirect_array_type
typedef boost::mpl::if_
< boost::is_const< M >
, typename
M::const_closure_type,
typename M::closure_type >
::type 
matrix_closure_type
typedef M matrix_type
typedef boost::mpl::if_
< boost::is_const< M >
, typename M::const_reference,
typename M::reference >::type 
reference
typedef reverse_iterator_base
< iterator
reverse_iterator
typedef M::size_type size_type
typedef
storage_restrict_traits
< typename M::storage_category,
dense_proxy_tag >
::storage_category 
storage_category
typedef vector_tag type_category
typedef M::value_type value_type

Public Member Functions

BOOST_UBLAS_INLINE matrix_vector_indirect (matrix_type &data, size_type size)
BOOST_UBLAS_INLINE matrix_vector_indirect (matrix_type &data, const indirect_array_type &ia1, const indirect_array_type &ia2)
template<class AE >
BOOST_UBLAS_INLINE
matrix_vector_indirect
assign (const vector_expression< AE > &ae)
BOOST_UBLAS_INLINE
matrix_vector_indirect
assign_temporary (matrix_vector_indirect &mvi)
BOOST_UBLAS_INLINE const_iterator begin () const
BOOST_UBLAS_INLINE iterator begin ()
BOOST_UBLAS_INLINE const
matrix_closure_type
data () const
BOOST_UBLAS_INLINE
matrix_closure_type
data ()
BOOST_UBLAS_INLINE iterator end ()
BOOST_UBLAS_INLINE const_iterator end () const
BOOST_UBLAS_INLINE const_iterator find (size_type i) const
BOOST_UBLAS_INLINE iterator find (size_type i)
BOOST_UBLAS_INLINE const
indirect_array_type
indirect1 () const
BOOST_UBLAS_INLINE
indirect_array_type
indirect1 ()
BOOST_UBLAS_INLINE const
indirect_array_type
indirect2 () const
BOOST_UBLAS_INLINE
indirect_array_type
indirect2 ()
template<class AE >
BOOST_UBLAS_INLINE
matrix_vector_indirect
minus_assign (const vector_expression< AE > &ae)
BOOST_UBLAS_INLINE const
expression_type
operator() () const
BOOST_UBLAS_INLINE
expression_type
operator() ()
BOOST_UBLAS_INLINE const_reference operator() (size_type i) const
BOOST_UBLAS_INLINE reference operator() (size_type i)
template<class AT >
BOOST_UBLAS_INLINE
matrix_vector_indirect
operator*= (const AT &at)
template<class AE >
BOOST_UBLAS_INLINE
matrix_vector_indirect
operator+= (const vector_expression< AE > &ae)
template<class AE >
BOOST_UBLAS_INLINE
matrix_vector_indirect
operator-= (const vector_expression< AE > &ae)
template<class AT >
BOOST_UBLAS_INLINE
matrix_vector_indirect
operator/= (const AT &at)
template<class AE >
BOOST_UBLAS_INLINE
matrix_vector_indirect
operator= (const vector_expression< AE > &ae)
BOOST_UBLAS_INLINE
matrix_vector_indirect
operator= (const matrix_vector_indirect &mvi)
BOOST_UBLAS_INLINE bool operator== (const matrix_vector_indirect &mvi) const
BOOST_UBLAS_INLINE const_reference operator[] (size_type i) const
BOOST_UBLAS_INLINE reference operator[] (size_type i)
template<class AE >
BOOST_UBLAS_INLINE
matrix_vector_indirect
plus_assign (const vector_expression< AE > &ae)
BOOST_UBLAS_INLINE
const_reverse_iterator 
rbegin () const
BOOST_UBLAS_INLINE reverse_iterator rbegin ()
BOOST_UBLAS_INLINE reverse_iterator rend ()
BOOST_UBLAS_INLINE
const_reverse_iterator 
rend () const
BOOST_UBLAS_INLINE bool same_closure (const matrix_vector_indirect &mvi) const
BOOST_UBLAS_INLINE size_type size () const
BOOST_UBLAS_INLINE void swap (matrix_vector_indirect mvi)

Static Public Attributes

static const unsigned complexity

Private Types

typedef IA::const_iterator const_subiterator1_type
typedef IA::const_iterator const_subiterator2_type
typedef matrix_vector_indirect
< M, IA > 
self_type
typedef IA::const_iterator subiterator1_type
typedef IA::const_iterator subiterator2_type

Private Attributes

matrix_closure_type data_
indirect_array_type ia1_
indirect_array_type ia2_

Friends

BOOST_UBLAS_INLINE friend void swap (matrix_vector_indirect mvi1, matrix_vector_indirect mvi2)

Detailed Description

template<class M, class IA>
class boost::numeric::ublas::matrix_vector_indirect< M, IA >

Definition at line 1862 of file matrix_proxy.hpp.


Member Typedef Documentation

template<class M , class IA >
typedef matrix_vector_indirect<M, IA> boost::numeric::ublas::matrix_vector_indirect< M, IA >::self_type [private]

Definition at line 1865 of file matrix_proxy.hpp.

template<class M , class IA >
typedef M boost::numeric::ublas::matrix_vector_indirect< M, IA >::matrix_type

Definition at line 1870 of file matrix_proxy.hpp.

template<class M , class IA >
typedef IA boost::numeric::ublas::matrix_vector_indirect< M, IA >::indirect_array_type

Definition at line 1871 of file matrix_proxy.hpp.

template<class M , class IA >
typedef M::size_type boost::numeric::ublas::matrix_vector_indirect< M, IA >::size_type

Definition at line 1872 of file matrix_proxy.hpp.

template<class M , class IA >
typedef M::difference_type boost::numeric::ublas::matrix_vector_indirect< M, IA >::difference_type

Definition at line 1873 of file matrix_proxy.hpp.

template<class M , class IA >
typedef M::value_type boost::numeric::ublas::matrix_vector_indirect< M, IA >::value_type

Definition at line 1874 of file matrix_proxy.hpp.

template<class M , class IA >
typedef M::const_reference boost::numeric::ublas::matrix_vector_indirect< M, IA >::const_reference

Definition at line 1875 of file matrix_proxy.hpp.

template<class M , class IA >
typedef boost::mpl::if_<boost::is_const<M>, typename M::const_reference, typename M::reference>::type boost::numeric::ublas::matrix_vector_indirect< M, IA >::reference

Definition at line 1878 of file matrix_proxy.hpp.

template<class M , class IA >
typedef boost::mpl::if_<boost::is_const<M>, typename M::const_closure_type, typename M::closure_type>::type boost::numeric::ublas::matrix_vector_indirect< M, IA >::matrix_closure_type

Definition at line 1881 of file matrix_proxy.hpp.

template<class M , class IA >
typedef const self_type boost::numeric::ublas::matrix_vector_indirect< M, IA >::const_closure_type

Definition at line 1882 of file matrix_proxy.hpp.

template<class M , class IA >
typedef self_type boost::numeric::ublas::matrix_vector_indirect< M, IA >::closure_type

Definition at line 1883 of file matrix_proxy.hpp.

template<class M , class IA >
typedef storage_restrict_traits<typename M::storage_category, dense_proxy_tag>::storage_category boost::numeric::ublas::matrix_vector_indirect< M, IA >::storage_category

Definition at line 1885 of file matrix_proxy.hpp.

template<class M , class IA >
typedef IA::const_iterator boost::numeric::ublas::matrix_vector_indirect< M, IA >::const_subiterator1_type [private]

Definition at line 2053 of file matrix_proxy.hpp.

template<class M , class IA >
typedef IA::const_iterator boost::numeric::ublas::matrix_vector_indirect< M, IA >::subiterator1_type [private]

Definition at line 2054 of file matrix_proxy.hpp.

template<class M , class IA >
typedef IA::const_iterator boost::numeric::ublas::matrix_vector_indirect< M, IA >::const_subiterator2_type [private]

Definition at line 2055 of file matrix_proxy.hpp.

template<class M , class IA >
typedef IA::const_iterator boost::numeric::ublas::matrix_vector_indirect< M, IA >::subiterator2_type [private]

Definition at line 2056 of file matrix_proxy.hpp.

Definition at line 2290 of file matrix_proxy.hpp.

Definition at line 2291 of file matrix_proxy.hpp.


Constructor & Destructor Documentation

template<class M , class IA >
BOOST_UBLAS_INLINE boost::numeric::ublas::matrix_vector_indirect< M, IA >::matrix_vector_indirect ( matrix_type data,
size_type  size 
) [inline]

Definition at line 1889 of file matrix_proxy.hpp.

template<class M , class IA >
BOOST_UBLAS_INLINE boost::numeric::ublas::matrix_vector_indirect< M, IA >::matrix_vector_indirect ( matrix_type data,
const indirect_array_type ia1,
const indirect_array_type ia2 
) [inline]

Definition at line 1892 of file matrix_proxy.hpp.


Member Function Documentation

template<class M , class IA >
BOOST_UBLAS_INLINE size_type boost::numeric::ublas::matrix_vector_indirect< M, IA >::size ( ) const [inline]

Definition at line 1900 of file matrix_proxy.hpp.

template<class M , class IA >
BOOST_UBLAS_INLINE const indirect_array_type& boost::numeric::ublas::matrix_vector_indirect< M, IA >::indirect1 ( ) const [inline]

Definition at line 1904 of file matrix_proxy.hpp.

template<class M , class IA >
BOOST_UBLAS_INLINE indirect_array_type& boost::numeric::ublas::matrix_vector_indirect< M, IA >::indirect1 ( ) [inline]

Definition at line 1908 of file matrix_proxy.hpp.

template<class M , class IA >
BOOST_UBLAS_INLINE const indirect_array_type& boost::numeric::ublas::matrix_vector_indirect< M, IA >::indirect2 ( ) const [inline]

Definition at line 1912 of file matrix_proxy.hpp.

template<class M , class IA >
BOOST_UBLAS_INLINE indirect_array_type& boost::numeric::ublas::matrix_vector_indirect< M, IA >::indirect2 ( ) [inline]

Definition at line 1916 of file matrix_proxy.hpp.

template<class M , class IA >
BOOST_UBLAS_INLINE const matrix_closure_type& boost::numeric::ublas::matrix_vector_indirect< M, IA >::data ( ) const [inline]

Definition at line 1922 of file matrix_proxy.hpp.

template<class M , class IA >
BOOST_UBLAS_INLINE matrix_closure_type& boost::numeric::ublas::matrix_vector_indirect< M, IA >::data ( ) [inline]

Definition at line 1926 of file matrix_proxy.hpp.

template<class M , class IA >
BOOST_UBLAS_INLINE const_reference boost::numeric::ublas::matrix_vector_indirect< M, IA >::operator() ( size_type  i) const [inline]

Definition at line 1933 of file matrix_proxy.hpp.

template<class M , class IA >
BOOST_UBLAS_INLINE reference boost::numeric::ublas::matrix_vector_indirect< M, IA >::operator() ( size_type  i) [inline]

Definition at line 1937 of file matrix_proxy.hpp.

template<class M , class IA >
BOOST_UBLAS_INLINE const_reference boost::numeric::ublas::matrix_vector_indirect< M, IA >::operator[] ( size_type  i) const [inline]

Definition at line 1942 of file matrix_proxy.hpp.

template<class M , class IA >
BOOST_UBLAS_INLINE reference boost::numeric::ublas::matrix_vector_indirect< M, IA >::operator[] ( size_type  i) [inline]

Definition at line 1946 of file matrix_proxy.hpp.

template<class M , class IA >
BOOST_UBLAS_INLINE matrix_vector_indirect& boost::numeric::ublas::matrix_vector_indirect< M, IA >::operator= ( const matrix_vector_indirect< M, IA > &  mvi) [inline]

Definition at line 1963 of file matrix_proxy.hpp.

template<class M , class IA >
BOOST_UBLAS_INLINE matrix_vector_indirect& boost::numeric::ublas::matrix_vector_indirect< M, IA >::assign_temporary ( matrix_vector_indirect< M, IA > &  mvi) [inline]

Definition at line 1969 of file matrix_proxy.hpp.

template<class M , class IA >
template<class AE >
BOOST_UBLAS_INLINE matrix_vector_indirect& boost::numeric::ublas::matrix_vector_indirect< M, IA >::operator= ( const vector_expression< AE > &  ae) [inline]

Definition at line 1976 of file matrix_proxy.hpp.

template<class M , class IA >
template<class AE >
BOOST_UBLAS_INLINE matrix_vector_indirect& boost::numeric::ublas::matrix_vector_indirect< M, IA >::assign ( const vector_expression< AE > &  ae) [inline]

Definition at line 1982 of file matrix_proxy.hpp.

template<class M , class IA >
template<class AE >
BOOST_UBLAS_INLINE matrix_vector_indirect& boost::numeric::ublas::matrix_vector_indirect< M, IA >::operator+= ( const vector_expression< AE > &  ae) [inline]

Definition at line 1988 of file matrix_proxy.hpp.

template<class M , class IA >
template<class AE >
BOOST_UBLAS_INLINE matrix_vector_indirect& boost::numeric::ublas::matrix_vector_indirect< M, IA >::plus_assign ( const vector_expression< AE > &  ae) [inline]

Definition at line 1994 of file matrix_proxy.hpp.

template<class M , class IA >
template<class AE >
BOOST_UBLAS_INLINE matrix_vector_indirect& boost::numeric::ublas::matrix_vector_indirect< M, IA >::operator-= ( const vector_expression< AE > &  ae) [inline]

Definition at line 2000 of file matrix_proxy.hpp.

template<class M , class IA >
template<class AE >
BOOST_UBLAS_INLINE matrix_vector_indirect& boost::numeric::ublas::matrix_vector_indirect< M, IA >::minus_assign ( const vector_expression< AE > &  ae) [inline]

Definition at line 2006 of file matrix_proxy.hpp.

template<class M , class IA >
template<class AT >
BOOST_UBLAS_INLINE matrix_vector_indirect& boost::numeric::ublas::matrix_vector_indirect< M, IA >::operator*= ( const AT &  at) [inline]

Definition at line 2012 of file matrix_proxy.hpp.

template<class M , class IA >
template<class AT >
BOOST_UBLAS_INLINE matrix_vector_indirect& boost::numeric::ublas::matrix_vector_indirect< M, IA >::operator/= ( const AT &  at) [inline]

Definition at line 2018 of file matrix_proxy.hpp.

template<class M , class IA >
BOOST_UBLAS_INLINE bool boost::numeric::ublas::matrix_vector_indirect< M, IA >::same_closure ( const matrix_vector_indirect< M, IA > &  mvi) const [inline]

Definition at line 2025 of file matrix_proxy.hpp.

template<class M , class IA >
BOOST_UBLAS_INLINE bool boost::numeric::ublas::matrix_vector_indirect< M, IA >::operator== ( const matrix_vector_indirect< M, IA > &  mvi) const [inline]

Definition at line 2031 of file matrix_proxy.hpp.

template<class M , class IA >
BOOST_UBLAS_INLINE void boost::numeric::ublas::matrix_vector_indirect< M, IA >::swap ( matrix_vector_indirect< M, IA >  mvi) [inline]

Definition at line 2037 of file matrix_proxy.hpp.

template<class M , class IA >
BOOST_UBLAS_INLINE const_iterator boost::numeric::ublas::matrix_vector_indirect< M, IA >::find ( size_type  i) const [inline]

Definition at line 2064 of file matrix_proxy.hpp.

template<class M , class IA >
BOOST_UBLAS_INLINE iterator boost::numeric::ublas::matrix_vector_indirect< M, IA >::find ( size_type  i) [inline]

Definition at line 2068 of file matrix_proxy.hpp.

template<class M , class IA >
BOOST_UBLAS_INLINE const_iterator boost::numeric::ublas::matrix_vector_indirect< M, IA >::begin ( ) const [inline]

Definition at line 2174 of file matrix_proxy.hpp.

template<class M , class IA >
BOOST_UBLAS_INLINE const_iterator boost::numeric::ublas::matrix_vector_indirect< M, IA >::end ( ) const [inline]

Definition at line 2178 of file matrix_proxy.hpp.

template<class M , class IA >
BOOST_UBLAS_INLINE iterator boost::numeric::ublas::matrix_vector_indirect< M, IA >::begin ( ) [inline]

Definition at line 2281 of file matrix_proxy.hpp.

template<class M , class IA >
BOOST_UBLAS_INLINE iterator boost::numeric::ublas::matrix_vector_indirect< M, IA >::end ( ) [inline]

Definition at line 2285 of file matrix_proxy.hpp.

template<class M , class IA >
BOOST_UBLAS_INLINE const_reverse_iterator boost::numeric::ublas::matrix_vector_indirect< M, IA >::rbegin ( ) const [inline]

Definition at line 2294 of file matrix_proxy.hpp.

template<class M , class IA >
BOOST_UBLAS_INLINE const_reverse_iterator boost::numeric::ublas::matrix_vector_indirect< M, IA >::rend ( ) const [inline]

Definition at line 2298 of file matrix_proxy.hpp.

template<class M , class IA >
BOOST_UBLAS_INLINE reverse_iterator boost::numeric::ublas::matrix_vector_indirect< M, IA >::rbegin ( ) [inline]

Definition at line 2302 of file matrix_proxy.hpp.

template<class M , class IA >
BOOST_UBLAS_INLINE reverse_iterator boost::numeric::ublas::matrix_vector_indirect< M, IA >::rend ( ) [inline]

Definition at line 2306 of file matrix_proxy.hpp.

BOOST_UBLAS_INLINE const expression_type& boost::numeric::ublas::vector_expression< matrix_vector_indirect< M, IA > >::operator() ( ) const [inline, inherited]

Definition at line 194 of file expression_types.hpp.

BOOST_UBLAS_INLINE expression_type& boost::numeric::ublas::vector_expression< matrix_vector_indirect< M, IA > >::operator() ( ) [inline, inherited]

Definition at line 198 of file expression_types.hpp.


Friends And Related Function Documentation

template<class M , class IA >
BOOST_UBLAS_INLINE friend void swap ( matrix_vector_indirect< M, IA >  mvi1,
matrix_vector_indirect< M, IA >  mvi2 
) [friend]

Definition at line 2046 of file matrix_proxy.hpp.


Member Data Documentation

template<class M , class IA >
matrix_closure_type boost::numeric::ublas::matrix_vector_indirect< M, IA >::data_ [private]

Definition at line 2311 of file matrix_proxy.hpp.

template<class M , class IA >
indirect_array_type boost::numeric::ublas::matrix_vector_indirect< M, IA >::ia1_ [private]

Definition at line 2312 of file matrix_proxy.hpp.

template<class M , class IA >
indirect_array_type boost::numeric::ublas::matrix_vector_indirect< M, IA >::ia2_ [private]

Definition at line 2313 of file matrix_proxy.hpp.

const unsigned boost::numeric::ublas::vector_expression< matrix_vector_indirect< M, IA > >::complexity [static, inherited]

Definition at line 186 of file expression_types.hpp.


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