Dune::ConstArrayListIterator< T, N, A > Class Template Reference
[Common (foundation classes)]

A constant random access iterator for the Dune::ArrayList class. More...

#include <dune/common/arraylist.hh>

Inheritance diagram for Dune::ConstArrayListIterator< T, N, A >:
Inheritance graph

List of all members.

Public Types

enum  { chunkSize_ = (N > 0)? N : 1 }
typedef A::value_type MemberType
 The member type.
typedef A::difference_type difference_type
typedef A::size_type size_type
typedef A::reference reference
typedef A::const_reference const_reference
typedef ConstArrayListIterator
< T, N, A > 
DerivedType
 The type of derived iterator.
typedef const A::value_type Value
 The type of value accessed through the iterator.
typedef const A::value_type * Pointer
 The pointer to the Value.
typedef A::difference_type DifferenceType
 The type of the difference between two positions.
typedef A::const_reference Reference
 The type of the reference to the values accessed.

Public Member Functions

bool equals (const ConstArrayListIterator< MemberType, N, A > &other) const
 Comares to iterators.
void increment ()
 Increment the iterator.
void decrement ()
 decrement the iterator.
void advance (difference_type n)
difference_type distanceTo (const ConstArrayListIterator< T, N, A > &other) const
const_reference elementAt (size_type i) const
 Get the value of the list at an arbitrary position.
const_reference dereference () const
 Access the element at the current position.
const ConstArrayListIterator
< T, N, A > & 
operator= (const ConstArrayListIterator< T, N, A > &other)
 ConstArrayListIterator ()
 ConstArrayListIterator (const ArrayListIterator< T, N, A > &other)
Reference operator* () const
 Dereferencing operator.
Pointer operator-> () const
Reference operator[] (DifferenceType n) const
 Get the element n positions from the current one.
DerivedTypeoperator++ ()
 Preincrement operator.
DerivedType operator++ (int)
 Postincrement operator.
DerivedTypeoperator+= (DifferenceType n)
DerivedType operator+ (DifferenceType n) const
DerivedTypeoperator-- ()
 Predecrement operator.
DerivedType operator-- (int)
 Postdecrement operator.
DerivedTypeoperator-= (DifferenceType n)
DerivedType operator- (DifferenceType n) const

Friends

class ArrayList< T, N, A >
class ArrayListIterator< T, N, A >

Detailed Description

template<class T, int N, class A>
class Dune::ConstArrayListIterator< T, N, A >

A constant random access iterator for the Dune::ArrayList class.


Member Typedef Documentation

template<class T, int N, class A>
typedef A::const_reference Dune::ConstArrayListIterator< T, N, A >::const_reference
typedef ConstArrayListIterator< T, N, A > Dune::RandomAccessIteratorFacade< ConstArrayListIterator< T, N, A > , const A::value_type , A::const_reference , A::difference_type >::DerivedType [inherited]

The type of derived iterator.

The iterator has to define following functions have to be present:

 // Access the value referred to.
 Reference dereference() const;
 // Access the value at some other location
 Reference elementAt(n) const;

 // Compare for equality with j
 equals(i);

 // position the iterator at the next element.
 void increment()

 // position the iterator at the previous element.
 void decrement()

 // advance the iterator by a number of positions-
 void advance(DifferenceType n);
 // calculate the distance to another iterator.
 // One should incorporate an assertion wether
 // the same containers are referenced
 DifferenceType distanceTo(j) const;

For an elaborate explanation see the STL Documentation

template<class T, int N, class A>
typedef A::difference_type Dune::ConstArrayListIterator< T, N, A >::difference_type
typedef A::difference_type Dune::RandomAccessIteratorFacade< ConstArrayListIterator< T, N, A > , const A::value_type , A::const_reference , A::difference_type >::DifferenceType [inherited]

The type of the difference between two positions.

template<class T, int N, class A>
typedef A::value_type Dune::ConstArrayListIterator< T, N, A >::MemberType

The member type.

typedef const A::value_type * Dune::RandomAccessIteratorFacade< ConstArrayListIterator< T, N, A > , const A::value_type , A::const_reference , A::difference_type >::Pointer [inherited]

