Generic iterator class for dense vector and matrix implementations. More...
#include <dune/common/densevector.hh>
Public Types | |
typedef std::ptrdiff_t | DifferenceType |
The type of the difference between two positions. | |
typedef C::size_type | SizeType |
The type to index the underlying container. | |
typedef DenseIterator< C, T, R > | DerivedType |
The type of derived iterator. | |
typedef T | Value |
The type of value accessed through the iterator. | |
typedef T * | Pointer |
The pointer to the Value. | |
typedef R | Reference |
The type of the reference to the values accessed. | |
Public Member Functions | |
DenseIterator () | |
DenseIterator (C &cont, SizeType pos) | |
DenseIterator (const MutableIterator &other) | |
DenseIterator (const ConstIterator &other) | |
bool | equals (const MutableIterator &other) const |
bool | equals (const ConstIterator &other) const |
R | dereference () const |
void | increment () |
void | decrement () |
R | elementAt (DifferenceType i) const |
void | advance (DifferenceType n) |
DifferenceType | distanceTo (DenseIterator< const typename std::remove_const< C >::type, const typename std::remove_const< T >::type > other) const |
DifferenceType | distanceTo (DenseIterator< typename std::remove_const< C >::type, typename std::remove_const< T >::type > other) const |
SizeType | index () const |
return index | |
Reference | operator* () const |
Dereferencing operator. | |
Pointer | operator-> () const |
Reference | operator[] (DifferenceType n) const |
Get the element n positions from the current one. | |
DerivedType & | operator++ () |
Preincrement operator. | |
DerivedType | operator++ (int) |
Postincrement operator. | |
DerivedType & | operator+= (DifferenceType n) |
DerivedType | operator+ (DifferenceType n) const |
DerivedType & | operator-- () |
Predecrement operator. | |
DerivedType | operator-- (int) |
Postdecrement operator. | |
DerivedType & | operator-= (DifferenceType n) |
DerivedType | operator- (DifferenceType n) const |
Generic iterator class for dense vector and matrix implementations.
provides sequential access to DenseVector, FieldVector and FieldMatrix
typedef DenseIterator< C, T, R > Dune::RandomAccessIteratorFacade< DenseIterator< C, T, R > , T , R , std::ptrdiff_t >::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 bool equals(j); // 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 whether // the same containers are referenced DifferenceType distanceTo(j) const;
For an elaborate explanation see the STL Documentation
typedef std::ptrdiff_t Dune::DenseIterator< C, T, R >::DifferenceType |
The type of the difference between two positions.
Reimplemented from Dune::RandomAccessIteratorFacade< DenseIterator< C, T, R >, T, R, std::ptrdiff_t >.
typedef T * Dune::RandomAccessIteratorFacade< DenseIterator< C, T, R > , T , R , std::ptrdiff_t >::Pointer [inherited] |
The pointer to the Value.
typedef R Dune::RandomAccessIteratorFacade< DenseIterator< C, T, R > , T , R , std::ptrdiff_t >::Reference [inherited] |
The type of the reference to the values accessed.
typedef C::size_type Dune::DenseIterator< C, T, R >::SizeType |
The type to index the underlying container.
typedef T Dune::RandomAccessIteratorFacade< DenseIterator< C, T, R > , T , R , std::ptrdiff_t >::Value [inherited] |
The type of value accessed through the iterator.
Dune::DenseIterator< C, T, R >::DenseIterator | ( | ) | [inline] |
Dune::DenseIterator< C, T, R >::DenseIterator | ( | C & | cont, | |
SizeType | pos | |||
) | [inline] |
Dune::DenseIterator< C, T, R >::DenseIterator | ( | const MutableIterator & | other | ) | [inline] |
Dune::DenseIterator< C, T, R >::DenseIterator | ( | const ConstIterator & | other | ) | [inline] |
void Dune::DenseIterator< C, T, R >::advance | ( | DifferenceType | n | ) | [inline] |
void Dune::DenseIterator< C, T, R >::decrement | ( | ) | [inline] |
R Dune::DenseIterator< C, T, R >::dereference | ( | ) | const [inline] |
DifferenceType Dune::DenseIterator< C, T, R >::distanceTo | ( | DenseIterator< typename std::remove_const< C >::type, typename std::remove_const< T >::type > | other | ) | const [inline] |
DifferenceType Dune::DenseIterator< C, T, R >::distanceTo | ( | DenseIterator< const typename std::remove_const< C >::type, const typename std::remove_const< T >::type > | other | ) | const [inline] |
R Dune::DenseIterator< C, T, R >::elementAt | ( | DifferenceType | i | ) | const [inline] |
bool Dune::DenseIterator< C, T, R >::equals | ( | const ConstIterator & | other | ) | const [inline] |
bool Dune::DenseIterator< C, T, R >::equals | ( | const MutableIterator & | other | ) | const [inline] |
void Dune::DenseIterator< C, T, R >::increment | ( | ) | [inline] |
SizeType Dune::DenseIterator< C, T, R >::index | ( | ) | const [inline] |
return index
Reference Dune::RandomAccessIteratorFacade< DenseIterator< C, T, R > , T , R , std::ptrdiff_t >::operator* | ( | ) | const [inline, inherited] |
Dereferencing operator.
DerivedType Dune::RandomAccessIteratorFacade< DenseIterator< C, T, R > , T , R , std::ptrdiff_t >::operator+ | ( | DifferenceType | n | ) | const [inline, inherited] |
DerivedType Dune::RandomAccessIteratorFacade< DenseIterator< C, T, R > , T , R , std::ptrdiff_t >::operator++ | ( | int | ) | [inline, inherited] |
Postincrement operator.
DerivedType& Dune::RandomAccessIteratorFacade< DenseIterator< C, T, R > , T , R , std::ptrdiff_t >::operator++ | ( | ) | [inline, inherited] |
Preincrement operator.
DerivedType& Dune::RandomAccessIteratorFacade< DenseIterator< C, T, R > , T , R , std::ptrdiff_t >::operator+= | ( | DifferenceType | n | ) | [inline, inherited] |
DerivedType Dune::RandomAccessIteratorFacade< DenseIterator< C, T, R > , T , R , std::ptrdiff_t >::operator- | ( | DifferenceType | n | ) | const [inline, inherited] |
DerivedType Dune::RandomAccessIteratorFacade< DenseIterator< C, T, R > , T , R , std::ptrdiff_t >::operator-- | ( | int | ) | [inline, inherited] |
Postdecrement operator.
DerivedType& Dune::RandomAccessIteratorFacade< DenseIterator< C, T, R > , T , R , std::ptrdiff_t >::operator-- | ( | ) | [inline, inherited] |
Predecrement operator.
DerivedType& Dune::RandomAccessIteratorFacade< DenseIterator< C, T, R > , T , R , std::ptrdiff_t >::operator-= | ( | DifferenceType | n | ) | [inline, inherited] |
Pointer Dune::RandomAccessIteratorFacade< DenseIterator< C, T, R > , T , R , std::ptrdiff_t >::operator-> | ( | ) | const [inline, inherited] |
Reference Dune::RandomAccessIteratorFacade< DenseIterator< C, T, R > , T , R , std::ptrdiff_t >::operator[] | ( | DifferenceType | n | ) | const [inline, inherited] |
Get the element n positions from the current one.
n | The distance to the element. |