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

boost::numeric::ublas::indexed_iterator1< C, IC > Class Template Reference

A class implementing an indexed random access iterator of a matrix. More...

#include <iterator.hpp>

Inheritance diagram for boost::numeric::ublas::indexed_iterator1< C, IC >:
Collaboration diagram for boost::numeric::ublas::indexed_iterator1< C, IC >:

List of all members.

Public Types

typedef C container_type
typedef C::difference_type derived_difference_type
typedef indexed_iterator1< C, IC > derived_iterator_type
typedef C::value_type derived_value_type
typedef
container_type::difference_type 
difference_type
typedef indexed_iterator2
< container_type,
iterator_category
dual_iterator_type
typedef reverse_iterator_base2
< dual_iterator_type
dual_reverse_iterator_type
typedef IC iterator_category
typedef container_type::reference reference
typedef container_type::size_type size_type
typedef container_type::value_type value_type

Public Member Functions

BOOST_UBLAS_INLINE indexed_iterator1 ()
BOOST_UBLAS_INLINE indexed_iterator1 (container_type &c, size_type it1, size_type it2)
BOOST_UBLAS_INLINE
container_reference
assign (container_type *c)
BOOST_UBLAS_INLINE
dual_iterator_type 
begin () const
BOOST_UBLAS_INLINE
dual_iterator_type 
end () const
BOOST_UBLAS_INLINE size_type index1 () const
BOOST_UBLAS_INLINE size_type index2 () const
BOOST_UBLAS_INLINE bool operator!= (const derived_iterator_type &it) const
BOOST_UBLAS_INLINE container_typeoperator() () const
BOOST_UBLAS_INLINE reference operator* () const
BOOST_UBLAS_INLINE
derived_iterator_type 
operator+ (derived_difference_type n) const
BOOST_UBLAS_INLINE
derived_iterator_type 
operator++ (int)
BOOST_UBLAS_INLINE
indexed_iterator1
operator++ ()
BOOST_UBLAS_INLINE
indexed_iterator1
operator+= (difference_type n)
BOOST_UBLAS_INLINE
derived_iterator_type 
operator- (derived_difference_type n) const
BOOST_UBLAS_INLINE difference_type operator- (const indexed_iterator1 &it) const
BOOST_UBLAS_INLINE
indexed_iterator1
operator-- ()
BOOST_UBLAS_INLINE
derived_iterator_type 
operator-- (int)
BOOST_UBLAS_INLINE
indexed_iterator1
operator-= (difference_type n)
BOOST_UBLAS_INLINE bool operator< (const indexed_iterator1 &it) const
BOOST_UBLAS_INLINE bool operator<= (const derived_iterator_type &it) const
BOOST_UBLAS_INLINE
indexed_iterator1
operator= (const indexed_iterator1 &it)
BOOST_UBLAS_INLINE bool operator== (const indexed_iterator1 &it) const
BOOST_UBLAS_INLINE bool operator> (const derived_iterator_type &it) const
BOOST_UBLAS_INLINE bool operator>= (const derived_iterator_type &it) const
BOOST_UBLAS_INLINE reference operator[] (difference_type n) const
BOOST_UBLAS_INLINE
dual_reverse_iterator_type 
rbegin () const
BOOST_UBLAS_INLINE
dual_reverse_iterator_type 
rend () const
BOOST_UBLAS_INLINE bool same_closure (const container_reference &cr) const

Private Attributes

size_type it1_
size_type it2_

Friends

BOOST_UBLAS_INLINE friend
derived_iterator_type 
operator+ (const derived_iterator_type &d, derived_difference_type n)
BOOST_UBLAS_INLINE friend
derived_iterator_type 
operator+ (derived_difference_type n, const derived_iterator_type &d)
BOOST_UBLAS_INLINE friend
derived_iterator_type 
operator++ (derived_iterator_type &d, int)
BOOST_UBLAS_INLINE friend
derived_iterator_type 
operator- (const derived_iterator_type &d, derived_difference_type n)
BOOST_UBLAS_INLINE friend
derived_iterator_type 
operator-- (derived_iterator_type &d, int)

Detailed Description

template<class C, class IC>
class boost::numeric::ublas::indexed_iterator1< C, IC >

A class implementing an indexed random access iterator of a matrix.

Parameters:
Cthe (mutable) container type
ICthe iterator category

This class implements a random access iterator. The current position is stored as two unsigned integers it1_ and it2_ and the values are accessed via operator()(it1_, it2_) of the container. The iterator changes the first index.

uBLAS extension: index1(), index2() and access to the dual iterator via begin(), end(), rbegin() and rend()

Note: The container has to support the

 find2(rank, i, j) 

method

Definition at line 872 of file iterator.hpp.


Member Typedef Documentation

template<class C , class IC >
typedef C boost::numeric::ublas::indexed_iterator1< C, IC >::container_type

Reimplemented from boost::numeric::ublas::container_reference< C >.

Definition at line 879 of file iterator.hpp.

template<class C , class IC >
typedef IC boost::numeric::ublas::indexed_iterator1< C, IC >::iterator_category

Definition at line 880 of file iterator.hpp.

