ITK  4.0.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Static Public Attributes
itk::ImageReverseConstIterator< TImage > Class Template Reference

Multi-dimensional image iterator. More...

#include <itkImageReverseConstIterator.h>

Inheritance diagram for itk::ImageReverseConstIterator< TImage >:

List of all members.

Public Types

typedef TImage::AccessorFunctorType AccessorFunctorType
typedef TImage::AccessorType AccessorType
typedef TImage ImageType
typedef TImage::IndexType IndexType
typedef TImage::InternalPixelType InternalPixelType
typedef TImage::OffsetType OffsetType
typedef TImage::PixelContainer PixelContainer
typedef PixelContainer::Pointer PixelContainerPointer
typedef TImage::PixelType PixelType
typedef TImage::RegionType RegionType
typedef ImageReverseConstIterator Self
typedef TImage::SizeType SizeType

Public Member Functions

 ImageReverseConstIterator (const Self &it)
 ImageReverseConstIterator (const ImageType *ptr, const RegionType &region)
virtual ~ImageReverseConstIterator ()
 ImageReverseConstIterator ()

Static Public Attributes

static const unsigned int ImageIteratorDimension = TImage::ImageDimension
ImageType::ConstWeakPointer m_Image
RegionType m_Region
SizeValueType m_Offset
SizeValueType m_BeginOffset
SizeValueType m_EndOffset
const InternalPixelTypem_Buffer
AccessorType m_PixelAccessor
AccessorFunctorType m_PixelAccessorFunctor
 ImageReverseConstIterator (const ImageConstIterator< TImage > &it)
Selfoperator= (const Self &it)
Selfoperator= (const ImageConstIterator< TImage > &it)
bool operator!= (const Self &it) const
bool operator== (const Self &it) const
const IndexType GetIndex ()
virtual void SetIndex (const IndexType &ind)
const RegionTypeGetRegion () const
const PixelType Get (void) const
void Set (const PixelType &value) const
const PixelTypeValue (void) const
const PixelTypeValue (void)
Self Begin () const
void GoToBegin ()
Self End () const
void GoToEnd ()
bool IsAtBegin ()
bool IsAtEnd ()
static unsigned int GetImageIteratorDimension ()

Detailed Description

template<typename TImage>
class itk::ImageReverseConstIterator< TImage >

Multi-dimensional image iterator.

ImageReverseConstIterator is a templated class to represent a multi-dimensional iterator. ImageReverseConstIterator is templated over the dimension of the image and the data type of the image.

ImageReverseConstIterator is a base class for all the reverse image iterators. It provides the basic construction and comparison operations. However, it does not provide mechanisms for moving the iterator. A subclass of ImageReverseConstIterator must be used to move the iterator.

ImageReverseConstIterator is a multi-dimensional iterator, requiring more information be specified before the iterator can be used than conventional iterators. Whereas the std::vector::iterator from the STL only needs to be passed a pointer to establish the iterator, the multi-dimensional image iterator needs a pointer, the size of the buffer, the size of the region, the start index of the buffer, and the start index of the region. To gain access to this information, ImageReverseConstIterator holds a reference to the image over which it is traversing.

ImageReverseConstIterator assumes a particular layout of the image data. In particular, the data is arranged in a 1D array as if it were [][][][slice][row][col] with Index[0] = col, Index[1] = row, Index[2] = slice, etc.

MORE INFORMATION
For a complete description of the ITK Image Iterators and their API, please see the Iterators chapter in the ITK Software Guide. The ITK Software Guide is available in print and as a free .pdf download from http://www.itk.org.
See also:
ImageConstIterator
ConditionalConstIterator
ConstNeighborhoodIterator
ConstShapedNeighborhoodIterator
ConstSliceIterator
CorrespondenceDataStructureIterator
FloodFilledFunctionConditionalConstIterator
FloodFilledImageFunctionConditionalConstIterator
FloodFilledImageFunctionConditionalIterator
FloodFilledSpatialFunctionConditionalConstIterator
FloodFilledSpatialFunctionConditionalIterator
ImageConstIterator
ImageConstIteratorWithIndex
ImageIterator
ImageIteratorWithIndex
ImageLinearConstIteratorWithIndex
ImageLinearIteratorWithIndex
ImageRandomConstIteratorWithIndex
ImageRandomIteratorWithIndex
ImageRegionConstIterator
ImageRegionConstIteratorWithIndex
ImageRegionExclusionConstIteratorWithIndex
ImageRegionExclusionIteratorWithIndex
ImageRegionIterator
ImageRegionIteratorWithIndex
ImageRegionReverseConstIterator
ImageRegionReverseIterator
ImageReverseConstIterator
ImageReverseIterator
ImageSliceConstIteratorWithIndex
ImageSliceIteratorWithIndex
NeighborhoodIterator
PathConstIterator
PathIterator
ShapedNeighborhoodIterator
SliceIterator
ImageConstIteratorWithIndex

