ITK
6.0.0
Insight Toolkit
|
#include <itkImageConstIteratorWithOnlyIndex.h>
A base class for multi-dimensional iterators templated over image type that are designed to provide only index information, and no pixel access.
ImageConstIteratorWithOnlyIndex is a templated class to represent a multi-dimensional iterator, and is templated over the dimension of the image.
The "WithOnlyIndex" family of iterators differs from the "WithIndex" family of iterators in that only index information is available. The iterator does not access image data at all, and thus can be safely used with images of type ImageBase.
ImageConstIteratorWithOnlyIndex is a base class for the "WithOnlyIndex" family of ITK image iterators, which are designed to efficiently keep track of the image index position of the iterator during increment and decrement operations. This iterator is a base class and provides only the basic construction and comparison operations. It does not provide mechanisms for moving the iterator. A subclass of ImageConstIteratorWithOnlyIndex must be used to move the iterator.
ImageConstIteratorWithOnlyIndex 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 region, and the start index of the region. To gain access to this information, ImageConstIteratorWithOnlyIndex holds a reference to the image over which it is traversing.
Definition at line 95 of file itkImageConstIteratorWithOnlyIndex.h.
Public Types | |
using | ImageType = TImage |
using | IndexType = typename TImage::IndexType |
using | IndexValueType = typename IndexType::IndexValueType |
using | OffsetType = typename TImage::OffsetType |
using | OffsetValueType = typename OffsetType::OffsetValueType |
using | RegionType = typename TImage::RegionType |
using | Self = ImageConstIteratorWithOnlyIndex |
using | SizeType = typename TImage::SizeType |
using | SizeValueType = typename SizeType::SizeValueType |
Public Member Functions | |
const IndexType & | GetIndex () const |
const RegionType & | GetRegion () const |
void | GoToBegin () |
void | GoToReverseBegin () |
ImageConstIteratorWithOnlyIndex ()=default | |
ImageConstIteratorWithOnlyIndex (const TImage *ptr, const RegionType ®ion) | |
bool | IsAtEnd () const |
bool | IsAtReverseEnd () const |
ITK_DEFAULT_COPY_AND_MOVE (ImageConstIteratorWithOnlyIndex) | |
ITK_UNEQUAL_OPERATOR_MEMBER_FUNCTION (Self) | |
bool | operator< (const Self &it) const |
bool | operator<= (const Self &it) const |
bool | operator== (const Self &it) const |
bool | operator> (const Self &it) const |
bool | operator>= (const Self &it) const |
bool | Remaining () |
void | SetIndex (const IndexType &ind) |
virtual | ~ImageConstIteratorWithOnlyIndex ()=default |
Static Public Member Functions | |
static constexpr unsigned int | GetImageDimension () |
Static Public Attributes | |
static constexpr unsigned int | ImageDimension = TImage::ImageDimension |
Protected Attributes | |
IndexType | m_BeginIndex { { 0 } } |
IndexType | m_EndIndex { { 0 } } |
TImage::ConstPointer | m_Image {} |
OffsetValueType | m_OffsetTable [ImageDimension+1] {} |
IndexType | m_PositionIndex { { 0 } } |
RegionType | m_Region {} |
bool | m_Remaining { false } |
using itk::ImageConstIteratorWithOnlyIndex< TImage >::ImageType = TImage |
Image type alias support
Definition at line 121 of file itkImageConstIteratorWithOnlyIndex.h.
using itk::ImageConstIteratorWithOnlyIndex< TImage >::IndexType = typename TImage::IndexType |
Index type alias support
Definition at line 110 of file itkImageConstIteratorWithOnlyIndex.h.
using itk::ImageConstIteratorWithOnlyIndex< TImage >::IndexValueType = typename IndexType::IndexValueType |
Definition at line 111 of file itkImageConstIteratorWithOnlyIndex.h.
using itk::ImageConstIteratorWithOnlyIndex< TImage >::OffsetType = typename TImage::OffsetType |
Type of the Offset taken from the image
Definition at line 124 of file itkImageConstIteratorWithOnlyIndex.h.
using itk::ImageConstIteratorWithOnlyIndex< TImage >::OffsetValueType = typename OffsetType::OffsetValueType |
Definition at line 125 of file itkImageConstIteratorWithOnlyIndex.h.
using itk::ImageConstIteratorWithOnlyIndex< TImage >::RegionType = typename TImage::RegionType |
Region type alias support
Definition at line 118 of file itkImageConstIteratorWithOnlyIndex.h.
using itk::ImageConstIteratorWithOnlyIndex< TImage >::Self = ImageConstIteratorWithOnlyIndex |
Standard class type aliases.
Definition at line 101 of file itkImageConstIteratorWithOnlyIndex.h.
using itk::ImageConstIteratorWithOnlyIndex< TImage >::SizeType = typename TImage::SizeType |
Size type alias support
Definition at line 114 of file itkImageConstIteratorWithOnlyIndex.h.
using itk::ImageConstIteratorWithOnlyIndex< TImage >::SizeValueType = typename SizeType::SizeValueType |
Definition at line 115 of file itkImageConstIteratorWithOnlyIndex.h.
|
default |
Default Constructor. Need to provide a default constructor since we provide a copy constructor.
itk::ImageConstIteratorWithOnlyIndex< TImage >::ImageConstIteratorWithOnlyIndex | ( | const TImage * | ptr, |
const RegionType & | region | ||
) |
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.
|
virtualdefault |
Default Destructor.
|
inlinestaticconstexpr |
Get the dimension (size) of the index.
Definition at line 140 of file itkImageConstIteratorWithOnlyIndex.h.
|
inline |
Get the index. This provides a read only reference to the index.
Definition at line 199 of file itkImageConstIteratorWithOnlyIndex.h.
|
inline |
Get the region that this iterator walks. ImageIterators know the beginning and the end of the region of the image to iterate over.
Definition at line 207 of file itkImageConstIteratorWithOnlyIndex.h.
void itk::ImageConstIteratorWithOnlyIndex< TImage >::GoToBegin | ( | ) |
Move an iterator to the beginning of the region.
void itk::ImageConstIteratorWithOnlyIndex< TImage >::GoToReverseBegin | ( | ) |
Move an iterator to the End of the region.
|
inline |
Is the iterator at the end of the region?
Definition at line 237 of file itkImageConstIteratorWithOnlyIndex.h.
|
inline |
Is the iterator at the beginning of the region?
Definition at line 230 of file itkImageConstIteratorWithOnlyIndex.h.
itk::ImageConstIteratorWithOnlyIndex< TImage >::ITK_DEFAULT_COPY_AND_MOVE | ( | ImageConstIteratorWithOnlyIndex< TImage > | ) |
itk::ImageConstIteratorWithOnlyIndex< TImage >::ITK_UNEQUAL_OPERATOR_MEMBER_FUNCTION | ( | Self | ) |
|
inline |
Comparison operator. An iterator is "less than" another if it "points to" a lower memory location.
Definition at line 169 of file itkImageConstIteratorWithOnlyIndex.h.
References itk::ImageConstIteratorWithOnlyIndex< TImage >::m_PositionIndex.
|
inline |
Comparison operator. An iterator is "less than" another if it "points to" a lower memory location.
Definition at line 159 of file itkImageConstIteratorWithOnlyIndex.h.
References itk::ImageConstIteratorWithOnlyIndex< TImage >::m_PositionIndex.
|
inline |
Comparison operator. Two iterators are the same if they "point to" the same memory location
Definition at line 148 of file itkImageConstIteratorWithOnlyIndex.h.
References itk::ImageConstIteratorWithOnlyIndex< TImage >::m_PositionIndex.
|
inline |
Comparison operator. An iterator is "greater than" another if it "points to" a higher location.
Definition at line 189 of file itkImageConstIteratorWithOnlyIndex.h.
References itk::ImageConstIteratorWithOnlyIndex< TImage >::m_PositionIndex.
|
inline |
Comparison operator. An iterator is "greater than" another if it "points to" a higher location.
Definition at line 179 of file itkImageConstIteratorWithOnlyIndex.h.
References itk::ImageConstIteratorWithOnlyIndex< TImage >::m_PositionIndex.
|
inline |
Are there data remaining in the region ?
Definition at line 244 of file itkImageConstIteratorWithOnlyIndex.h.
|
inline |
Set the index. No bounds checking is performed.
Definition at line 215 of file itkImageConstIteratorWithOnlyIndex.h.
|
staticconstexpr |
Dimension of the image that 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 107 of file itkImageConstIteratorWithOnlyIndex.h.
|
protected |
Definition at line 253 of file itkImageConstIteratorWithOnlyIndex.h.
|
protected |
Definition at line 254 of file itkImageConstIteratorWithOnlyIndex.h.
|
protected |
Definition at line 250 of file itkImageConstIteratorWithOnlyIndex.h.
|
protected |
Definition at line 260 of file itkImageConstIteratorWithOnlyIndex.h.
|
protected |
Definition at line 252 of file itkImageConstIteratorWithOnlyIndex.h.
Referenced by itk::ImageConstIteratorWithOnlyIndex< TImage >::operator<(), itk::ImageConstIteratorWithOnlyIndex< TImage >::operator<=(), itk::ImageConstIteratorWithOnlyIndex< TImage >::operator==(), itk::ImageConstIteratorWithOnlyIndex< TImage >::operator>(), and itk::ImageConstIteratorWithOnlyIndex< TImage >::operator>=().
|
protected |
Definition at line 258 of file itkImageConstIteratorWithOnlyIndex.h.
|
protected |
Definition at line 262 of file itkImageConstIteratorWithOnlyIndex.h.