ViennaCL - The Vienna Computing Library  1.7.0
Free open-source GPU-accelerated linear algebra and solver library.
viennacl::tools::sparse_matrix_adapted_iterator< NumericT, SizeT, is_iterator1 > Class Template Reference

A non-const iterator for sparse matrices of type std::vector<std::map<SizeT, NumericT> > 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< SizeT, NumericT > > &mat, int i, int j)
 
NumericToperator* (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< NumericT, SizeT,!is_iterator1 > begin () const
 
sparse_matrix_adapted_iterator< NumericT, SizeT,!is_iterator1 > end () const
 

Detailed Description

template<typename NumericT, typename SizeT, bool is_iterator1>
class viennacl::tools::sparse_matrix_adapted_iterator< NumericT, SizeT, is_iterator1 >

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

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

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

Definition at line 237 of file adapter.hpp.

Member Typedef Documentation

template<typename NumericT, typename SizeT, bool is_iterator1>
typedef self_type viennacl::tools::sparse_matrix_adapted_iterator< NumericT, SizeT, is_iterator1 >::iterator1

Definition at line 242 of file adapter.hpp.

template<typename NumericT, typename SizeT, bool is_iterator1>
typedef self_type viennacl::tools::sparse_matrix_adapted_iterator< NumericT, SizeT, is_iterator1 >::iterator2

Definition at line 243 of file adapter.hpp.

template<typename NumericT, typename SizeT, bool is_iterator1>
typedef vcl_size_t viennacl::tools::sparse_matrix_adapted_iterator< NumericT, SizeT, is_iterator1 >::size_type

Definition at line 244 of file adapter.hpp.

Constructor & Destructor Documentation

template<typename NumericT, typename SizeT, bool is_iterator1>
viennacl::tools::sparse_matrix_adapted_iterator< NumericT, SizeT, is_iterator1 >::sparse_matrix_adapted_iterator ( std::vector< std::map< SizeT, NumericT > > &  mat,
int  i,
int  j 
)
inline

Definition at line 246 of file adapter.hpp.

Member Function Documentation

template<typename NumericT, typename SizeT, bool is_iterator1>
sparse_matrix_adapted_iterator<NumericT, SizeT, !is_iterator1> viennacl::tools::sparse_matrix_adapted_iterator< NumericT, SizeT, is_iterator1 >::begin ( ) const
inline

Definition at line 331 of file adapter.hpp.

template<typename NumericT, typename SizeT, bool is_iterator1>
sparse_matrix_adapted_iterator<NumericT, SizeT, !is_iterator1> viennacl::tools::sparse_matrix_adapted_iterator< NumericT, SizeT, is_iterator1 >::end ( ) const
inline

Definition at line 335 of file adapter.hpp.

template<typename NumericT, typename SizeT, bool is_iterator1>
size_type viennacl::tools::sparse_matrix_adapted_iterator< NumericT, SizeT, is_iterator1 >::index1 ( ) const
inline

Definition at line 321 of file adapter.hpp.

template<typename NumericT, typename SizeT, bool is_iterator1>
size_type viennacl::tools::sparse_matrix_adapted_iterator< NumericT, SizeT, is_iterator1 >::index2 ( ) const
inline

Definition at line 322 of file adapter.hpp.

template<typename NumericT, typename SizeT, bool is_iterator1>
bool viennacl::tools::sparse_matrix_adapted_iterator< NumericT, SizeT, is_iterator1 >::operator!= ( self_type const &  other) const
inline

Definition at line 319 of file adapter.hpp.

template<typename NumericT, typename SizeT, bool is_iterator1>
NumericT& viennacl::tools::sparse_matrix_adapted_iterator< NumericT, SizeT, is_iterator1 >::operator* ( void  )
inline

Definition at line 277 of file adapter.hpp.

template<typename NumericT, typename SizeT, bool is_iterator1>
self_type& viennacl::tools::sparse_matrix_adapted_iterator< NumericT, SizeT, is_iterator1 >::operator++ ( void  )
inline

Definition at line 288 of file adapter.hpp.

template<typename NumericT, typename SizeT, bool is_iterator1>
self_type viennacl::tools::sparse_matrix_adapted_iterator< NumericT, SizeT, is_iterator1 >::operator++ ( int  )
inline

Definition at line 297 of file adapter.hpp.

template<typename NumericT, typename SizeT, bool is_iterator1>
self_type viennacl::tools::sparse_matrix_adapted_iterator< NumericT, SizeT, is_iterator1 >::operator+= ( size_type  offset)
inline

Definition at line 299 of file adapter.hpp.

template<typename NumericT, typename SizeT, bool is_iterator1>
bool viennacl::tools::sparse_matrix_adapted_iterator< NumericT, SizeT, is_iterator1 >::operator== ( self_type const &  other) const
inline

Definition at line 312 of file adapter.hpp.


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