Public Types | Public Member Functions | Private Attributes | List of all members
blaze::SVecTDVecMultExpr< VT1, VT2 >::ConstIterator Class Reference

Iterator over the elements of the sparse vector-dense vector outer product expression. More...

#include <SVecTDVecMultExpr.h>

Public Types

typedef ValueIndexPair< ElementTypeElement
 Element type of the sparse matrix expression.
 
typedef ConstIterator_< RemoveReference_< LeftOperand > > IteratorType
 Iterator type of the sparse vector expression.
 
typedef ET2 RightElement
 Element type of the dense vector expression.
 
typedef std::forward_iterator_tag IteratorCategory
 The iterator category.
 
typedef Element ValueType
 Type of the underlying pointers.
 
typedef ValueTypePointerType
 Pointer return type.
 
typedef ValueTypeReferenceType
 Reference return type.
 
typedef ptrdiff_t DifferenceType
 Difference between two iterators.
 
typedef IteratorCategory iterator_category
 The iterator category.
 
typedef ValueType value_type
 Type of the underlying pointers.
 
typedef PointerType pointer
 Pointer return type.
 
typedef ReferenceType reference
 Reference return type.
 
typedef DifferenceType difference_type
 Difference between two iterators.
 

Public Member Functions

 ConstIterator (IteratorType it, RightElement v)
 Constructor for the ConstIterator class.
 
ConstIteratoroperator++ ()
 Pre-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...
 
ReturnType 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 expression iterators. More...
 

Private Attributes

IteratorType it_
 Iterator over the elements of the left-hand side sparse vector expression.
 
RightElement v_
 Element of the right-hand side dense vector expression.
 

Detailed Description

template<typename VT1, typename VT2>
class blaze::SVecTDVecMultExpr< VT1, VT2 >::ConstIterator

Iterator over the elements of the sparse vector-dense vector outer product expression.

Member Function Documentation

template<typename VT1 , typename VT2 >
size_t blaze::SVecTDVecMultExpr< VT1, VT2 >::ConstIterator::index ( ) const
inline

Access to the current index of the sparse element.

Returns
The current index of the sparse element.
template<typename VT1 , typename VT2 >
bool blaze::SVecTDVecMultExpr< VT1, VT2 >::ConstIterator::operator!= ( const ConstIterator rhs) const
inline

Inequality comparison between two ConstIterator objects.

Parameters
rhsThe right-hand side expression iterator.
Returns
true if the iterators don't refer to the same element, false if they do.
template<typename VT1 , typename VT2 >
const Element blaze::SVecTDVecMultExpr< VT1, VT2 >::ConstIterator::operator* ( ) const
inline

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

Returns
The current value of the sparse element.
template<typename VT1 , typename VT2 >
ConstIterator& blaze::SVecTDVecMultExpr< VT1, VT2 >::ConstIterator::operator++ ( )
inline

Pre-increment operator.

Returns
Reference to the incremented expression iterator.
template<typename VT1 , typename VT2 >
DifferenceType blaze::SVecTDVecMultExpr< VT1, VT2 >::ConstIterator::operator- ( const ConstIterator rhs) const
inline

Calculating the number of elements between two expression iterators.

Parameters
rhsThe right-hand side expression iterator.
Returns
The number of elements between the two expression iterators.
template<typename VT1 , typename VT2 >
const ConstIterator* blaze::SVecTDVecMultExpr< VT1, VT2 >::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.
template<typename VT1 , typename VT2 >
bool blaze::SVecTDVecMultExpr< VT1, VT2 >::ConstIterator::operator== ( const ConstIterator rhs) const
inline

Equality comparison between two ConstIterator objects.

Parameters
rhsThe right-hand side expression iterator.
Returns
true if the iterators refer to the same element, false if not.
template<typename VT1 , typename VT2 >
ReturnType blaze::SVecTDVecMultExpr< VT1, VT2 >::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: