Main Page   Groups   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Concepts
Public Types | Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes

itk::NeighborhoodIterator< TImage, TBoundaryCondition > Class Template Reference
[Image IteratorsOperators]

Defines iteration of a local N-dimensional neighborhood of pixels across an itk::Image. More...

#include <itkNeighborhoodIterator.h>

Inheritance diagram for itk::NeighborhoodIterator< TImage, TBoundaryCondition >:
Inheritance graph
[legend]
Collaboration diagram for itk::NeighborhoodIterator< TImage, TBoundaryCondition >:
Collaboration graph
[legend]

List of all members.

Public Types

typedef NeighborhoodAllocator
< TImage::InternalPixelType * > 
AllocatorType
typedef TBoundaryCondition BoundaryConditionType
typedef Superclass::ConstIterator ConstIterator
typedef ImageBoundaryCondition
< ImageType > const * 
ImageBoundaryConditionConstPointerType
typedef
Superclass::ImageBoundaryConditionPointerType 
ImageBoundaryConditionPointerType
typedef Superclass::ImageType ImageType
typedef Superclass::IndexType IndexType
typedef
Superclass::InternalPixelType 
InternalPixelType
typedef Superclass::Iterator Iterator
typedef
ImageType::NeighborhoodAccessorFunctorType 
NeighborhoodAccessorFunctorType
typedef
Superclass::NeighborhoodType 
NeighborhoodType
typedef Superclass::OffsetType OffsetType
typedef OffsetType::OffsetValueType OffsetValueType
typedef Superclass::PixelType PixelType
typedef Superclass::RadiusType RadiusType
typedef Superclass::RegionType RegionType
typedef NeighborhoodIterator Self
typedef Superclass::SizeType SizeType
typedef Superclass::SizeValueType SizeValueType
typedef SliceIterator
< TImage::InternalPixelType
*, Self
SliceIteratorType
typedef
ConstNeighborhoodIterator
< TImage, TBoundaryCondition > 
Superclass

typedef IndexType::IndexValueType IndexValueType

Public Member Functions

OffsetType ComputeInternalIndex (unsigned int n) const
IndexType GetBeginIndex () const
IndexType GetBound () const
long GetBound (unsigned int n) const
const BoundaryConditionTypeGetBoundaryCondition () const
RegionType GetBoundingBoxAsImageRegion () const
unsigned int GetCenterNeighborhoodIndex () const
PixelType GetCenterPixel () const
const InternalPixelTypeGetCenterPointer () const
InternalPixelTypeGetCenterPointer ()
TImage::InternalPixelType * GetCenterValue () const
const ImageTypeGetImagePointer (void) const
virtual IndexType GetIndex (void) const
virtual IndexType GetIndex (const OffsetType &o) const
virtual IndexType GetIndex (const unsigned i) const
virtual NeighborhoodType GetNeighborhood () const
virtual unsigned int GetNeighborhoodIndex (const OffsetType &) const
virtual PixelType GetNext (const unsigned axis, const unsigned i) const
virtual PixelType GetNext (const unsigned axis) const
OffsetType GetOffset (unsigned int i) const
virtual PixelType GetPixel (const unsigned i, bool &IsInBounds) const
virtual PixelType GetPixel (const OffsetType &o, bool &IsInBounds) const
virtual PixelType GetPrevious (const unsigned axis, const unsigned i) const
virtual PixelType GetPrevious (const unsigned axis) const
const SizeType GetRadius () const
unsigned long GetRadius (const unsigned long n) const
RegionType GetRegion () const
SizeType GetSize () const
unsigned long GetSize (const unsigned long n) const
std::slice GetSlice (unsigned int) const
unsigned GetStride (const unsigned axis) const
OffsetType GetWrapOffset () const
OffsetValueType GetWrapOffset (unsigned int n) const
virtual void GoToBegin ()
virtual void GoToEnd ()
bool InBounds () const
virtual void Initialize (const SizeType &radius, const ImageType *ptr, const RegionType &region)
virtual bool IsAtBegin () const
 NeighborhoodIterator ()
 NeighborhoodIterator (const NeighborhoodIterator &n)
 NeighborhoodIterator (const SizeType &radius, ImageType *ptr, const RegionType &region)
bool operator!= (const Self &other) const
bool operator!= (const Self &it) const
Selfoperator++ ()
Selfoperator+= (const OffsetType &)
OffsetType operator- (const Self &b)
Selfoperator-- ()
Selfoperator-= (const OffsetType &)
bool operator< (const Self &it) const
bool operator<= (const Self &it) const
bool operator== (const Self &other) const
bool operator== (const Self &it) const
bool operator> (const Self &it) const
bool operator>= (const Self &it) const
virtual void OverrideBoundaryCondition (const ImageBoundaryConditionPointerType i)
void Print (std::ostream &os) const
virtual void PrintSelf (std::ostream &, Indent) const
virtual void ResetBoundaryCondition ()
void SetBoundaryCondition (const TBoundaryCondition &c)
virtual void SetCenterPixel (const PixelType &p)
virtual void SetNeighborhood (const NeighborhoodType &)
virtual void SetNext (const unsigned axis, const unsigned i, const PixelType &v)
virtual void SetNext (const unsigned axis, const PixelType &v)
virtual void SetPixel (const unsigned i, const PixelType &v, bool &status)
virtual void SetPrevious (const unsigned axis, const unsigned i, const PixelType &v)
virtual void SetPrevious (const unsigned axis, const PixelType &v)
void SetRadius (const SizeType &)
void SetRadius (const unsigned long)
unsigned int Size () const

Selfoperator= (const Self &orig)

virtual void SetPixel (const unsigned i, const PixelType &v)

virtual void SetPixel (const OffsetType o, const PixelType &v)

virtual PixelType GetPixel (const unsigned i) const

virtual PixelType GetPixel (const OffsetType &o) const

virtual bool IsAtEnd () const

void SetLocation (const IndexType &position)

void NeedToUseBoundaryConditionOn ()
void NeedToUseBoundaryConditionOff ()
void SetNeedToUseBoundaryCondition (bool b)
bool GetNeedToUseBoundaryCondition () const

Iterator End ()
ConstIterator End () const
Iterator Begin ()
ConstIterator Begin () const

TImage::InternalPixelType *& operator[] (unsigned int i)
const TImage::InternalPixelType *& operator[] (unsigned int i) const
TImage::InternalPixelType *& GetElement (unsigned int i)

TImage::InternalPixelType *& operator[] (const OffsetType &o)
const TImage::InternalPixelType *& operator[] (const OffsetType &o) const

void SetRadius (const unsigned long *rad)

AllocatorTypeGetBufferReference ()
const AllocatorTypeGetBufferReference () const

Static Public Attributes

static const unsigned int Dimension = TImage::ImageDimension
static const unsigned int NeighborhoodDimension

Protected Member Functions

virtual void Allocate (unsigned int i)
virtual void ComputeNeighborhoodOffsetTable ()
virtual void ComputeNeighborhoodStrideTable ()
virtual void SetBeginIndex (const IndexType &start)
virtual void SetBound (const SizeType &)
virtual void SetEndIndex ()
virtual void SetLoop (const IndexType &p)
virtual void SetPixelPointers (const IndexType &)

void SetSize ()

Protected Attributes

const InternalPixelTypem_Begin
IndexType m_BeginIndex
IndexType m_Bound
ImageBoundaryConditionPointerType m_BoundaryCondition
ImageType::ConstWeakPointer m_ConstImage
const InternalPixelTypem_End
IndexType m_EndIndex
bool m_InBounds [Dimension]
IndexType m_InnerBoundsHigh
IndexType m_InnerBoundsLow
TBoundaryCondition m_InternalBoundaryCondition
bool m_IsInBounds
bool m_IsInBoundsValid
IndexType m_Loop
bool m_NeedToUseBoundaryCondition
NeighborhoodAccessorFunctorType m_NeighborhoodAccessorFunctor
RegionType m_Region
OffsetType m_WrapOffset

Detailed Description

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
class itk::NeighborhoodIterator< TImage, TBoundaryCondition >

Defines iteration of a local N-dimensional neighborhood of pixels across an itk::Image.

Pixels in a neighborhood can be accessed through a NeighborhoodIterator like elements in an array. For example, a 2D neighborhood with radius 2x1 has indices:

 0  1  2  3  4
 5  6  7  8  9
 10 11 12 13 14

Now suppose a NeighborhoodIterator with the above dimensions is constructed and positioned over a neighborhood of values in an Image:

 1.2 1.3 1.8 1.4 1.1
 1.8 1.1 0.7 1.0 1.0
 2.1 1.9 1.7 1.4 2.0

Shown below is some sample pixel access code and the values that it returns.

 ::size_t c = (::size_t) (iterator.Size() / 2); // get offset of center pixel
 ::size_t s = iterator.GetStride(1);            // y-dimension step size

 std::cout << iterator.GetPixel(7)      << std::endl;
 std::cout << iterator.GetCenterPixel() << std::endl;
 std::cout << iterator.GetPixel(c)      << std::endl;
 std::cout << iterator.GetPixel(c-1)    << std::endl;
 std::cout << iterator.GetPixel(c-s)    << std::endl;
 std::cout << iterator.GetPixel(c-s-1)  << std::endl; 
 std::cout << *iterator[c]              << std::endl;

Results:

 0.7
 0.7
 0.7
 1.1
 1.8
 1.3
 0.7

Use of GetPixel() is preferred over the *iterator[] form, and can be used without loss of efficiency in most cases. Some variations (subclasses) of NeighborhoodIterators may exist which do not support the latter API. Corresponding SetPixel() methods exist to modify pixel values in non-const NeighborhoodIterators.

NeighborhoodIterators are "bidirectional iterators". They move only in two directions through the data set. These directions correspond to the layout of the image data in memory and not to spatial directions of the N-dimensional itk::Image. Iteration always proceeds along the fastest increasing dimension (as defined by the layout of the image data) . For itk::Image this is the first dimension specified (i.e. for 3-dimensional (x,y,z) NeighborhoodIterator proceeds along the x-dimension) (For random access iteration through N-dimensional indicies, use RandomAccessNeighborhoodIterator.)

Each subclass of a ConstNeighborhoodIterator may also define its own mechanism for iteration through an image. In general, the Iterator does not directly keep track of its spatial location in the image, but uses a set of internal loop variables and offsets to trigger wraps at itk::Image region boundaries, and to identify the end of the itk::Image region.

Todo:

Better support for regions with negative indicies.

Add Begin() and End() methods?

See also:
DerivativeOperator
NeighborhoodInnerProduct
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

This class is a loose extension of the Standard Template Library (STL) bi-directional iterator concept to masks of pixel neighborhoods within itk::Image objects. This NeighborhoodIterator base class defines simple forward and reverse iteration of an N-dimensional neighborhood mask across an image. Elements within the mask can be accessed like elements within an array.

NeighborhoodIterators are designed to encapsulate some of the complexity of working with image neighborhoods, complexity that would otherwise have to be managed at the algorithmic level. Use NeighborhoodIterators to simplify writing algorithms that perform geometrically localized operations on images (for example, convolution and morphological operations).

To motivate the discussion of NeighborhoodIterators and their use in Itk, consider the following code that takes directional derivatives at each point in an image.

 itk::NeighborhoodInnerProduct<ImageType> IP;

 itk::DerivativeOperator<ImageType> operator;
  operator->SetOrder(1);
  operator->SetDirection(0);
  operator->CreateDirectional();

 itk::NeighborhoodIterator<ImageType>
   iterator(operator->GetRadius(), myImage, myImage->GetRequestedRegion());

 iterator.SetToBegin();
 while ( ! iterator.IsAtEnd() )
 {
   std::cout << "Derivative at index " << iterator.GetIndex() << is <<
     IP(iterator, operator) << std::endl;
   ++iterator;
 } 

Most of the work for the programmer in the code above is in setting up for the iteration. There are three steps. First an inner product function object is created which will be used to effect convolution with the derivative kernel. Setting up the derivative kernel, DerivativeOperator, involves setting the order and direction of the derivative. Finally, we create an iterator over the RequestedRegion of the itk::Image (see Image) using the radius of the derivative kernel as the size.

Itk iterators only loosely follow STL conventions. Notice that instead of asking myImage for myImage.begin() and myImage.end(), iterator.SetToBegin() and iterator.IsAtEnd() are called. Itk iterators are typically more complex objects than traditional, pointer-style STL iterators, and the increased overhead required to conform to the complete STL API is not always justified.

The API for creating and manipulating a NeighborhoodIterator mimics that of the itk::ImageIterators. Like the itk::ImageIterator, a ConstNeighborhoodIterator is defined on a region of interest in an itk::Image. Iteration is constrained within that region of interest.

A NeighborhoodIterator is constructed as a container of pointers (offsets) to a geometric neighborhood of image pixels. As the central pixel position in the mask is moved around the image, the neighboring pixel pointers (offsets) are moved accordingly.

A pixel neighborhood is defined as a central pixel location and an N-dimensional radius extending outward from that location.

Examples:

Testing/Code/Common/itkVectorImageTest.cxx.

Definition at line 212 of file itkNeighborhoodIterator.h.


Member Typedef Documentation

typedef NeighborhoodAllocator<TImage::InternalPixelType * > itk::Neighborhood< TImage::InternalPixelType * , VDimension, NeighborhoodAllocator<TImage::InternalPixelType * > >::AllocatorType [inherited]

External support for allocator type.

Definition at line 63 of file itkNeighborhood.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
typedef TBoundaryCondition itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::BoundaryConditionType [inherited]
template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
typedef Superclass::ConstIterator itk::NeighborhoodIterator< TImage, TBoundaryCondition >::ConstIterator
template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
typedef ImageBoundaryCondition<ImageType> const* itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::ImageBoundaryConditionConstPointerType [inherited]

Definition at line 99 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
typedef Superclass::ImageBoundaryConditionPointerType itk::NeighborhoodIterator< TImage, TBoundaryCondition >::ImageBoundaryConditionPointerType
template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
typedef Superclass::ImageType itk::NeighborhoodIterator< TImage, TBoundaryCondition >::ImageType
template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
typedef Superclass::IndexType itk::NeighborhoodIterator< TImage, TBoundaryCondition >::IndexType
template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
typedef IndexType::IndexValueType itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::IndexValueType [inherited]
template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
typedef Superclass::InternalPixelType itk::NeighborhoodIterator< TImage, TBoundaryCondition >::InternalPixelType
template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
typedef Superclass::Iterator itk::NeighborhoodIterator< TImage, TBoundaryCondition >::Iterator

Iterator typedef support. Note the naming is intentional, i.e., iterator and const_iterator, because the allocator may be a vnl object or other type, which uses this form.

Reimplemented from itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >.

Definition at line 231 of file itkNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
typedef ImageType::NeighborhoodAccessorFunctorType itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::NeighborhoodAccessorFunctorType [inherited]

Typedef for the functor used to access neighborhoods of pixel pointers. This is obtained as a trait from the image and is different for Image and VectorImage.

Definition at line 91 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
typedef Superclass::NeighborhoodType itk::NeighborhoodIterator< TImage, TBoundaryCondition >::NeighborhoodType
template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
typedef Superclass::OffsetType itk::NeighborhoodIterator< TImage, TBoundaryCondition >::OffsetType
template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
typedef OffsetType::OffsetValueType itk::NeighborhoodIterator< TImage, TBoundaryCondition >::OffsetValueType
template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
typedef Superclass::PixelType itk::NeighborhoodIterator< TImage, TBoundaryCondition >::PixelType
template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
typedef Superclass::RadiusType itk::NeighborhoodIterator< TImage, TBoundaryCondition >::RadiusType
template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
typedef Superclass::RegionType itk::NeighborhoodIterator< TImage, TBoundaryCondition >::RegionType
template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
typedef NeighborhoodIterator itk::NeighborhoodIterator< TImage, TBoundaryCondition >::Self
template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
typedef Superclass::SizeType itk::NeighborhoodIterator< TImage, TBoundaryCondition >::SizeType
template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
typedef Superclass::SizeValueType itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::SizeValueType [inherited]
typedef SliceIterator<TImage::InternalPixelType * , Self> itk::Neighborhood< TImage::InternalPixelType * , VDimension, NeighborhoodAllocator<TImage::InternalPixelType * > >::SliceIteratorType [inherited]

External slice iterator type typedef support.

Definition at line 88 of file itkNeighborhood.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
typedef ConstNeighborhoodIterator<TImage,TBoundaryCondition> itk::NeighborhoodIterator< TImage, TBoundaryCondition >::Superclass

Constructor & Destructor Documentation

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
itk::NeighborhoodIterator< TImage, TBoundaryCondition >::NeighborhoodIterator (  )  [inline]

Default constructor.

Definition at line 237 of file itkNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
itk::NeighborhoodIterator< TImage, TBoundaryCondition >::NeighborhoodIterator ( const NeighborhoodIterator< TImage, TBoundaryCondition > &  n  )  [inline]

Copy constructor

Definition at line 240 of file itkNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
itk::NeighborhoodIterator< TImage, TBoundaryCondition >::NeighborhoodIterator ( const SizeType radius,
ImageType ptr,
const RegionType region 
) [inline]

Constructor which establishes the region size, neighborhood, and image over which to walk.

Definition at line 252 of file itkNeighborhoodIterator.h.


Member Function Documentation

virtual void itk::Neighborhood< TImage::InternalPixelType * , VDimension, NeighborhoodAllocator<TImage::InternalPixelType * > >::Allocate ( unsigned int  i  )  [inline, protected, virtual, inherited]

Allocates the neighborhood's memory buffer.

Definition at line 243 of file itkNeighborhood.h.

ConstIterator itk::Neighborhood< TImage::InternalPixelType * , VDimension, NeighborhoodAllocator<TImage::InternalPixelType * > >::Begin ( void   )  const [inline, inherited]
Iterator itk::Neighborhood< TImage::InternalPixelType * , VDimension, NeighborhoodAllocator<TImage::InternalPixelType * > >::Begin ( void   )  [inline, inherited]

STL-style iterator support.

Reimplemented in itk::ShapedNeighborhoodIterator< TImage, TBoundaryCondition >, and itk::ShapedNeighborhoodIterator< ImageType >.

Definition at line 155 of file itkNeighborhood.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
OffsetType itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::ComputeInternalIndex ( unsigned int  n  )  const [inherited]

Computes the internal, N-d offset of a pixel array position n from (0,0, ..., 0) in the "upper-left" corner of the neighborhood.

virtual void itk::Neighborhood< TImage::InternalPixelType * , VDimension, NeighborhoodAllocator<TImage::InternalPixelType * > >::ComputeNeighborhoodOffsetTable (  )  [protected, virtual, inherited]

Fills entries into the offset lookup table. Called once on initialization.

virtual void itk::Neighborhood< TImage::InternalPixelType * , VDimension, NeighborhoodAllocator<TImage::InternalPixelType * > >::ComputeNeighborhoodStrideTable (  )  [protected, virtual, inherited]

Computes the entries for the stride table

Iterator itk::Neighborhood< TImage::InternalPixelType * , VDimension, NeighborhoodAllocator<TImage::InternalPixelType * > >::End ( void   )  [inline, inherited]

STL-style iterator support.

Reimplemented in itk::ShapedNeighborhoodIterator< TImage, TBoundaryCondition >, and itk::ShapedNeighborhoodIterator< ImageType >.

Definition at line 153 of file itkNeighborhood.h.

ConstIterator itk::Neighborhood< TImage::InternalPixelType * , VDimension, NeighborhoodAllocator<TImage::InternalPixelType * > >::End ( void   )  const [inline, inherited]
template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
IndexType itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::GetBeginIndex (  )  const [inline, inherited]

Returns the N-dimensional starting index of the iterator's position on the image.

Definition at line 247 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
IndexType itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::GetBound (  )  const [inline, inherited]

Returns the array of upper loop bounds used during iteration.

Definition at line 136 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
long itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::GetBound ( unsigned int  n  )  const [inline, inherited]

Returns the loop bound used to define the edge of a single dimension in the itk::Image region.

Definition at line 141 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
const BoundaryConditionType* itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::GetBoundaryCondition (  )  const [inline, inherited]

Definition at line 402 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
RegionType itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::GetBoundingBoxAsImageRegion (  )  const [inherited]

Returns a bounding box for the region spanned by this neighborhood represented by an itk::ImageRegion

AllocatorType& itk::Neighborhood< TImage::InternalPixelType * , VDimension, NeighborhoodAllocator<TImage::InternalPixelType * > >::GetBufferReference (  )  [inline, inherited]

Returns a reference to the data buffer structure.

Definition at line 204 of file itkNeighborhood.h.

const AllocatorType& itk::Neighborhood< TImage::InternalPixelType * , VDimension, NeighborhoodAllocator<TImage::InternalPixelType * > >::GetBufferReference (  )  const [inline, inherited]

Returns a reference to the data buffer structure.

Definition at line 206 of file itkNeighborhood.h.

unsigned int itk::Neighborhood< TImage::InternalPixelType * , VDimension, NeighborhoodAllocator<TImage::InternalPixelType * > >::GetCenterNeighborhoodIndex (  )  const [inline, inherited]

Definition at line 224 of file itkNeighborhood.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
PixelType itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::GetCenterPixel (  )  const [inline, inherited]

Returns the pixel referenced at the center of the ConstNeighborhoodIterator.

Definition at line 150 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
const InternalPixelType* itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::GetCenterPointer (  )  const [inline, inherited]
template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
InternalPixelType* itk::NeighborhoodIterator< TImage, TBoundaryCondition >::GetCenterPointer (  )  [inline]

Returns the central memory pointer of the neighborhood.

Definition at line 260 of file itkNeighborhoodIterator.h.

TImage::InternalPixelType * itk::Neighborhood< TImage::InternalPixelType * , VDimension, NeighborhoodAllocator<TImage::InternalPixelType * > >::GetCenterValue (  )  const [inline, inherited]

Returns the element at the center of the neighborhood.

Definition at line 177 of file itkNeighborhood.h.

TImage::InternalPixelType * & itk::Neighborhood< TImage::InternalPixelType * , VDimension, NeighborhoodAllocator<TImage::InternalPixelType * > >::GetElement ( unsigned int  i  )  [inline, inherited]

Pass-through data access methods to the buffer.

Definition at line 172 of file itkNeighborhood.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
const ImageType* itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::GetImagePointer ( void   )  const [inline, inherited]

Returns a smartpointer to the image on which this iterator operates.

Definition at line 154 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
virtual IndexType itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::GetIndex ( void   )  const [inline, virtual, inherited]

Returns the N-dimensional index of the iterator's position in the image.

Definition at line 159 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
virtual IndexType itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::GetIndex ( const unsigned  i  )  const [inline, virtual, inherited]

Returns the image index for neighbor pixel at index i in the neighborhood.

Definition at line 238 of file itkConstNeighborhoodIterator.h.

Referenced by itk::ConstNeighborhoodIterator< TSparseImageType >::GetIndex().

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
virtual IndexType itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::GetIndex ( const OffsetType o  )  const [inline, virtual, inherited]

Returns the image index for neighbor pixel at offset o from the center of the neighborhood.

Definition at line 233 of file itkConstNeighborhoodIterator.h.

Referenced by itk::ConstNeighborhoodIterator< TSparseImageType >::GetIndex().

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
bool itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::GetNeedToUseBoundaryCondition (  )  const [inline, inherited]

Definition at line 418 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
virtual NeighborhoodType itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::GetNeighborhood (  )  const [virtual, inherited]

Virtual function that "dereferences" a ConstNeighborhoodIterator, returning a Neighborhood of pixel values.

virtual unsigned int itk::Neighborhood< TImage::InternalPixelType * , VDimension, NeighborhoodAllocator<TImage::InternalPixelType * > >::GetNeighborhoodIndex ( const OffsetType  )  const [virtual, inherited]
template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
virtual PixelType itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::GetNext ( const unsigned  axis,
const unsigned  i 
) const [inline, virtual, inherited]

Returns the pixel value located i pixels distant from the neighborhood center in the positive specified ``axis'' direction. No bounds checking is done on the size of the neighborhood.

Definition at line 206 of file itkConstNeighborhoodIterator.h.

Referenced by itk::VectorGradientMagnitudeImageFilter< TInputImage, TRealType, TOutputImage >::EvaluateAtNeighborhood(), itk::VectorGradientMagnitudeImageFilter< TInputImage, TRealType, TOutputImage >::EvaluateAtNeighborhood3D(), and itk::VectorGradientMagnitudeImageFilter< TInputImage, TRealType, TOutputImage >::NonPCEvaluateAtNeighborhood().

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
virtual PixelType itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::GetNext ( const unsigned  axis  )  const [inline, virtual, inherited]

Returns the pixel value located one pixel distant from the neighborhood center in the specifed positive axis direction. No bounds checking is done on the size of the neighborhood.

Definition at line 213 of file itkConstNeighborhoodIterator.h.

OffsetType itk::Neighborhood< TImage::InternalPixelType * , VDimension, NeighborhoodAllocator<TImage::InternalPixelType * > >::GetOffset ( unsigned int  i  )  const [inline, inherited]

Returns the itk::Offset from the center of the Neighborhood to the requested neighbor index.

Definition at line 219 of file itkNeighborhood.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
virtual PixelType itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::GetPixel ( const unsigned  i  )  const [inline, virtual, inherited]

Returns the pixel value located at a linear array location i.

Definition at line 167 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
virtual PixelType itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::GetPixel ( const OffsetType o  )  const [inline, virtual, inherited]

Returns the pixel value located at the itk::Offset o from the center of the neighborhood.

Definition at line 187 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
virtual PixelType itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::GetPixel ( const unsigned  i,
bool &  IsInBounds 
) const [virtual, inherited]

Return the pixel value located at a linear array location i. Sets "IsInBounds" to true if the location is inside the image and the pixel value returned is an actual pixel in the image. Sets "IsInBounds" to false if the location is outside the image and the pixel value returned is a boundary condition.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
virtual PixelType itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::GetPixel ( const OffsetType o,
bool &  IsInBounds 
) const [inline, virtual, inherited]

Returns the pixel value located at the itk::Offset o from the center of the neighborhood. Sets "IsInBounds" to true if the offset is inside the image and the pixel value returned is an actual pixel in the image. Sets "IsInBounds" to false if the offset is outside the image and the pixel value returned is a boundary condition.

Definition at line 199 of file itkConstNeighborhoodIterator.h.

Referenced by itk::ConstNeighborhoodIterator< TSparseImageType >::GetPixel().

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
virtual PixelType itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::GetPrevious ( const unsigned  axis,
const unsigned  i 
) const [inline, virtual, inherited]

Returns the pixel value located i pixels distant from the neighborhood center in the negative specified ``axis'' direction. No bounds checking is done on the size of the neighborhood.

Definition at line 220 of file itkConstNeighborhoodIterator.h.

Referenced by itk::VectorGradientMagnitudeImageFilter< TInputImage, TRealType, TOutputImage >::EvaluateAtNeighborhood(), itk::VectorGradientMagnitudeImageFilter< TInputImage, TRealType, TOutputImage >::EvaluateAtNeighborhood3D(), and itk::VectorGradientMagnitudeImageFilter< TInputImage, TRealType, TOutputImage >::NonPCEvaluateAtNeighborhood().

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
virtual PixelType itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::GetPrevious ( const unsigned  axis  )  const [inline, virtual, inherited]

Returns the pixel value located one pixel distant from the neighborhood center in the specifed negative axis direction. No bounds checking is done on the size of the neighborhood.

Definition at line 227 of file itkConstNeighborhoodIterator.h.

const SizeType itk::Neighborhood< TImage::InternalPixelType * , VDimension, NeighborhoodAllocator<TImage::InternalPixelType * > >::GetRadius ( void   )  const [inline, inherited]

Returns the radius of the neighborhood.

Definition at line 129 of file itkNeighborhood.h.

unsigned long itk::Neighborhood< TImage::InternalPixelType * , VDimension, NeighborhoodAllocator<TImage::InternalPixelType * > >::GetRadius ( const unsigned long  n  )  const [inline, inherited]

Returns the radius of the neighborhood along a specified dimension.

Definition at line 134 of file itkNeighborhood.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
RegionType itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::GetRegion (  )  const [inline, inherited]

Returns the region of iteration.

Definition at line 242 of file itkConstNeighborhoodIterator.h.

unsigned long itk::Neighborhood< TImage::InternalPixelType * , VDimension, NeighborhoodAllocator<TImage::InternalPixelType * > >::GetSize ( const unsigned long  n  )  const [inline, inherited]

Returns the size (total length) of the neighborhood along a specified dimension.

Definition at line 139 of file itkNeighborhood.h.

SizeType itk::Neighborhood< TImage::InternalPixelType * , VDimension, NeighborhoodAllocator<TImage::InternalPixelType * > >::GetSize ( void   )  const [inline, inherited]

Returns the size (total length of sides) of the neighborhood.

Definition at line 143 of file itkNeighborhood.h.

std::slice itk::Neighborhood< TImage::InternalPixelType * , VDimension, NeighborhoodAllocator<TImage::InternalPixelType * > >::GetSlice ( unsigned  int  )  const [inherited]
unsigned itk::Neighborhood< TImage::InternalPixelType * , VDimension, NeighborhoodAllocator<TImage::InternalPixelType * > >::GetStride ( const unsigned  axis  )  const [inline, inherited]

Returns the stride length for the specified dimension. Stride length is the number of pixels between adjacent pixels along the given dimension.

Definition at line 149 of file itkNeighborhood.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
OffsetType itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::GetWrapOffset (  )  const [inline, inherited]

Returns the offsets used to wrap across dimensional boundaries.

Definition at line 255 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
OffsetValueType itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::GetWrapOffset ( unsigned int  n  )  const [inline, inherited]

Returns the internal offset associated with wrapping around a single dimension's region boundary in the itk::Image. An offset for each dimension is necessary to shift pointers when wrapping around region edges because region memory is not necessarily contiguous within the buffer.

Definition at line 263 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
virtual void itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::GoToBegin (  )  [virtual, inherited]

Virtual method for rewinding the iterator to its beginning pixel. This is useful for writing functions which take neighborhood iterators of arbitrary type and must use virtual functions.

Referenced by itk::ConstShapedNeighborhoodIterator< ImageType, ZeroFluxNeumannBoundaryCondition< ImageType > >::operator=().

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
virtual void itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::GoToEnd (  )  [virtual, inherited]

Virtual method for sending the iterator to one past the last pixel in its region.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
bool itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::InBounds (  )  const [inherited]

Returns false if the iterator overlaps region boundaries, true otherwise. Also updates an internal boolean array indicating which of the iterator's faces are out of bounds.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
virtual void itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::Initialize ( const SizeType radius,
const ImageType ptr,
const RegionType region 
) [virtual, inherited]

Initializes the iterator to walk a particular image and a particular region of that image.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
virtual bool itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::IsAtBegin ( void   )  const [inline, virtual, inherited]

Virtual method for determining whether the iterator is at the beginning of its iteration region.

Definition at line 282 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
virtual bool itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::IsAtEnd (  )  const [inline, virtual, inherited]

Virtual method for determining whether the iterator has reached the end of its iteration region.

Definition at line 287 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
void itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::NeedToUseBoundaryConditionOff (  )  [inline, inherited]

Definition at line 410 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
void itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::NeedToUseBoundaryConditionOn (  )  [inline, inherited]

Definition at line 406 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
bool itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::operator!= ( const Self it  )  const [inline, inherited]

Returns a boolean != comparison of the memory addresses of the center elements of two ConstNeighborhoodIterators of like pixel type and dimensionality. The radii of the iterators are ignored.

Definition at line 325 of file itkConstNeighborhoodIterator.h.

bool itk::Neighborhood< TImage::InternalPixelType * , VDimension, NeighborhoodAllocator<TImage::InternalPixelType * > >::operator!= ( const Self other  )  const [inline, inherited]

Not Equal operator.

Definition at line 121 of file itkNeighborhood.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
Self& itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::operator++ (  )  [inherited]

Increments the pointers in the ConstNeighborhoodIterator, wraps across boundaries automatically, accounting for the disparity in the buffer size and the region size of the image.

Reimplemented in itk::ConstShapedNeighborhoodIterator< TImage, TBoundaryCondition >, and itk::ConstShapedNeighborhoodIterator< ImageType, ZeroFluxNeumannBoundaryCondition< ImageType > >.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
Self& itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::operator+= ( const OffsetType  )  [inherited]

Addition of an itk::Offset. Note that this method does not do any bounds checking. Adding an offset that moves the iterator out of its assigned region will produce undefined results.

Reimplemented in itk::ConstShapedNeighborhoodIterator< TImage, TBoundaryCondition >, and itk::ConstShapedNeighborhoodIterator< ImageType, ZeroFluxNeumannBoundaryCondition< ImageType > >.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
OffsetType itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::operator- ( const Self b  )  [inline, inherited]

Distance between two iterators

Definition at line 375 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
Self& itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::operator-- (  )  [inherited]

Decrements the pointers in the ConstNeighborhoodIterator, wraps across boundaries automatically, accounting for the disparity in the buffer size and the region size of the image.

Reimplemented in itk::ConstShapedNeighborhoodIterator< TImage, TBoundaryCondition >, and itk::ConstShapedNeighborhoodIterator< ImageType, ZeroFluxNeumannBoundaryCondition< ImageType > >.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
Self& itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::operator-= ( const OffsetType  )  [inherited]

Subtraction of an itk::Offset. Note that this method does not do any bounds checking. Subtracting an offset that moves the iterator out of its assigned region will produce undefined results.

Reimplemented in itk::ConstShapedNeighborhoodIterator< TImage, TBoundaryCondition >, and itk::ConstShapedNeighborhoodIterator< ImageType, ZeroFluxNeumannBoundaryCondition< ImageType > >.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
bool itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::operator< ( const Self it  )  const [inline, inherited]

Returns a boolean < comparison of the memory addresses of the center elements of two ConstNeighborhoodIterators of like pixel type and dimensionality. The radii of the iterators are ignored.

Definition at line 331 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
bool itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::operator<= ( const Self it  )  const [inline, inherited]

Returns a boolean < comparison of the memory addresses of the center elements of two ConstNeighborhoodIterators of like pixel type and dimensionality. The radii of the iterators are ignored.

Definition at line 337 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
Self& itk::NeighborhoodIterator< TImage, TBoundaryCondition >::operator= ( const Self orig  )  [inline]
template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
bool itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::operator== ( const Self it  )  const [inline, inherited]

Returns a boolean == comparison of the memory addresses of the center elements of two ConstNeighborhoodIterators of like pixel type and dimensionality. The radii of the iterators are ignored.

Definition at line 319 of file itkConstNeighborhoodIterator.h.

bool itk::Neighborhood< TImage::InternalPixelType * , VDimension, NeighborhoodAllocator<TImage::InternalPixelType * > >::operator== ( const Self other  )  const [inline, inherited]

Comparison operator.

Definition at line 113 of file itkNeighborhood.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
bool itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::operator> ( const Self it  )  const [inline, inherited]

Returns a boolean > comparison of the memory addresses of the center elements of two ConstNeighborhoodIterators of like pixel type and dimensionality. The radii of the iterators are ignored.

Definition at line 343 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
bool itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::operator>= ( const Self it  )  const [inline, inherited]

Returns a boolean >= comparison of the memory addresses of the center elements of two ConstNeighborhoodIterators of like pixel type and dimensionality. The radii of the iterators are ignored.

Definition at line 349 of file itkConstNeighborhoodIterator.h.

const TImage::InternalPixelType * & itk::Neighborhood< TImage::InternalPixelType * , VDimension, NeighborhoodAllocator<TImage::InternalPixelType * > >::operator[] ( unsigned int  i  )  const [inline, inherited]

Pass-through data access methods to the buffer.

Definition at line 170 of file itkNeighborhood.h.

TImage::InternalPixelType * & itk::Neighborhood< TImage::InternalPixelType * , VDimension, NeighborhoodAllocator<TImage::InternalPixelType * > >::operator[] ( unsigned int  i  )  [inline, inherited]

Pass-through data access methods to the buffer.

Definition at line 168 of file itkNeighborhood.h.

const TImage::InternalPixelType * & itk::Neighborhood< TImage::InternalPixelType * , VDimension, NeighborhoodAllocator<TImage::InternalPixelType * > >::operator[] ( const OffsetType o  )  const [inline, inherited]

Get pixel value by offset

Definition at line 213 of file itkNeighborhood.h.

TImage::InternalPixelType * & itk::Neighborhood< TImage::InternalPixelType * , VDimension, NeighborhoodAllocator<TImage::InternalPixelType * > >::operator[] ( const OffsetType o  )  [inline, inherited]

Get pixel value by offset

Definition at line 211 of file itkNeighborhood.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
virtual void itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::OverrideBoundaryCondition ( const ImageBoundaryConditionPointerType  i  )  [inline, virtual, inherited]

Allows a user to override the internal boundary condition. Care should be taken to ensure that the overriding boundary condition is a persistent object during the time it is referenced. The overriding condition can be of a different type than the default type as long as it is a subclass of ImageBoundaryCondition.

Definition at line 388 of file itkConstNeighborhoodIterator.h.

void itk::Neighborhood< TImage::InternalPixelType * , VDimension, NeighborhoodAllocator<TImage::InternalPixelType * > >::Print ( std::ostream &  os  )  const [inline, inherited]

Standard itk object method.

Definition at line 200 of file itkNeighborhood.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
virtual void itk::NeighborhoodIterator< TImage, TBoundaryCondition >::PrintSelf ( std::ostream &  ,
Indent   
) const [virtual]
template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
virtual void itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::ResetBoundaryCondition (  )  [inline, virtual, inherited]

Resets the boundary condition to the internal, default conditions specified by the template parameter.

Definition at line 394 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
virtual void itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::SetBeginIndex ( const IndexType start  )  [inline, protected, virtual, inherited]

Default method for setting the index of the first pixel in the iteration region.

Definition at line 444 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
virtual void itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::SetBound ( const SizeType  )  [protected, virtual, inherited]

Virtual method for setting internal loop boundaries. This method must be defined in each subclass because each subclass may handle loop boundaries differently.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
void itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::SetBoundaryCondition ( const TBoundaryCondition &  c  )  [inline, inherited]

Sets the internal, default boundary condition.

Definition at line 398 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
virtual void itk::NeighborhoodIterator< TImage, TBoundaryCondition >::SetCenterPixel ( const PixelType p  )  [inline, virtual]

Returns the central pixel of the neighborhood.

Definition at line 264 of file itkNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
virtual void itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::SetEndIndex (  )  [protected, virtual, inherited]

Default method for setting the index of the first pixel in the iteration region.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
void itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::SetLocation ( const IndexType position  )  [inline, inherited]

This method positions the iterator at an indexed location in the image. SetLocation should _NOT_ be used to update the position of the iterator during iteration, only for initializing it to a position prior to iteration. This method is not optimized for speed.

Definition at line 356 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
virtual void itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::SetLoop ( const IndexType p  )  [inline, protected, virtual, inherited]

Default method for setting the coordinate location of the iterator. Loop indicies correspond to the actual Image region index.

Definition at line 428 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
void itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::SetNeedToUseBoundaryCondition ( bool  b  )  [inline, inherited]

Definition at line 414 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
virtual void itk::NeighborhoodIterator< TImage, TBoundaryCondition >::SetNeighborhood ( const NeighborhoodType  )  [virtual]

Virtual function that replaces the pixel values in the image neighborhood that are pointed to by this NeighborhoodIterator with the pixel values contained in a Neighborhood.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
virtual void itk::NeighborhoodIterator< TImage, TBoundaryCondition >::SetNext ( const unsigned  axis,
const unsigned  i,
const PixelType v 
) [inline, virtual]

Sets the pixel value located i pixels distant from the neighborhood center in the positive specified ``axis'' direction. No bounds checking is done on the size of the neighborhood.

Definition at line 291 of file itkNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
virtual void itk::NeighborhoodIterator< TImage, TBoundaryCondition >::SetNext ( const unsigned  axis,
const PixelType v 
) [inline, virtual]

Sets the pixel value located one pixel distant from the neighborhood center in the specifed positive axis direction. No bounds checking is done on the size of the neighborhood.

Definition at line 300 of file itkNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
virtual void itk::NeighborhoodIterator< TImage, TBoundaryCondition >::SetPixel ( const unsigned  i,
const PixelType v 
) [virtual]

Set the pixel at the ith location.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
virtual void itk::NeighborhoodIterator< TImage, TBoundaryCondition >::SetPixel ( const unsigned  i,
const PixelType v,
bool &  status 
) [virtual]

Special SetPixel method which quietly ignores out-of-bounds attempts. Sets status TRUE if pixel has been set, FALSE otherwise.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
virtual void itk::NeighborhoodIterator< TImage, TBoundaryCondition >::SetPixel ( const OffsetType  o,
const PixelType v 
) [inline, virtual]

Set the pixel at offset o from the neighborhood center

Definition at line 283 of file itkNeighborhoodIterator.h.

Referenced by itk::NeighborhoodIterator< ImageType, ZeroFluxNeumannBoundaryCondition< ImageType > >::SetPixel().

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
virtual void itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::SetPixelPointers ( const IndexType  )  [protected, virtual, inherited]

Default method for setting the values of the internal pointers to itk::Image memory buffer locations. This method should generally only be called when the iterator is initialized.