Definition at line 87 of file itkImageReverseConstIterator.h.


Member Typedef Documentation

template<typename TImage>
typedef TImage::AccessorFunctorType itk::ImageReverseConstIterator< TImage >::AccessorFunctorType

Functor to choose the appropriate accessor. (for Image vs VectorImage)

Definition at line 132 of file itkImageReverseConstIterator.h.

template<typename TImage>
typedef TImage::AccessorType itk::ImageReverseConstIterator< TImage >::AccessorType

Accessor type that convert data between internal and external representations.

Reimplemented in itk::ImageRegionReverseConstIterator< TImage >, itk::ImageRegionReverseIterator< TImage >, and itk::ImageReverseIterator< TImage >.

Definition at line 129 of file itkImageReverseConstIterator.h.

template<typename TImage>
typedef TImage itk::ImageReverseConstIterator< TImage >::ImageType
template<typename TImage>
typedef TImage::IndexType itk::ImageReverseConstIterator< TImage >::IndexType
template<typename TImage>
typedef TImage::InternalPixelType itk::ImageReverseConstIterator< TImage >::InternalPixelType
template<typename TImage>
typedef TImage::OffsetType itk::ImageReverseConstIterator< TImage >::OffsetType
template<typename TImage>
typedef TImage::PixelContainer itk::ImageReverseConstIterator< TImage >::PixelContainer

PixelContainer typedef support. Used to refer to the container for the pixel data. While this was already typdef'ed in the superclass it needs to be redone here for this subclass to compile properly with gcc.

Reimplemented in itk::ImageRegionReverseConstIterator< TImage >, itk::ImageRegionReverseIterator< TImage >, and itk::ImageReverseIterator< TImage >.

Definition at line 118 of file itkImageReverseConstIterator.h.

template<typename TImage>
typedef PixelContainer::Pointer itk::ImageReverseConstIterator< TImage >::PixelContainerPointer
template<typename TImage>
typedef TImage::PixelType itk::ImageReverseConstIterator< TImage >::PixelType
template<typename TImage>
typedef TImage::RegionType itk::ImageReverseConstIterator< TImage >::RegionType
template<typename TImage>
typedef ImageReverseConstIterator itk::ImageReverseConstIterator< TImage >::Self
template<typename TImage>
typedef TImage::SizeType itk::ImageReverseConstIterator< TImage >::SizeType

Constructor & Destructor Documentation

template<typename TImage>
itk::ImageReverseConstIterator< TImage >::ImageReverseConstIterator ( ) [inline]

Default Constructor. Need to provide a default constructor since we provide a copy constructor.

Definition at line 136 of file itkImageReverseConstIterator.h.

template<typename TImage>
virtual itk::ImageReverseConstIterator< TImage >::~ImageReverseConstIterator ( ) [inline, virtual]

Default Destructor.

Definition at line 147 of file itkImageReverseConstIterator.h.

template<typename TImage>
itk::ImageReverseConstIterator< TImage >::ImageReverseConstIterator ( const Self it) [inline]
template<typename TImage>
itk::ImageReverseConstIterator< TImage >::ImageReverseConstIterator ( const ImageType ptr,
const RegionType region 
) [inline]

Constructor establishes an iterator to walk a particular image and a particular region of that image.

Definition at line 168 of file itkImageReverseConstIterator.h.

template<typename TImage>
itk::ImageReverseConstIterator< TImage >::ImageReverseConstIterator ( const ImageConstIterator< TImage > &  it) [inline]