template<class C , class IC >
typedef container_type::size_type boost::numeric::ublas::indexed_iterator1< C, IC >::size_type

Definition at line 881 of file iterator.hpp.

template<class C , class IC >
typedef container_type::difference_type boost::numeric::ublas::indexed_iterator1< C, IC >::difference_type

Definition at line 882 of file iterator.hpp.

template<class C , class IC >
typedef container_type::value_type boost::numeric::ublas::indexed_iterator1< C, IC >::value_type

Definition at line 883 of file iterator.hpp.

template<class C , class IC >
typedef container_type::reference boost::numeric::ublas::indexed_iterator1< C, IC >::reference

Definition at line 884 of file iterator.hpp.

Definition at line 886 of file iterator.hpp.

Definition at line 887 of file iterator.hpp.

typedef indexed_iterator1< C, IC > boost::numeric::ublas::random_access_iterator_base< IC, indexed_iterator1< C, IC > , C::value_type , C::difference_type >::derived_iterator_type [inherited]

Definition at line 205 of file iterator.hpp.

typedef C::value_type boost::numeric::ublas::random_access_iterator_base< IC, indexed_iterator1< C, IC > , C::value_type , C::difference_type >::derived_value_type [inherited]

Definition at line 206 of file iterator.hpp.

typedef C::difference_type boost::numeric::ublas::random_access_iterator_base< IC, indexed_iterator1< C, IC > , C::value_type , C::difference_type >::derived_difference_type [inherited]

Definition at line 207 of file iterator.hpp.


Constructor & Destructor Documentation

template<class C , class IC >
BOOST_UBLAS_INLINE boost::numeric::ublas::indexed_iterator1< C, IC >::indexed_iterator1 ( ) [inline]

Definition at line 891 of file iterator.hpp.

template<class C , class IC >
BOOST_UBLAS_INLINE boost::numeric::ublas::indexed_iterator1< C, IC >::indexed_iterator1 ( container_type c,
size_type  it1,
size_type  it2 
) [inline]

Definition at line 894 of file iterator.hpp.


Member Function Documentation

template<class C , class IC >
BOOST_UBLAS_INLINE indexed_iterator1& boost::numeric::ublas::indexed_iterator1< C, IC >::operator++ ( ) [inline]

Definition at line 899 of file iterator.hpp.

template<class C , class IC >
BOOST_UBLAS_INLINE indexed_iterator1& boost::numeric::ublas::indexed_iterator1< C, IC >::operator-- ( ) [inline]

Definition at line 904 of file iterator.hpp.

template<class C , class IC >
BOOST_UBLAS_INLINE indexed_iterator1& boost::numeric::ublas::indexed_iterator1< C, IC >::operator+= ( difference_type  n) [inline]

Definition at line 909 of file iterator.hpp.

template<class C , class IC >
BOOST_UBLAS_INLINE indexed_iterator1& boost::numeric::ublas::indexed_iterator1< C, IC >::operator-= ( difference_type  n) [inline]

Definition at line 914 of file iterator.hpp.

template<class C , class IC >
BOOST_UBLAS_INLINE difference_type boost::numeric::ublas::indexed_iterator1< C, IC >::operator- ( const indexed_iterator1< C, IC > &  it) const [inline]

Definition at line 919 of file iterator.hpp.

template<class C , class IC >
BOOST_UBLAS_INLINE reference boost::numeric::ublas::indexed_iterator1< C, IC >::operator* ( ) const [inline]

Definition at line 927 of file iterator.hpp.

template<class C , class IC >
BOOST_UBLAS_INLINE reference boost::numeric::ublas::indexed_iterator1< C, IC >::operator[] ( difference_type  n) const [inline]

Definition at line 933 of file iterator.hpp.

template<class C , class IC >
BOOST_UBLAS_INLINE size_type boost::numeric::ublas::indexed_iterator1< C, IC >::index1 ( ) const [inline]

Definition at line 939 of file iterator.hpp.

template<class C , class IC >
BOOST_UBLAS_INLINE size_type boost::numeric::ublas::indexed_iterator1< C, IC >::index2 ( ) const [inline]

Definition at line 943 of file iterator.hpp.

template<class C , class IC >
BOOST_UBLAS_INLINE dual_iterator_type boost::numeric::ublas::indexed_iterator1< C, IC >::begin ( ) const [inline]

Definition at line 948 of file iterator.hpp.

template<class C , class IC >
BOOST_UBLAS_INLINE dual_iterator_type boost::numeric::ublas::indexed_iterator1< C, IC >::end ( ) const [inline]

Definition at line 952 of file iterator.hpp.

template<class C , class IC >
BOOST_UBLAS_INLINE dual_reverse_iterator_type boost::numeric::ublas::indexed_iterator1< C, IC >::rbegin ( ) const [inline]

Definition at line 956 of file iterator.hpp.

template<class C , class IC >
BOOST_UBLAS_INLINE dual_reverse_iterator_type boost::numeric::ublas::indexed_iterator1< C, IC >::rend ( ) const [inline]

Definition at line 960 of file iterator.hpp.