See also:
SetLocation
template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
virtual void itk::NeighborhoodIterator< TImage, TBoundaryCondition >::SetPrevious ( const unsigned  axis,
const unsigned  i,
const PixelType v 
) [inline, virtual]

Sets the pixel value located i pixels distant from the neighborhood center in the negative specified ``axis'' direction. No bounds checking is done on the size of the neighborhood.

Definition at line 307 of file itkNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
virtual void itk::NeighborhoodIterator< TImage, TBoundaryCondition >::SetPrevious ( const unsigned  axis,
const PixelType v 
) [inline, virtual]

Sets the pixel value located one pixel distant from the neighborhood center in the specifed negative axis direction. No bounds checking is done on the size of the neighborhood.

Definition at line 316 of file itkNeighborhoodIterator.h.

void itk::Neighborhood< TImage::InternalPixelType * , VDimension, NeighborhoodAllocator<TImage::InternalPixelType * > >::SetRadius ( const unsigned long *  rad  )  [inline, inherited]

Sets the radius for the neighborhood. Overloaded to support an unsigned long array.

Definition at line 186 of file itkNeighborhood.h.

void itk::Neighborhood< TImage::InternalPixelType * , VDimension, NeighborhoodAllocator<TImage::InternalPixelType * > >::SetRadius ( const SizeType  )  [inherited]

Sets the radius for the neighborhood, calculates size from the radius, and allocates storage.

void itk::Neighborhood< TImage::InternalPixelType * , VDimension, NeighborhoodAllocator<TImage::InternalPixelType * > >::SetRadius ( const unsigned  long  )  [inherited]

Overloads SetRadius to allow a single long integer argument that is used as the radius of all the dimensions of the Neighborhood (resulting in a "square" neighborhood).

void itk::Neighborhood< TImage::InternalPixelType * , VDimension, NeighborhoodAllocator<TImage::InternalPixelType * > >::SetSize (  )  [inline, protected, inherited]

Sets the length along each dimension.

Definition at line 233 of file itkNeighborhood.h.

unsigned int itk::Neighborhood< TImage::InternalPixelType * , VDimension, NeighborhoodAllocator<TImage::InternalPixelType * > >::Size ( void   )  const [inline, inherited]

More STL-style support.

Definition at line 164 of file itkNeighborhood.h.


Member Data Documentation

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
const unsigned int itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::Dimension = TImage::ImageDimension [static, inherited]
template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
const InternalPixelType* itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::m_Begin [protected, inherited]

A pointer to the first pixel in the iteration region.

Definition at line 459 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
IndexType itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::m_BeginIndex [protected, inherited]

The starting index for iteration within the itk::Image region on which this ConstNeighborhoodIterator is defined.

Definition at line 453 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
IndexType itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::m_Bound [protected, inherited]

An array of upper looping boundaries used during iteration.

Definition at line 456 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
ImageBoundaryConditionPointerType itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::m_BoundaryCondition [protected, inherited]

Pointer to the actual boundary condition that will be used. By default this points to m_BoundaryCondition, but OverrideBoundaryCondition allows a user to point this variable an external boundary condition.

Definition at line 488 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
ImageType::ConstWeakPointer itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::m_ConstImage [protected, inherited]

The image on which iteration is defined.

Definition at line 462 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
const InternalPixelType* itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::m_End [protected, inherited]

A pointer to one past the last pixel in the iteration region.

Definition at line 465 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
IndexType itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::m_EndIndex [protected, inherited]

The end index for iteration within the itk::Image region on which this ConstNeighborhoodIterator is defined.

Definition at line 469 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
bool itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::m_InBounds[Dimension] [mutable, protected, inherited]

Denotes which of the iterators dimensional sides spill outside region of interest boundaries.

Definition at line 492 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
IndexType itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::m_InnerBoundsHigh [protected, inherited]

Upper threshold of in-bounds loop counter values.

Definition at line 506 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
IndexType itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::m_InnerBoundsLow [protected, inherited]

Lower threshold of in-bounds loop counter values.

Definition at line 503 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
TBoundaryCondition itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::m_InternalBoundaryCondition [protected, inherited]

Default boundary condition.

Definition at line 509 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
bool itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::m_IsInBounds [mutable, protected, inherited]

Denotes if iterator is entirely within bounds

Definition at line 495 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
bool itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::m_IsInBoundsValid [mutable, protected, inherited]

Is the m_InBounds and m_IsInBounds variables up to date? Set to false whenever the iterator is repositioned. Set to true within InBounds().

Definition at line 500 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
IndexType itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::m_Loop [protected, inherited]

Array of loop counters used during iteration.

Definition at line 472 of file itkConstNeighborhoodIterator.h.

Referenced by itk::ConstNeighborhoodIterator< TSparseImageType >::operator-().

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
bool itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::m_NeedToUseBoundaryCondition [protected, inherited]

Does the specified region need to worry about boundary conditions?

Definition at line 512 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
NeighborhoodAccessorFunctorType itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::m_NeighborhoodAccessorFunctor [protected, inherited]

Functor type used to access neighborhoods of pixel pointers

Definition at line 515 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
RegionType itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::m_Region [protected, inherited]

The region over which iteration is defined.

Definition at line 475 of file itkConstNeighborhoodIterator.h.

template<class TImage, class TBoundaryCondition = ZeroFluxNeumannBoundaryCondition<TImage>>
OffsetType itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::m_WrapOffset [protected, inherited]

The internal array of offsets that provide support for regions of interest. An offset for each dimension is necessary to shift pointers when wrapping around region edges because region memory is not necessarily contiguous within the buffer.

Definition at line 482 of file itkConstNeighborhoodIterator.h.

const unsigned int itk::Neighborhood< TImage::InternalPixelType * , VDimension, NeighborhoodAllocator<TImage::InternalPixelType * > >::NeighborhoodDimension [static, inherited]

External support for dimensionality.

Definition at line 66 of file itkNeighborhood.h.


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

Generated at Tue Jul 13 2010 00:41:25 for ITK by doxygen 1.7.1 written by Dimitri van Heesch, © 1997-2000