#include <itkImageReverseConstIterator.h>
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.
Definition at line 87 of file itkImageReverseConstIterator.h.
Public Types | |
using | AccessorFunctorType = typename TImage::AccessorFunctorType |
using | AccessorType = typename TImage::AccessorType |
using | ImageType = TImage |
using | IndexType = typename TImage::IndexType |
using | InternalPixelType = typename TImage::InternalPixelType |
using | OffsetType = typename TImage::OffsetType |
using | PixelContainer = typename TImage::PixelContainer |
using | PixelContainerPointer = typename PixelContainer::Pointer |
using | PixelType = typename TImage::PixelType |
using | RegionType = typename TImage::RegionType |
using | Self = ImageReverseConstIterator |
using | SizeType = typename TImage::SizeType |
Public Member Functions | |
const PixelType | Get () const |
const IndexType | GetIndex () |
virtual const char * | GetNameOfClass () const |
const RegionType & | GetRegion () const |
void | GoToBegin () |
void | GoToEnd () |
ImageReverseConstIterator () | |
ImageReverseConstIterator (const ImageConstIterator< TImage > &it) | |
ImageReverseConstIterator (const ImageType *ptr, const RegionType ®ion) | |
ImageReverseConstIterator (const Self &it) | |
bool | IsAtBegin () const |
bool | IsAtEnd () const |
ITK_UNEQUAL_OPERATOR_MEMBER_FUNCTION (Self) | |
Self & | operator= (const ImageConstIterator< TImage > &it) |
Self & | operator= (const Self &it) |
bool | operator== (const Self &it) const |
void | Set (const PixelType &value) const |
virtual void | SetIndex (const IndexType &ind) |
const PixelType & | Value () |
const PixelType & | Value () const |
virtual | ~ImageReverseConstIterator ()=default |
Static Public Member Functions | |
static unsigned int | GetImageIteratorDimension () |
Static Public Attributes | |
static constexpr unsigned int | ImageIteratorDimension = TImage::ImageDimension |
Protected Attributes | |
SizeValueType | m_BeginOffset {} |
const InternalPixelType * | m_Buffer {} |
SizeValueType | m_EndOffset {} |
ImageType::ConstWeakPointer | m_Image {} |
SizeValueType | m_Offset {} |
AccessorType | m_PixelAccessor {} |
AccessorFunctorType | m_PixelAccessorFunctor {} |
RegionType | m_Region {} |
using itk::ImageReverseConstIterator< TImage >::AccessorFunctorType = typename TImage::AccessorFunctorType |
Functor to choose the appropriate accessor. (for Image vs VectorImage)
Definition at line 134 of file itkImageReverseConstIterator.h.
using itk::ImageReverseConstIterator< TImage >::AccessorType = typename TImage::AccessorType |
Accessor type that convert data between internal and external representations.
Definition at line 131 of file itkImageReverseConstIterator.h.
using itk::ImageReverseConstIterator< TImage >::ImageType = TImage |
Image type alias support
Definition at line 115 of file itkImageReverseConstIterator.h.
using itk::ImageReverseConstIterator< TImage >::IndexType = typename TImage::IndexType |
Index type alias support
Definition at line 103 of file itkImageReverseConstIterator.h.
using itk::ImageReverseConstIterator< TImage >::InternalPixelType = typename TImage::InternalPixelType |
Internal Pixel Type
Definition at line 124 of file itkImageReverseConstIterator.h.
using itk::ImageReverseConstIterator< TImage >::OffsetType = typename TImage::OffsetType |
Offset type alias support
Definition at line 109 of file itkImageReverseConstIterator.h.
using itk::ImageReverseConstIterator< TImage >::PixelContainer = typename TImage::PixelContainer |
PixelContainer type alias support Used to refer to the container for the pixel data. While this was already typedef'ed in the superclass it needs to be redone here for this subclass to compile properly with gcc.
Definition at line 120 of file itkImageReverseConstIterator.h.
using itk::ImageReverseConstIterator< TImage >::PixelContainerPointer = typename PixelContainer::Pointer |
Definition at line 121 of file itkImageReverseConstIterator.h.
using itk::ImageReverseConstIterator< TImage >::PixelType = typename TImage::PixelType |
External Pixel Type
Definition at line 127 of file itkImageReverseConstIterator.h.
using itk::ImageReverseConstIterator< TImage >::RegionType = typename TImage::RegionType |
Region type alias support
Definition at line 112 of file itkImageReverseConstIterator.h.
using itk::ImageReverseConstIterator< TImage >::Self = ImageReverseConstIterator |
Standard class type aliases.
Definition at line 91 of file itkImageReverseConstIterator.h.
using itk::ImageReverseConstIterator< TImage >::SizeType = typename TImage::SizeType |
Size type alias support
Definition at line 106 of file itkImageReverseConstIterator.h.
|
inline |
Default Constructor. Need to provide a default constructor since we provide a copy constructor.
Definition at line 138 of file itkImageReverseConstIterator.h.
Referenced by GetNameOfClass(), and itk::ImageRegionReverseConstIterator< TImage >::ImageRegionReverseConstIterator().
|
virtualdefault |
Default Destructor.
|
inline |
Copy Constructor. The copy constructor is provided to make sure the handle to the image is properly reference counted.
Definition at line 154 of file itkImageReverseConstIterator.h.
References m_BeginOffset, m_Buffer, m_EndOffset, m_Image, m_Offset, m_PixelAccessor, m_PixelAccessorFunctor, and m_Region.
|
inline |
Constructor establishes an iterator to walk a particular image and a particular region of that image. Initializes the iterator at the begin of the region.
Definition at line 171 of file itkImageReverseConstIterator.h.
References m_BeginOffset, m_Buffer, m_EndOffset, m_Image, m_Offset, m_PixelAccessor, m_PixelAccessorFunctor, and m_Region.
|
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 205 of file itkImageReverseConstIterator.h.
References itk::ImageConstIterator< TImage >::GetImage(), itk::ImageConstIterator< TImage >::GetIndex(), itk::ImageConstIterator< TImage >::GetRegion(), m_BeginOffset, m_Buffer, m_EndOffset, m_Image, m_Offset, m_PixelAccessor, m_PixelAccessorFunctor, and m_Region.
|
inline |
Get the pixel value
Definition at line 331 of file itkImageReverseConstIterator.h.
References m_Buffer, m_Offset, and m_PixelAccessorFunctor.
|
inlinestatic |
Get the dimension (size) of the index.
Definition at line 286 of file itkImageReverseConstIterator.h.
|
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.
Definition at line 308 of file itkImageReverseConstIterator.h.
References m_Image, and m_Offset.
Referenced by itk::ImageRegionReverseConstIterator< TImage >::ImageRegionReverseConstIterator(), itk::ImageRegionReverseConstIterator< TImage >::ImageRegionReverseConstIterator(), and itk::ImageRegionReverseConstIterator< TImage >::ImageRegionReverseConstIterator().
|
virtual |
Reimplemented in itk::ImageRegionReverseConstIterator< TImage >.
References ImageReverseConstIterator().
|
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 324 of file itkImageReverseConstIterator.h.
References m_Region.
|
inline |
Move an iterator to the beginning of the region. "Begin" for a reverse iterator is the last pixel in the region.
Definition at line 364 of file itkImageReverseConstIterator.h.
References m_BeginOffset, and m_Offset.
Referenced by itk::ImageRegionReverseConstIterator< TImage >::GoToBegin().
|
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.
Definition at line 372 of file itkImageReverseConstIterator.h.
References m_EndOffset, and m_Offset.
Referenced by itk::ImageRegionReverseConstIterator< TImage >::GoToEnd().
|
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 380 of file itkImageReverseConstIterator.h.
References m_BeginOffset, and m_Offset.
|
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 388 of file itkImageReverseConstIterator.h.
References m_EndOffset, and m_Offset.
itk::ImageReverseConstIterator< TImage >::ITK_UNEQUAL_OPERATOR_MEMBER_FUNCTION | ( | Self | ) |
|
inline |
operator= is provided to make sure the handle to the image is properly reference counted.
Definition at line 256 of file itkImageReverseConstIterator.h.
References itk::ImageConstIterator< TImage >::GetImage(), itk::ImageConstIterator< TImage >::GetIndex(), itk::ImageConstIterator< TImage >::GetRegion(), m_BeginOffset, m_Buffer, m_EndOffset, m_Image, m_Offset, m_PixelAccessor, m_PixelAccessorFunctor, and m_Region.
|
inline |
operator= is provided to make sure the handle to the image is properly reference counted.
Definition at line 235 of file itkImageReverseConstIterator.h.
References m_BeginOffset, m_Buffer, m_EndOffset, m_Image, m_Offset, m_PixelAccessor, m_PixelAccessorFunctor, and m_Region.
|
inline |
Comparison operator. Two iterators are the same if they "point to" the same memory location
Definition at line 294 of file itkImageReverseConstIterator.h.
|
inline |
Set the pixel value
Definition at line 338 of file itkImageReverseConstIterator.h.
References m_Buffer, m_Offset, and m_PixelAccessorFunctor.
|
inlinevirtual |
Set the index. No bounds checking is performed.
Reimplemented in itk::ImageRegionReverseConstIterator< TImage >.
Definition at line 316 of file itkImageReverseConstIterator.h.
References m_Image, and m_Offset.
Referenced by itk::ImageRegionReverseConstIterator< TImage >::SetIndex().
|
inline |
Return a reference to the pixel This method will provide the fastest access to pixel data, but it will NOT support ImageAdaptors.
Definition at line 356 of file itkImageReverseConstIterator.h.
|
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 347 of file itkImageReverseConstIterator.h.
|
staticconstexpr |
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.
Definition at line 97 of file itkImageReverseConstIterator.h.
Referenced by itk::ImageRegionReverseConstIterator< TImage >::operator++(), and itk::ImageRegionReverseConstIterator< TImage >::operator--().
|
protected |
Definition at line 399 of file itkImageReverseConstIterator.h.
Referenced by itk::ImageRegionReverseConstIterator< TImage >::GoToBegin(), GoToBegin(), itk::ImageRegionReverseConstIterator< TImage >::ImageRegionReverseConstIterator(), ImageReverseConstIterator(), ImageReverseConstIterator(), ImageReverseConstIterator(), IsAtBegin(), operator=(), and operator=().
|
protected |
Definition at line 402 of file itkImageReverseConstIterator.h.
Referenced by Get(), ImageReverseConstIterator(), ImageReverseConstIterator(), ImageReverseConstIterator(), operator=(), operator=(), operator==(), itk::ImageRegionReverseIterator< TImage >::Set(), Set(), itk::ImageReverseIterator< TImage >::Set(), itk::ImageRegionReverseIterator< TImage >::Value(), Value(), Value(), and itk::ImageReverseIterator< TImage >::Value().
|
protected |
Definition at line 400 of file itkImageReverseConstIterator.h.
Referenced by itk::ImageRegionReverseConstIterator< TImage >::GoToEnd(), GoToEnd(), ImageReverseConstIterator(), ImageReverseConstIterator(), ImageReverseConstIterator(), IsAtEnd(), operator=(), and operator=().
|
protected |
Definition at line 394 of file itkImageReverseConstIterator.h.
Referenced by GetIndex(), ImageReverseConstIterator(), ImageReverseConstIterator(), ImageReverseConstIterator(), itk::ImageRegionReverseConstIterator< TImage >::operator++(), itk::ImageRegionReverseConstIterator< TImage >::operator--(), operator=(), operator=(), and SetIndex().
|
protected |
Definition at line 398 of file itkImageReverseConstIterator.h.
Referenced by Get(), GetIndex(), GoToBegin(), GoToEnd(), itk::ImageRegionReverseConstIterator< TImage >::ImageRegionReverseConstIterator(), itk::ImageRegionReverseConstIterator< TImage >::ImageRegionReverseConstIterator(), itk::ImageRegionReverseConstIterator< TImage >::ImageRegionReverseConstIterator(), ImageReverseConstIterator(), ImageReverseConstIterator(), ImageReverseConstIterator(), IsAtBegin(), IsAtEnd(), itk::ImageRegionReverseConstIterator< TImage >::operator++(), itk::ImageRegionReverseConstIterator< TImage >::operator--(), operator=(), operator=(), operator==(), itk::ImageRegionReverseIterator< TImage >::Set(), Set(), itk::ImageReverseIterator< TImage >::Set(), itk::ImageRegionReverseConstIterator< TImage >::SetIndex(), SetIndex(), itk::ImageRegionReverseIterator< TImage >::Value(), Value(), Value(), and itk::ImageReverseIterator< TImage >::Value().
|
protected |
Definition at line 404 of file itkImageReverseConstIterator.h.
Referenced by ImageReverseConstIterator(), ImageReverseConstIterator(), ImageReverseConstIterator(), operator=(), operator=(), and itk::ImageRegionReverseIterator< TImage >::Set().
|
protected |
Definition at line 405 of file itkImageReverseConstIterator.h.
Referenced by Get(), ImageReverseConstIterator(), ImageReverseConstIterator(), ImageReverseConstIterator(), operator=(), operator=(), Set(), and itk::ImageReverseIterator< TImage >::Set().
|
protected |
Definition at line 396 of file itkImageReverseConstIterator.h.
Referenced by GetRegion(), itk::ImageRegionReverseConstIterator< TImage >::GoToBegin(), itk::ImageRegionReverseConstIterator< TImage >::GoToEnd(), itk::ImageRegionReverseConstIterator< TImage >::ImageRegionReverseConstIterator(), itk::ImageRegionReverseConstIterator< TImage >::ImageRegionReverseConstIterator(), itk::ImageRegionReverseConstIterator< TImage >::ImageRegionReverseConstIterator(), itk::ImageRegionReverseConstIterator< TImage >::ImageRegionReverseConstIterator(), ImageReverseConstIterator(), ImageReverseConstIterator(), ImageReverseConstIterator(), itk::ImageRegionReverseConstIterator< TImage >::operator++(), itk::ImageRegionReverseConstIterator< TImage >::operator--(), operator=(), operator=(), and itk::ImageRegionReverseConstIterator< TImage >::SetIndex().