ITK
6.0.0
Insight Toolkit
|
#include <itkSliceIterator.h>
A flexible iterator for itk containers(i.e. itk::Neighborhood) that support pixel access through operator[].
SliceIterator allows iteration along a std::slice through the container. A slice is a construct that defines a starting position, stride length (distance between adjacent elements), and a length.
Any container with operator[] is supported. Because it uses this interface the iterator is only as efficient as the implementation of a container's operator[] method.
References: Modeled after a slice iterator proposed by Bjarne Stroustrup in C++ Programming Language, Third Edition. Bjarne Stroustrup. Addison Wesley, Reading, MA. 1997.
Definition at line 48 of file itkSliceIterator.h.
Public Member Functions | |
SliceIterator | Begin () |
SliceIterator | End () |
ITK_UNEQUAL_OPERATOR_MEMBER_FUNCTION (SliceIterator) | |
TPixel & | operator* () |
SliceIterator | operator++ () |
SliceIterator | operator++ (int) |
bool | operator< (const SliceIterator &orig) const |
bool | operator== (const SliceIterator &orig) const |
TPixel & | operator[] (OffsetValueType n) |
SliceIterator (TContainer *n, std::slice s) | |
Private Member Functions | |
TPixel & | Loc (OffsetValueType n) const |
Private Attributes | |
TContainer * | m_ContainerPointer |
OffsetValueType | m_Pos { 0 } |
std::slice | m_Slice |
|
inline |
Constructor.
Definition at line 52 of file itkSliceIterator.h.
|
inline |
Returns a SliceIterator that points to the beginning of the slice.
Definition at line 59 of file itkSliceIterator.h.
References itk::SliceIterator< TPixel, TContainer >::m_Pos.
|
inline |
Returns a SliceIterator that points to one past the end of the slice.
Definition at line 69 of file itkSliceIterator.h.
References itk::SliceIterator< TPixel, TContainer >::m_Pos, and itk::SliceIterator< TPixel, TContainer >::m_Slice.
itk::SliceIterator< TPixel, TContainer >::ITK_UNEQUAL_OPERATOR_MEMBER_FUNCTION | ( | SliceIterator< TPixel, TContainer > | ) |
|
inlineprivate |
Returns the value located at position n of the slice.
Definition at line 135 of file itkSliceIterator.h.
References itk::SliceIterator< TPixel, TContainer >::m_ContainerPointer, and itk::SliceIterator< TPixel, TContainer >::m_Slice.
Referenced by itk::SliceIterator< TPixel, TContainer >::operator*(), and itk::SliceIterator< TPixel, TContainer >::operator[]().
|
inline |
Dereferences the iterator, returning the value that it points to.
Definition at line 106 of file itkSliceIterator.h.
References itk::SliceIterator< TPixel, TContainer >::Loc(), and itk::SliceIterator< TPixel, TContainer >::m_Pos.
|
inline |
Increments the iterator.
Definition at line 79 of file itkSliceIterator.h.
References itk::SliceIterator< TPixel, TContainer >::m_Pos.
|
inline |
Increments the iterator.
Definition at line 87 of file itkSliceIterator.h.
References itk::SliceIterator< TPixel, TContainer >::m_Pos.
|
inline |
Returns the boolean < of two slice iterator positions. Result is only true if the slice iterators have the same stride and start location.
Definition at line 126 of file itkSliceIterator.h.
References itk::SliceIterator< TPixel, TContainer >::m_Pos, and itk::SliceIterator< TPixel, TContainer >::m_Slice.
|
inline |
Returns the logical && of the boolean == of two slice iterator positions, stride, and start locations.
Definition at line 114 of file itkSliceIterator.h.
References itk::SliceIterator< TPixel, TContainer >::m_Pos, and itk::SliceIterator< TPixel, TContainer >::m_Slice.
|
inline |
Returns the element at position n of the slice. Sets the iterator to point to position n.
Definition at line 98 of file itkSliceIterator.h.
References itk::SliceIterator< TPixel, TContainer >::Loc(), and itk::SliceIterator< TPixel, TContainer >::m_Pos.
|
private |
Pointer to the container referenced by the slice iterator.
Definition at line 145 of file itkSliceIterator.h.
Referenced by itk::SliceIterator< TPixel, TContainer >::Loc().
|
private |
Current position within the slice.
Definition at line 148 of file itkSliceIterator.h.
Referenced by itk::SliceIterator< TPixel, TContainer >::Begin(), itk::SliceIterator< TPixel, TContainer >::End(), itk::SliceIterator< TPixel, TContainer >::operator*(), itk::SliceIterator< TPixel, TContainer >::operator++(), itk::SliceIterator< TPixel, TContainer >::operator<(), itk::SliceIterator< TPixel, TContainer >::operator==(), and itk::SliceIterator< TPixel, TContainer >::operator[]().
|
private |
Slice structure information.
Definition at line 151 of file itkSliceIterator.h.
Referenced by itk::SliceIterator< TPixel, TContainer >::End(), itk::SliceIterator< TPixel, TContainer >::Loc(), itk::SliceIterator< TPixel, TContainer >::operator<(), and itk::SliceIterator< TPixel, TContainer >::operator==().