template<class C , class IC >
BOOST_UBLAS_INLINE indexed_iterator1& boost::numeric::ublas::indexed_iterator1< C, IC >::operator= ( const indexed_iterator1< C, IC > &  it) [inline]

Definition at line 966 of file iterator.hpp.

template<class C , class IC >
BOOST_UBLAS_INLINE bool boost::numeric::ublas::indexed_iterator1< C, IC >::operator== ( const indexed_iterator1< C, IC > &  it) const [inline]

Definition at line 977 of file iterator.hpp.

template<class C , class IC >
BOOST_UBLAS_INLINE bool boost::numeric::ublas::indexed_iterator1< C, IC >::operator< ( const indexed_iterator1< C, IC > &  it) const [inline]

Definition at line 983 of file iterator.hpp.

template<class C>
BOOST_UBLAS_INLINE container_type& boost::numeric::ublas::container_reference< C >::operator() ( ) const [inline, inherited]

Definition at line 80 of file iterator.hpp.

template<class C>
BOOST_UBLAS_INLINE container_reference& boost::numeric::ublas::container_reference< C >::assign ( container_type c) [inline, inherited]

Definition at line 85 of file iterator.hpp.

template<class C>
BOOST_UBLAS_INLINE bool boost::numeric::ublas::container_reference< C >::same_closure ( const container_reference< C > &  cr) const [inline, inherited]

Definition at line 92 of file iterator.hpp.

BOOST_UBLAS_INLINE derived_iterator_type boost::numeric::ublas::random_access_iterator_base< IC, indexed_iterator1< C, IC > , C::value_type , C::difference_type >::operator++ ( int  ) [inline, inherited]

Definition at line 220 of file iterator.hpp.

BOOST_UBLAS_INLINE derived_iterator_type boost::numeric::ublas::random_access_iterator_base< IC, indexed_iterator1< C, IC > , C::value_type , C::difference_type >::operator-- ( int  ) [inline, inherited]

Definition at line 233 of file iterator.hpp.

BOOST_UBLAS_INLINE derived_iterator_type boost::numeric::ublas::random_access_iterator_base< IC, indexed_iterator1< C, IC > , C::value_type , C::difference_type >::operator+ ( derived_difference_type  n) const [inline, inherited]

Definition at line 246 of file iterator.hpp.

BOOST_UBLAS_INLINE derived_iterator_type boost::numeric::ublas::random_access_iterator_base< IC, indexed_iterator1< C, IC > , C::value_type , C::difference_type >::operator- ( derived_difference_type  n) const [inline, inherited]

Definition at line 261 of file iterator.hpp.

BOOST_UBLAS_INLINE bool boost::numeric::ublas::random_access_iterator_base< IC, indexed_iterator1< C, IC > , C::value_type , C::difference_type >::operator!= ( const derived_iterator_type it) const [inline, inherited]

Definition at line 273 of file iterator.hpp.

BOOST_UBLAS_INLINE bool boost::numeric::ublas::random_access_iterator_base< IC, indexed_iterator1< C, IC > , C::value_type , C::difference_type >::operator<= ( const derived_iterator_type it) const [inline, inherited]

Definition at line 278 of file iterator.hpp.

BOOST_UBLAS_INLINE bool boost::numeric::ublas::random_access_iterator_base< IC, indexed_iterator1< C, IC > , C::value_type , C::difference_type >::operator>= ( const derived_iterator_type it) const [inline, inherited]

Definition at line 283 of file iterator.hpp.

BOOST_UBLAS_INLINE bool boost::numeric::ublas::random_access_iterator_base< IC, indexed_iterator1< C, IC > , C::value_type , C::difference_type >::operator> ( const derived_iterator_type it) const [inline, inherited]

Definition at line 288 of file iterator.hpp.


Friends And Related Function Documentation

BOOST_UBLAS_INLINE friend derived_iterator_type operator++ ( derived_iterator_type d,
int   
) [friend, inherited]

Definition at line 227 of file iterator.hpp.

BOOST_UBLAS_INLINE friend derived_iterator_type operator-- ( derived_iterator_type d,
int   
) [friend, inherited]

Definition at line 240 of file iterator.hpp.

BOOST_UBLAS_INLINE friend derived_iterator_type operator+ ( const derived_iterator_type d,
derived_difference_type  n 
) [friend, inherited]

Definition at line 251 of file iterator.hpp.

BOOST_UBLAS_INLINE friend derived_iterator_type operator+ ( derived_difference_type  n,
const derived_iterator_type d 
) [friend, inherited]

Definition at line 256 of file iterator.hpp.

BOOST_UBLAS_INLINE friend derived_iterator_type operator- ( const derived_iterator_type d,
derived_difference_type  n 
) [friend, inherited]

Definition at line 266 of file iterator.hpp.


Member Data Documentation

template<class C , class IC >
size_type boost::numeric::ublas::indexed_iterator1< C, IC >::it1_ [private]

Definition at line 990 of file iterator.hpp.

template<class C , class IC >
size_type boost::numeric::ublas::indexed_iterator1< C, IC >::it2_ [private]

Definition at line 991 of file iterator.hpp.


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