Public Types | Public Member Functions | Private Attributes | List of all members
blaze::IdentityMatrix< Type, SO >::ConstIterator Class Reference

Iterator over the elements of the identity matrix. More...

#include <IdentityMatrix.h>

Public Types

using Element = ValueIndexPair< Type >
 Element type of the identity matrix.
 
using IteratorCategory = std::forward_iterator_tag
 The iterator category.
 
using ValueType = Element
 Type of the underlying pointers.
 
using PointerType = ValueType *
 Pointer return type.
 
using ReferenceType = ValueType &
 Reference return type.
 
using DifferenceType = ptrdiff_t
 Difference between two iterators.
 
using iterator_category = IteratorCategory
 The iterator category.
 
using value_type = ValueType
 Type of the underlying pointers.
 
using pointer = PointerType
 Pointer return type.
 
using reference = ReferenceType
 Reference return type.
 
using difference_type = DifferenceType
 Difference between two iterators.
 

Public Member Functions

 ConstIterator ()
 Default constructor for the ConstIterator class.
 
 ConstIterator (size_t index)
 Constructor for the ConstIterator class. More...
 
ConstIteratoroperator++ ()
 Pre-increment operator. More...
 
ConstIterator operator++ (int)
 Post-increment operator. More...
 
const Element operator* () const
 Direct access to the sparse matrix element at the current iterator position. More...
 
const ConstIteratoroperator-> () const
 Direct access to the sparse matrix element at the current iterator position. More...
 
Type value () const
 Access to the current value of the sparse element. More...
 
size_t index () const
 Access to the current index of the sparse element. More...
 
bool operator== (const ConstIterator &rhs) const
 Equality comparison between two ConstIterator objects. More...
 
bool operator!= (const ConstIterator &rhs) const
 Inequality comparison between two ConstIterator objects. More...
 
DifferenceType operator- (const ConstIterator &rhs) const
 Calculating the number of elements between two ConstIterator objects. More...
 

Private Attributes

size_t index_
 Index to the current identity matrix element.
 

Detailed Description

template<typename Type, bool SO = defaultStorageOrder>
class blaze::IdentityMatrix< Type, SO >::ConstIterator

Iterator over the elements of the identity matrix.

Constructor & Destructor Documentation

◆ ConstIterator()

template<typename Type, bool SO = defaultStorageOrder>
blaze::IdentityMatrix< Type, SO >::ConstIterator::ConstIterator ( size_t  index)
inline

Constructor for the ConstIterator class.

Parameters
indexIndex to the initial matrix element.

Member Function Documentation

◆ index()

template<typename Type, bool SO = defaultStorageOrder>
size_t blaze::IdentityMatrix< Type, SO >::ConstIterator::index ( ) const
inline

Access to the current index of the sparse element.

Returns
The current index of the sparse element.

◆ operator!=()

template<typename Type, bool SO = defaultStorageOrder>
bool blaze::IdentityMatrix< Type, SO >::ConstIterator::operator!= ( const ConstIterator rhs) const
inline

Inequality comparison between two ConstIterator objects.

Parameters
rhsThe right-hand side ConstIterator object.
Returns
true if the iterators don't refer to the same element, false if they do.

◆ operator*()

template<typename Type, bool SO = defaultStorageOrder>
const Element blaze::IdentityMatrix< Type, SO >::ConstIterator::operator* ( ) const
inline

Direct access to the sparse matrix element at the current iterator position.

Returns
The current value of the sparse element.

◆ operator++() [1/2]

template<typename Type, bool SO = defaultStorageOrder>
ConstIterator& blaze::IdentityMatrix< Type, SO >::ConstIterator::operator++ ( )
inline

Pre-increment operator.

Returns
Reference to the incremented iterator.

◆ operator++() [2/2]

template<typename Type, bool SO = defaultStorageOrder>
ConstIterator blaze::IdentityMatrix< Type, SO >::ConstIterator::operator++ ( int  )
inline

Post-increment operator.

Returns
The previous position of the iterator.

◆ operator-()

template<typename Type, bool SO = defaultStorageOrder>
DifferenceType blaze::IdentityMatrix< Type, SO >::ConstIterator::operator- ( const ConstIterator rhs) const
inline

Calculating the number of elements between two ConstIterator objects.

Parameters
rhsThe right-hand side ConstIterator object.
Returns
The number of elements between the two ConstIterator objects.

◆ operator->()

template<typename Type, bool SO = defaultStorageOrder>
const ConstIterator* blaze::IdentityMatrix< Type, SO >::ConstIterator::operator-> ( ) const
inline

Direct access to the sparse matrix element at the current iterator position.

Returns
Reference to the sparse matrix element at the current iterator position.

◆ operator==()

template<typename Type, bool SO = defaultStorageOrder>
bool blaze::IdentityMatrix< Type, SO >::ConstIterator::operator== ( const ConstIterator rhs) const
inline

Equality comparison between two ConstIterator objects.

Parameters
rhsThe right-hand side ConstIterator object.
Returns
true if the iterators refer to the same element, false if not.

◆ value()

template<typename Type, bool SO = defaultStorageOrder>
Type blaze::IdentityMatrix< Type, SO >::ConstIterator::value ( ) const
inline

Access to the current value of the sparse element.

Returns
The current value of the sparse element.

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