ViennaCL - The Vienna Computing Library  1.5.1
Public Types | Public Member Functions
sparse_matrix_adapted_iterator< SCALARTYPE, SizeType, is_iterator1 > Class Template Reference

A non-const iterator for sparse matrices of type std::vector<std::map<SizeType, SCALARTYPE> > More...

#include <adapter.hpp>

Public Types

typedef self_type iterator1
typedef self_type iterator2
typedef vcl_size_t size_type

Public Member Functions

 sparse_matrix_adapted_iterator (std::vector< std::map< SizeType, SCALARTYPE > > &mat, int i, int j)
SCALARTYPE & operator* (void)
self_typeoperator++ (void)
self_type operator++ (int)
self_type operator+= (size_type offset)
bool operator== (self_type const &other) const
bool operator!= (self_type const &other) const
size_type index1 () const
size_type index2 () const
sparse_matrix_adapted_iterator
< SCALARTYPE, SizeType,!is_iterator1 > 
begin () const
sparse_matrix_adapted_iterator
< SCALARTYPE, SizeType,!is_iterator1 > 
end () const

Detailed Description

template<typename SCALARTYPE, typename SizeType, bool is_iterator1>
class viennacl::tools::sparse_matrix_adapted_iterator< SCALARTYPE, SizeType, is_iterator1 >

A non-const iterator for sparse matrices of type std::vector<std::map<SizeType, SCALARTYPE> >

The iterator behaves like ublas iterators. Attention: Iteration along first columns and then rows via .begin() is untested! Reverse iterators are missing!

Template Parameters:
SCALARTYPEeither float or double
is_iterator1if true, this iterator iterates along increasing row indices, otherwise along increasiong column indices

Member Typedef Documentation


Constructor & Destructor Documentation

sparse_matrix_adapted_iterator ( std::vector< std::map< SizeType, SCALARTYPE > > &  mat,
int  i,
int  j 
) [inline]

Member Function Documentation

sparse_matrix_adapted_iterator<SCALARTYPE, SizeType, !is_iterator1> begin ( ) const [inline]
sparse_matrix_adapted_iterator<SCALARTYPE, SizeType, !is_iterator1> end ( ) const [inline]
size_type index1 ( ) const [inline]
size_type index2 ( ) const [inline]
bool operator!= ( self_type const &  other) const [inline]
SCALARTYPE& operator* ( void  ) [inline]
self_type& operator++ ( void  ) [inline]
self_type operator++ ( int  ) [inline]
self_type operator+= ( size_type  offset) [inline]
bool operator== ( self_type const &  other) const [inline]

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