Constructor that can be used to cast from an ImageConstIterator to an ImageRegionReverseIterator. Many routines return an ImageConstIterator but for a particular task, you may want an ImageRegionReverseIterator. Rather than provide overloaded APIs that return different types of Iterators, itk returns ImageConstIterators and uses constructors to cast from an ImageConstIterator to a ImageRegionReverseIterator.

Definition at line 202 of file itkImageReverseConstIterator.h.

References itk::ImageConstIterator< TImage >::GetImage(), itk::ImageConstIterator< TImage >::GetIndex(), and itk::ImageConstIterator< TImage >::GetRegion().


Member Function Documentation

template<typename TImage>
Self itk::ImageReverseConstIterator< TImage >::Begin ( ) const

Return an iterator for the beginning of the region. "Begin" for a reverse iterator is the last pixel in the region.

Deprecated:
Use GoToBegin() instead

Reimplemented in itk::ImageRegionReverseConstIterator< TImage >, and itk::ImageRegionReverseIterator< TImage >.

template<typename TImage>
Self itk::ImageReverseConstIterator< TImage >::End ( ) const

Return an iterator for the end of the region. "End" for a reverse iterator is one pixel before the first pixel in the region.

Deprecated:
Use GoToEnd() instead

Reimplemented in itk::ImageRegionReverseConstIterator< TImage >, and itk::ImageRegionReverseIterator< TImage >.

template<typename TImage>
const PixelType itk::ImageReverseConstIterator< TImage >::Get ( void  ) const [inline]

Get the pixel value

Definition at line 319 of file itkImageReverseConstIterator.h.

template<typename TImage>
static unsigned int itk::ImageReverseConstIterator< TImage >::GetImageIteratorDimension ( ) [inline, static]

Get the dimension (size) of the index.

Definition at line 280 of file itkImageReverseConstIterator.h.

template<typename TImage>
const IndexType itk::ImageReverseConstIterator< TImage >::GetIndex ( void  ) [inline]

Get the index. This provides a read only reference to the index. This causes the index to be calculated from pointer arithmetic and is therefore an expensive operation.

See also:
SetIndex

Definition at line 305 of file itkImageReverseConstIterator.h.

Referenced by itk::ImageRegionReverseConstIterator< TImage >::operator--().

template<typename TImage>
const RegionType& itk::ImageReverseConstIterator< TImage >::GetRegion ( ) const [inline]

Get the region that this iterator walks. ImageReverseConstIterators know the beginning and the end of the region of the image to iterate over.

Definition at line 315 of file itkImageReverseConstIterator.h.

template<typename TImage>
void itk::ImageReverseConstIterator< TImage >::GoToBegin ( void  ) [inline]

Move an iterator to the beginning of the region. "Begin" for a reverse iterator is the last pixel in the region.

Reimplemented in itk::ImageRegionReverseConstIterator< TImage >.

Definition at line 348 of file itkImageReverseConstIterator.h.

template<typename TImage>
void itk::ImageReverseConstIterator< TImage >::GoToEnd ( void  ) [inline]

Move an iterator to the end of the region. "End" for a reverse iterator is defined as one pixel before the first pixel in the region.

Reimplemented in itk::ImageRegionReverseConstIterator< TImage >.

Definition at line 360 of file itkImageReverseConstIterator.h.

template<typename TImage>
bool itk::ImageReverseConstIterator< TImage >::IsAtBegin ( ) [inline]

Is the iterator at the beginning of the (reverse) region? "Begin" for a reverse iterator is the last pixel in the region.

Definition at line 367 of file itkImageReverseConstIterator.h.

template<typename TImage>
bool itk::ImageReverseConstIterator< TImage >::IsAtEnd ( void  ) [inline]

Is the iterator at the end of the (reverse) region? "End" for a reverse iterator is one pixel before the first pixel in the region.

Definition at line 374 of file itkImageReverseConstIterator.h.

template<typename TImage>
bool itk::ImageReverseConstIterator< TImage >::operator!= ( const Self it) const [inline]

Comparison operator. Two iterators are the same if they "point to" the same memory location

Definition at line 286 of file itkImageReverseConstIterator.h.

References itk::ImageReverseConstIterator< TImage >::m_Buffer, and itk::ImageReverseConstIterator< TImage >::m_Offset.

template<typename TImage>
Self& itk::ImageReverseConstIterator< TImage >::operator= ( const ImageConstIterator< TImage > &  it) [inline]

