Public Types | Public Member Functions | Protected Attributes | Private Types | Private Attributes

mln::fwd_pixter2d< I > Class Template Reference

Forward pixel iterator on a 2-D image with border. More...

#include <pixter2d.hh>

Inheritance diagram for mln::fwd_pixter2d< I >:
Inheritance graph

List of all members.

Public Types

typedef Object< void > category
typedef fwd_pixter2d< I > exact_t
typedef I image
 Image type.
typedef I::lvalue lvalue
 Image lvalue type.
typedef I::rvalue rvalue
 Image rvalue type.
typedef I::value value
 Image value type.

Public Member Functions

value ** address_ () const
 Address of the current iterator value/pixel.
 fwd_pixter2d (I &image)
 Constructor.
I & ima () const
 Give the pixel image.
void next ()
 Go to the next element.
void next_ ()
 Go to the next pixel.
 operator unsigned () const
void start_ ()
 Extra code for start().
rvalue val () const
 Get the pixel iterator value.
lvalue val ()
 pixel iterator value.

void start ()
 ManipulationStart an iteration.
void invalidate ()
 Invalidate the iterator.
bool is_valid () const
 Test if the iterator is valid.

Protected Attributes

I::qlf_value * boi_
 Beginning of the image.
I::qlf_value * eoi_
 End of the image (past-the-end).

Private Types

typedef
internal::forward_pixel_iterator_base_
< I, fwd_pixter2d< I > > 
super_

Private Attributes

unsigned border_x2_
 Twice the size of the image border.
I::qlf_value * eor_
 End of the current row.
unsigned row_offset_
 Row offset.

Detailed Description

template<typename I>
class mln::fwd_pixter2d< I >

Forward pixel iterator on a 2-D image with border.

Definition at line 47 of file pixter2d.hh.


Member Typedef Documentation

typedef Object<void> mln::Object< fwd_pixter2d< I > >::category [inherited]

Definition at line 174 of file object.hh.

typedef fwd_pixter2d< I > mln::Object< fwd_pixter2d< I > >::exact_t [inherited]

Definition at line 173 of file object.hh.

template<typename I >
typedef I mln::fwd_pixter2d< I >::image

Image type.

Reimplemented from mln::internal::pixel_impl_< I, fwd_pixter2d< I > >.

Definition at line 54 of file pixter2d.hh.

typedef I ::lvalue mln::internal::pixel_impl_< I, fwd_pixter2d< I > >::lvalue [inherited]

Image lvalue type.

Definition at line 135 of file pixel_impl.hh.

typedef I ::rvalue mln::internal::pixel_impl_< I, fwd_pixter2d< I > >::rvalue [inherited]

Image rvalue type.

Definition at line 138 of file pixel_impl.hh.

template<typename I >
typedef internal::forward_pixel_iterator_base_< I, fwd_pixter2d<I> > mln::fwd_pixter2d< I >::super_ [private]
typedef I ::value mln::internal::pixel_impl_< I, fwd_pixter2d< I > >::value [inherited]

Image value type.

Definition at line 132 of file pixel_impl.hh.


Constructor & Destructor Documentation

template<typename I >
mln::fwd_pixter2d< I >::fwd_pixter2d ( I &  image  )  [inline]

Constructor.

Parameters:
[in] image The image this pixel iterator is bound to.

Definition at line 130 of file pixter2d.hh.


Member Function Documentation

value** mln::internal::pixel_impl_< I, fwd_pixter2d< I > >::address_ (  )  const [inherited]

Address of the current iterator value/pixel.

I& mln::internal::pixel_impl_< I, fwd_pixter2d< I > >::ima (  )  const [inherited]

Give the pixel image.

void mln::internal::forward_pixel_iterator_base_< I, fwd_pixter2d< I > >::invalidate (  )  [inherited]

Invalidate the iterator.

bool mln::internal::forward_pixel_iterator_base_< I, fwd_pixter2d< I > >::is_valid (  )  const [inherited]

Test if the iterator is valid.

void mln::Iterator< fwd_pixter2d< I > >::next (  )  [inherited]

Go to the next element.

Warning:
This is a final method; iterator classes should not re-defined this method. The actual "next" operation has to be defined through the next_ method.
Precondition:
The iterator is valid.
template<typename I >
void mln::fwd_pixter2d< I >::next_ (  )  [inline]
mln::Generalized_Pixel< fwd_pixter2d< I > >::operator unsigned (  )  const [inline, inherited]

Definition at line 65 of file generalized_pixel.hh.

void mln::internal::forward_pixel_iterator_base_< I, fwd_pixter2d< I > >::start (  )  [inherited]

ManipulationStart an iteration.

template<typename I >
void mln::fwd_pixter2d< I >::start_ (  )  [inline]
rvalue mln::internal::pixel_impl_< I, fwd_pixter2d< I > >::val (  )  const [inherited]

Get the pixel iterator value.

lvalue mln::internal::pixel_impl_< I, fwd_pixter2d< I > >::val (  )  [inherited]

pixel iterator value.


Member Data Documentation

I ::qlf_value* mln::internal::pixel_iterator_base_< I, fwd_pixter2d< I > >::boi_ [protected, inherited]

Beginning of the image.

Definition at line 62 of file pixel_iterator_base.hh.

template<typename I >
unsigned mln::fwd_pixter2d< I >::border_x2_ [private]

Twice the size of the image border.

Definition at line 69 of file pixter2d.hh.

Referenced by mln::fwd_pixter2d< I >::next_().

I ::qlf_value* mln::internal::pixel_iterator_base_< I, fwd_pixter2d< I > >::eoi_ [protected, inherited]

End of the image (past-the-end).

Definition at line 65 of file pixel_iterator_base.hh.

Referenced by mln::fwd_pixter2d< I >::next_().

template<typename I >
I ::qlf_value* mln::fwd_pixter2d< I >::eor_ [private]

End of the current row.

Definition at line 75 of file pixter2d.hh.

Referenced by mln::fwd_pixter2d< I >::next_(), and mln::fwd_pixter2d< I >::start_().

template<typename I >
unsigned mln::fwd_pixter2d< I >::row_offset_ [private]

Row offset.

Definition at line 72 of file pixter2d.hh.

Referenced by mln::fwd_pixter2d< I >::next_().