Public Types | |
typedef Accessor< number, Constness >::MatrixType | MatrixType |
Public Member Functions | |
Iterator (MatrixType *matrix, const unsigned int row, const unsigned int index) | |
Iterator (MatrixType *matrix) | |
Iterator (const internals::SparseMatrixIterators::Iterator< number, false > &i) | |
Iterator & | operator++ () |
Iterator | operator++ (int) |
const Accessor< number, Constness > & | operator* () const |
const Accessor< number, Constness > * | operator-> () const |
bool | operator== (const Iterator &) const |
bool | operator!= (const Iterator &) const |
bool | operator< (const Iterator &) const |
bool | operator> (const Iterator &) const |
Private Attributes | |
Accessor< number, Constness > | accessor |
STL conforming iterator for constant and non-constant matrices.
The first template argument denotes the underlying numeric type, the second the constness of the matrix.
Since there is a specialization of this class for Constness=false
, this class is for iterators to constant matrices.
typedef Accessor<number,Constness>::MatrixType internals::SparseMatrixIterators::Iterator< number, Constness >::MatrixType |
Typedef for the matrix type (including constness) we are to operate on.
internals::SparseMatrixIterators::Iterator< number, Constness >::Iterator | ( | MatrixType * | matrix, | |
const unsigned int | row, | |||
const unsigned int | index | |||
) |
Constructor. Create an iterator into the matrix matrix
for the given row and the index within it.
internals::SparseMatrixIterators::Iterator< number, Constness >::Iterator | ( | MatrixType * | matrix | ) |
Constructor. Create the end iterator for the given matrix.
internals::SparseMatrixIterators::Iterator< number, Constness >::Iterator | ( | const internals::SparseMatrixIterators::Iterator< number, false > & | i | ) |
Conversion constructor to get from a non-const iterator to a const iterator.
Iterator& internals::SparseMatrixIterators::Iterator< number, Constness >::operator++ | ( | ) |
Prefix increment.
Iterator internals::SparseMatrixIterators::Iterator< number, Constness >::operator++ | ( | int | ) |
Postfix increment.
const Accessor<number,Constness>& internals::SparseMatrixIterators::Iterator< number, Constness >::operator* | ( | ) | const |
Dereferencing operator.
const Accessor<number,Constness>* internals::SparseMatrixIterators::Iterator< number, Constness >::operator-> | ( | ) | const |
Dereferencing operator.
bool internals::SparseMatrixIterators::Iterator< number, Constness >::operator== | ( | const Iterator< number, Constness > & | ) | const |
Comparison. True, if both iterators point to the same matrix position.
bool internals::SparseMatrixIterators::Iterator< number, Constness >::operator!= | ( | const Iterator< number, Constness > & | ) | const |
Inverse of ==
.
bool internals::SparseMatrixIterators::Iterator< number, Constness >::operator< | ( | const Iterator< number, Constness > & | ) | const |
Comparison operator. Result is true if either the first row number is smaller or if the row numbers are equal and the first index is smaller.
This function is only valid if both iterators point into the same matrix.
bool internals::SparseMatrixIterators::Iterator< number, Constness >::operator> | ( | const Iterator< number, Constness > & | ) | const |
Comparison operator. Works in the same way as above operator, just the other way round.
Accessor<number,Constness> internals::SparseMatrixIterators::Iterator< number, Constness >::accessor [private] |
Store an object of the accessor class.