operator= is provided to make sure the handle to the image is properly reference counted.

Definition at line 249 of file itkImageReverseConstIterator.h.

References itk::ImageConstIterator< TImage >::GetImage(), itk::ImageConstIterator< TImage >::GetIndex(), and itk::ImageConstIterator< TImage >::GetRegion().

template<typename TImage>
Self& itk::ImageReverseConstIterator< TImage >::operator= ( const Self it) [inline]
template<typename TImage>
bool itk::ImageReverseConstIterator< TImage >::operator== ( const Self it) const [inline]

Comparison operator. Two iterators are the same if they "point to" the same memory location

Definition at line 295 of file itkImageReverseConstIterator.h.

References itk::ImageReverseConstIterator< TImage >::m_Buffer, and itk::ImageReverseConstIterator< TImage >::m_Offset.

template<typename TImage>
void itk::ImageReverseConstIterator< TImage >::Set ( const PixelType value) const [inline]

Set the pixel value

Reimplemented in itk::ImageRegionReverseIterator< TImage >, and itk::ImageReverseIterator< TImage >.

Definition at line 323 of file itkImageReverseConstIterator.h.

template<typename TImage>
virtual void itk::ImageReverseConstIterator< TImage >::SetIndex ( const IndexType ind) [inline, virtual]

Set the index. No bounds checking is performed.

See also:
GetIndex

Reimplemented in itk::ImageRegionReverseConstIterator< TImage >.

Definition at line 310 of file itkImageReverseConstIterator.h.

template<typename TImage>
const PixelType& itk::ImageReverseConstIterator< TImage >::Value ( void  ) const [inline]

Return a const reference to the pixel This method will provide the fastest access to pixel data, but it will NOT support ImageAdaptors.

Definition at line 332 of file itkImageReverseConstIterator.h.

template<typename TImage>
const PixelType& itk::ImageReverseConstIterator< TImage >::Value ( void  ) [inline]

Return a reference to the pixel This method will provide the fastest access to pixel data, but it will NOT support ImageAdaptors.

Reimplemented in itk::ImageRegionReverseIterator< TImage >, and itk::ImageReverseIterator< TImage >.

Definition at line 338 of file itkImageReverseConstIterator.h.


Member Data Documentation

template<typename TImage>
const unsigned int itk::ImageReverseConstIterator< TImage >::ImageIteratorDimension = TImage::ImageDimension [static]

Dimension of the image the iterator walks. This constant is needed so functions that are templated over image iterator type (as opposed to being templated over pixel type and dimension) can have compile time access to the dimension of the image that the iterator walks.

Reimplemented in itk::ImageRegionReverseConstIterator< TImage >.

Definition at line 98 of file itkImageReverseConstIterator.h.

template<typename TImage>
SizeValueType itk::ImageReverseConstIterator< TImage >::m_BeginOffset [protected]

Constructor that can be used to cast from an ImageConstIterator to an ImageRegionReverseIterator. Many routines return an ImageConstIterator but for a particular task, you may want an ImageRegionReverseIterator. Rather than provide overloaded APIs that return different types of Iterators, itk returns ImageConstIterators and uses constructors to cast from an ImageConstIterator to a ImageRegionReverseIterator.

Definition at line 385 of file itkImageReverseConstIterator.h.

Referenced by itk::ImageReverseConstIterator< TImage >::ImageReverseConstIterator(), and itk::ImageReverseConstIterator< TImage >::operator=().

template<typename TImage>
const InternalPixelType* itk::ImageReverseConstIterator< TImage >::m_Buffer [protected]

Constructor that can be used to cast from an ImageConstIterator to an ImageRegionReverseIterator. Many routines return an ImageConstIterator but for a particular task, you may want an ImageRegionReverseIterator. Rather than provide overloaded APIs that return different types of Iterators, itk returns ImageConstIterators and uses constructors to cast from an ImageConstIterator to a ImageRegionReverseIterator.

Definition at line 388 of file itkImageReverseConstIterator.h.

Referenced by itk::ImageReverseConstIterator< TImage >::ImageReverseConstIterator(), itk::ImageReverseConstIterator< TImage >::operator!=(), itk::ImageReverseConstIterator< TImage >::operator=(), and itk::ImageReverseConstIterator< TImage >::operator==().

