|
dune-istl
2.2.1
|
Iterator class for sparse vector-like containers. More...
#include <dune/istl/diagonalmatrix.hh>
Public Member Functions | |
| ContainerWrapperIterator () | |
| ContainerWrapperIterator (CW containerWrapper, int position) | |
| template<class OtherContainerWrapperIteratorType > | |
| ContainerWrapperIterator (OtherContainerWrapperIteratorType &other) | |
| ContainerWrapperIterator (const MyType &other) | |
| ContainerWrapperIterator (const MyConstType &other) | |
| template<class OtherContainerWrapperIteratorType > | |
| ContainerWrapperIterator & | operator= (OtherContainerWrapperIteratorType &other) |
| T * | operator-> () const |
| bool | equals (const MyType &other) const |
| bool | equals (const MyConstType &other) const |
| R | dereference () const |
| void | increment () |
| void | decrement () |
| R | elementAt (int i) const |
| void | advance (int n) |
| template<class OtherContainerWrapperIteratorType > | |
| std::ptrdiff_t | distanceTo (OtherContainerWrapperIteratorType &other) const |
| std::ptrdiff_t | index () const |
Iterator class for sparse vector-like containers.
This class provides an iterator for sparse vector like containers. It contains a ContainerWrapper that must provide the translation from the position in the underlying container to the index in the sparse container.
The ContainerWrapper must be default and copy-constructable. Furthermore it must provide the methods:
bool identical(other) - check if this is identical to other (same container, not only equal) T* pointer(position) - get pointer to data at position in underlying container size_t realIndex(position) - get index in sparse container for position in underlying container
Notice that the iterator stores a ContainerWrapper. This allows to use proxy classes as underlying container and as returned reference type.
| CW | The container wrapper class |
| T | The contained type |
| R | The reference type returned by dereference |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
friend |
|
friend |
1.8.3.1