[ VIGRA Homepage | Function Index | Class Index | Namespaces | File List | Main Page ]

RowIterator< IMAGE_ITERATOR > Class Template Reference

Iterator adapter to linearly access row. More...

#include <vigra/imageiteratoradapter.hxx>

Public Types

typedef IMAGE_ITERATOR Adaptee
 
typedef IMAGE_ITERATOR::difference_type::MoveY difference_type
 
typedef IMAGE_ITERATOR::index_reference index_reference
 
typedef std::random_access_iterator_tag iterator_category
 
typedef IMAGE_ITERATOR::value_type PixelType
 
typedef IMAGE_ITERATOR::pointer pointer
 
typedef IMAGE_ITERATOR::reference reference
 
typedef IMAGE_ITERATOR::value_type value_type
 

Public Member Functions

RowIteratoroperator= (IMAGE_ITERATOR const &i)
 
RowIteratoroperator= (RowIterator const &i)
 
 RowIterator (IMAGE_ITERATOR const &i)
 
Navigation
Methods
RowIterator operator+ (int d) const
 
RowIterator operator- (int d) const
 
int operator- (RowIterator const &c) const
 
bool operator== (RowIterator const &c) const
 
bool operator!= (RowIterator const &c) const
 
bool operator< (RowIterator const &c) const
 
reference operator* () const
 
index_reference operator[] (int d) const
 
pointer operator-> () const
 
Adapteeadaptee () const
 

Detailed Description

template<class IMAGE_ITERATOR>
class vigra::RowIterator< IMAGE_ITERATOR >

Iterator adapter to linearly access row.

This iterator may be initialized from a standard ImageIterator, a MultibandImageIterator and so on. It gives you STL-compatible (random access iterator) access to one row of the image. If the underlying iterator is a const iterator, the row iterator will also be const (i.e. doesn't allow to change the values it points to). The iterator gets associated with the accessor of the base iterator.

Note that image iterators usually have a member rowIterator() which returns a row iterator optimized for that particular image class. RowIterator is only necessary if this 'native' row iterator is not usable in a particular situation or is not provided.

#include <vigra/imageiteratoradapter.hxx>
Namespace: vigra

Member Typedef Documentation

◆ value_type

template<class IMAGE_ITERATOR >
IMAGE_ITERATOR::value_type value_type

the iterator's value type

◆ PixelType

template<class IMAGE_ITERATOR >
IMAGE_ITERATOR::value_type PixelType

the iterator's value type

◆ reference

template<class IMAGE_ITERATOR >
IMAGE_ITERATOR::reference reference

the iterator's reference type (return type of *iter)

◆ index_reference

template<class IMAGE_ITERATOR >
IMAGE_ITERATOR::index_reference index_reference

the iterator's index reference type (return type of iter[n])

◆ pointer

template<class IMAGE_ITERATOR >
IMAGE_ITERATOR::pointer pointer

the iterator's pointer type (return type of iter.operator->())

◆ difference_type

template<class IMAGE_ITERATOR >
IMAGE_ITERATOR::difference_type::MoveY difference_type

the iterator's difference type (argument type of iter[diff])

◆ iterator_category

template<class IMAGE_ITERATOR >
std::random_access_iterator_tag iterator_category

the iterator tag (random access iterator)

◆ Adaptee

template<class IMAGE_ITERATOR >
IMAGE_ITERATOR Adaptee

the type of the adapted iterator

Constructor & Destructor Documentation

◆ RowIterator()

template<class IMAGE_ITERATOR >
RowIterator ( IMAGE_ITERATOR const & i)

Construct from an the image iterator to be adapted.

Member Function Documentation

◆ operator=() [1/2]

template<class IMAGE_ITERATOR >
RowIterator & operator= ( RowIterator< IMAGE_ITERATOR > const & i)

Assignment.

◆ operator=() [2/2]

template<class IMAGE_ITERATOR >
RowIterator & operator= ( IMAGE_ITERATOR const & i)

Assign a new base iterator.

◆ operator+()

template<class IMAGE_ITERATOR >
RowIterator operator+ ( int d) const

Construct iterator at a distance.

◆ operator-() [1/2]

template<class IMAGE_ITERATOR >
RowIterator operator- ( int d) const

Construct iterator at a distance.

◆ operator-() [2/2]

template<class IMAGE_ITERATOR >
int operator- ( RowIterator< IMAGE_ITERATOR > const & c) const

Calculate distance.

◆ operator==()

template<class IMAGE_ITERATOR >
bool operator== ( RowIterator< IMAGE_ITERATOR > const & c) const

Equality.

◆ operator!=()

template<class IMAGE_ITERATOR >
bool operator!= ( RowIterator< IMAGE_ITERATOR > const & c) const

Inequality.

◆ operator<()

template<class IMAGE_ITERATOR >
bool operator< ( RowIterator< IMAGE_ITERATOR > const & c) const

Smaller than.

◆ operator*()

template<class IMAGE_ITERATOR >
reference operator* ( ) const

Access current pixel.

◆ operator[]()

template<class IMAGE_ITERATOR >
index_reference operator[] ( int d) const

Access pixel at distance d.

◆ operator->()

template<class IMAGE_ITERATOR >
pointer operator-> ( ) const

Call member function of current pixel.

◆ adaptee()

template<class IMAGE_ITERATOR >
Adaptee & adaptee ( ) const

Get a reference to the adapted iterator


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

© Ullrich Köthe (ullrich.koethe@iwr.uni-heidelberg.de)
Heidelberg Collaboratory for Image Processing, University of Heidelberg, Germany

html generated using doxygen and Python
vigra 1.12.2