template<typename TImage>
SizeValueType itk::ImageReverseConstIterator< TImage >::m_EndOffset [protected]

Constructor that can be used to cast from an ImageConstIterator to an ImageRegionReverseIterator. Many routines return an ImageConstIterator but for a particular task, you may want an ImageRegionReverseIterator. Rather than provide overloaded APIs that return different types of Iterators, itk returns ImageConstIterators and uses constructors to cast from an ImageConstIterator to a ImageRegionReverseIterator.

Definition at line 386 of file itkImageReverseConstIterator.h.

Referenced by itk::ImageReverseConstIterator< TImage >::ImageReverseConstIterator(), and itk::ImageReverseConstIterator< TImage >::operator=().

template<typename TImage>
ImageType::ConstWeakPointer itk::ImageReverseConstIterator< TImage >::m_Image [protected]

Constructor that can be used to cast from an ImageConstIterator to an ImageRegionReverseIterator. Many routines return an ImageConstIterator but for a particular task, you may want an ImageRegionReverseIterator. Rather than provide overloaded APIs that return different types of Iterators, itk returns ImageConstIterators and uses constructors to cast from an ImageConstIterator to a ImageRegionReverseIterator.

Definition at line 380 of file itkImageReverseConstIterator.h.

Referenced by itk::ImageReverseConstIterator< TImage >::ImageReverseConstIterator(), and itk::ImageReverseConstIterator< TImage >::operator=().

template<typename TImage>
SizeValueType itk::ImageReverseConstIterator< TImage >::m_Offset [protected]

Constructor that can be used to cast from an ImageConstIterator to an ImageRegionReverseIterator. Many routines return an ImageConstIterator but for a particular task, you may want an ImageRegionReverseIterator. Rather than provide overloaded APIs that return different types of Iterators, itk returns ImageConstIterators and uses constructors to cast from an ImageConstIterator to a ImageRegionReverseIterator.

Definition at line 384 of file itkImageReverseConstIterator.h.

Referenced by itk::ImageReverseConstIterator< TImage >::ImageReverseConstIterator(), itk::ImageReverseConstIterator< TImage >::operator!=(), itk::ImageReverseConstIterator< TImage >::operator=(), and itk::ImageReverseConstIterator< TImage >::operator==().

template<typename TImage>
AccessorType itk::ImageReverseConstIterator< TImage >::m_PixelAccessor [protected]

Constructor that can be used to cast from an ImageConstIterator to an ImageRegionReverseIterator. Many routines return an ImageConstIterator but for a particular task, you may want an ImageRegionReverseIterator. Rather than provide overloaded APIs that return different types of Iterators, itk returns ImageConstIterators and uses constructors to cast from an ImageConstIterator to a ImageRegionReverseIterator.

Definition at line 390 of file itkImageReverseConstIterator.h.

Referenced by itk::ImageReverseConstIterator< TImage >::ImageReverseConstIterator(), and itk::ImageReverseConstIterator< TImage >::operator=().

template<typename TImage>
AccessorFunctorType itk::ImageReverseConstIterator< TImage >::m_PixelAccessorFunctor [protected]

Constructor that can be used to cast from an ImageConstIterator to an ImageRegionReverseIterator. Many routines return an ImageConstIterator but for a particular task, you may want an ImageRegionReverseIterator. Rather than provide overloaded APIs that return different types of Iterators, itk returns ImageConstIterators and uses constructors to cast from an ImageConstIterator to a ImageRegionReverseIterator.

Definition at line 391 of file itkImageReverseConstIterator.h.

Referenced by itk::ImageReverseConstIterator< TImage >::ImageReverseConstIterator().

template<typename TImage>
RegionType itk::ImageReverseConstIterator< TImage >::m_Region [protected]

Constructor that can be used to cast from an ImageConstIterator to an ImageRegionReverseIterator. Many routines return an ImageConstIterator but for a particular task, you may want an ImageRegionReverseIterator. Rather than provide overloaded APIs that return different types of Iterators, itk returns ImageConstIterators and uses constructors to cast from an ImageConstIterator to a ImageRegionReverseIterator.

Definition at line 382 of file itkImageReverseConstIterator.h.

Referenced by itk::ImageReverseConstIterator< TImage >::ImageReverseConstIterator(), and itk::ImageReverseConstIterator< TImage >::operator=().


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