The pointer to the Value.

template<class T, int N, class A>
typedef A::reference Dune::ConstArrayListIterator< T, N, A >::reference
typedef A::const_reference Dune::RandomAccessIteratorFacade< ConstArrayListIterator< T, N, A > , const A::value_type , A::const_reference , A::difference_type >::Reference [inherited]

The type of the reference to the values accessed.

template<class T, int N, class A>
typedef A::size_type Dune::ConstArrayListIterator< T, N, A >::size_type
typedef const A::value_type Dune::RandomAccessIteratorFacade< ConstArrayListIterator< T, N, A > , const A::value_type , A::const_reference , A::difference_type >::Value [inherited]

The type of value accessed through the iterator.


Member Enumeration Documentation

template<class T, int N, class A>
anonymous enum
Enumerator:
chunkSize_ 

The number of elements in one chunk of the list.

This has to be at least one. The default is 100.


Constructor & Destructor Documentation

template<class T, int N, class A>
Dune::ConstArrayListIterator< T, N, A >::ConstArrayListIterator (  )  [inline]

Member Function Documentation

Reference Dune::RandomAccessIteratorFacade< ConstArrayListIterator< T, N, A > , const A::value_type , A::const_reference , A::difference_type >::operator* (  )  const [inline, inherited]

Dereferencing operator.

DerivedType Dune::RandomAccessIteratorFacade< ConstArrayListIterator< T, N, A > , const A::value_type , A::const_reference , A::difference_type >::operator+ ( DifferenceType  n  )  const [inline, inherited]
DerivedType Dune::RandomAccessIteratorFacade< ConstArrayListIterator< T, N, A > , const A::value_type , A::const_reference , A::difference_type >::operator++ ( int   )  [inline, inherited]

Postincrement operator.

DerivedType& Dune::RandomAccessIteratorFacade< ConstArrayListIterator< T, N, A > , const A::value_type , A::const_reference , A::difference_type >::operator++ (  )  [inline, inherited]

Preincrement operator.

DerivedType& Dune::RandomAccessIteratorFacade< ConstArrayListIterator< T, N, A > , const A::value_type , A::const_reference , A::difference_type >::operator+= ( DifferenceType  n  )  [inline, inherited]
DerivedType Dune::RandomAccessIteratorFacade< ConstArrayListIterator< T, N, A > , const A::value_type , A::const_reference , A::difference_type >::operator- ( DifferenceType  n  )  const [inline, inherited]
DerivedType& Dune::RandomAccessIteratorFacade< ConstArrayListIterator< T, N, A > , const A::value_type , A::const_reference , A::difference_type >::operator-- (  )  [inline, inherited]

Predecrement operator.

DerivedType Dune::RandomAccessIteratorFacade< ConstArrayListIterator< T, N, A > , const A::value_type , A::const_reference , A::difference_type >::operator-- ( int   )  [inline, inherited]

Postdecrement operator.

DerivedType& Dune::RandomAccessIteratorFacade< ConstArrayListIterator< T, N, A > , const A::value_type , A::const_reference , A::difference_type >::operator-= ( DifferenceType  n  )  [inline, inherited]
Pointer Dune::RandomAccessIteratorFacade< ConstArrayListIterator< T, N, A > , const A::value_type , A::const_reference , A::difference_type >::operator-> (  )  const [inline, inherited]
Reference Dune::RandomAccessIteratorFacade< ConstArrayListIterator< T, N, A > , const A::value_type , A::const_reference , A::difference_type >::operator[] ( DifferenceType  n  )  const [inline, inherited]

Get the element n positions from the current one.

Parameters:
n The distance to the element.
Returns:
The element at that distance.

Friends And Related Function Documentation

template<class T, int N, class A>
friend class ArrayList< T, N, A > [friend]
template<class T, int N, class A>
friend class ArrayListIterator< T, N, A > [friend]

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

Generated on Fri Apr 29 2011 with Doxygen (ver 1.7.1) [doxygen-log,error-log].