Main Page   Groups   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Concepts

itk::BinaryCrossStructuringElement< TPixel, VDimension, TAllocator > Class Template Reference
[OperatorsImage Iterators]

#include <itkBinaryCrossStructuringElement.h>

Inheritance diagram for itk::BinaryCrossStructuringElement< TPixel, VDimension, TAllocator >:

Inheritance graph
[legend]
Collaboration diagram for itk::BinaryCrossStructuringElement< TPixel, VDimension, TAllocator >:

Collaboration graph
[legend]
List of all members.

Detailed Description

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
class itk::BinaryCrossStructuringElement< TPixel, VDimension, TAllocator >

A Neighborhood that represents a cross structuring element with binary elements.

This class defines a Neighborhood whose elements are either 0 or 1 depending on whether they are the face connected neighbors of the neighborhood center. The Neighborhood is defined to be of radii 1 (i.e. 3x3x...).

See also:
Neighborhood

MorphologyImageFilter

BinaryDilateImageFilter

BinaryErodeImageFilter

Definition at line 44 of file itkBinaryCrossStructuringElement.h.

Public Types

typedef TAllocator AllocatorType
typedef AllocatorType::const_iterator ConstIterator
typedef AllocatorType::iterator Iterator
typedef Superclass::OffsetType OffsetType
typedef OffsetType::OffsetValueType OffsetValueType
typedef TPixel PixelType
typedef Superclass::RadiusType RadiusType
typedef BinaryCrossStructuringElement Self
typedef Superclass::SizeType SizeType
typedef Superclass::SizeValueType SizeValueType
typedef SliceIterator< TPixel,
Self
SliceIteratorType
typedef Neighborhood< TPixel,
VDimension, TAllocator > 
Superclass

Public Member Functions

 BinaryCrossStructuringElement (const Self &other)
 BinaryCrossStructuringElement ()
void CreateStructuringElement ()
unsigned int GetCenterNeighborhoodIndex () const
TPixel GetCenterValue () const
virtual unsigned int GetNeighborhoodIndex (const OffsetType &) const
OffsetType GetOffset (unsigned int i) const
unsigned long GetRadius (const unsigned long n) const
const SizeType GetRadius () const
SizeType GetSize () const
unsigned long GetSize (const unsigned long n) const
std::slice GetSlice (unsigned int) const
unsigned GetStride (const unsigned axis) const
 itkStaticConstMacro (NeighborhoodDimension, unsigned int, VDimension)
bool operator!= (const Self &other) const
bool operator== (const Self &other) const
void Print (std::ostream &os) const
void SetRadius (const unsigned long)
void SetRadius (const SizeType &)
unsigned int Size () const
virtual ~BinaryCrossStructuringElement ()
ConstIterator Begin () const
Iterator Begin ()
ConstIterator End () const
Iterator End ()
const AllocatorTypeGetBufferReference () const
AllocatorTypeGetBufferReference ()
TPixel & GetElement (unsigned int i)
const TPixel & operator[] (unsigned int i) const
TPixel & operator[] (unsigned int i)
Selfoperator= (const Self &other)
const TPixel & operator[] (const OffsetType &o) const
TPixel & operator[] (const OffsetType &o)
void SetRadius (const unsigned long *rad)

Protected Member Functions

virtual void Allocate (unsigned int i)
virtual void ComputeNeighborhoodOffsetTable ()
virtual void ComputeNeighborhoodStrideTable ()
virtual void PrintSelf (std::ostream &, Indent) const
void SetSize ()


Member Typedef Documentation

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
typedef TAllocator itk::BinaryCrossStructuringElement< TPixel, VDimension, TAllocator >::AllocatorType

External support for allocator type.

Reimplemented from itk::Neighborhood< TPixel, VDimension, TAllocator >.

Definition at line 53 of file itkBinaryCrossStructuringElement.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
typedef AllocatorType::const_iterator itk::BinaryCrossStructuringElement< TPixel, VDimension, TAllocator >::ConstIterator

Reimplemented from itk::Neighborhood< TPixel, VDimension, TAllocator >.

Definition at line 65 of file itkBinaryCrossStructuringElement.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
typedef AllocatorType::iterator itk::BinaryCrossStructuringElement< TPixel, VDimension, TAllocator >::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::Neighborhood< TPixel, VDimension, TAllocator >.

Definition at line 64 of file itkBinaryCrossStructuringElement.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
typedef Superclass::OffsetType itk::BinaryCrossStructuringElement< TPixel, VDimension, TAllocator >::OffsetType

Offset and value typedef support.

Reimplemented from itk::Neighborhood< TPixel, VDimension, TAllocator >.

Definition at line 72 of file itkBinaryCrossStructuringElement.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
typedef OffsetType::OffsetValueType itk::BinaryCrossStructuringElement< TPixel, VDimension, TAllocator >::OffsetValueType

Definition at line 73 of file itkBinaryCrossStructuringElement.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
typedef TPixel itk::BinaryCrossStructuringElement< TPixel, VDimension, TAllocator >::PixelType

External support for pixel type.

Reimplemented from itk::Neighborhood< TPixel, VDimension, TAllocator >.

Definition at line 59 of file itkBinaryCrossStructuringElement.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
typedef Superclass::RadiusType itk::BinaryCrossStructuringElement< TPixel, VDimension, TAllocator >::RadiusType

Radius typedef support.

Reimplemented from itk::Neighborhood< TPixel, VDimension, TAllocator >.

Definition at line 76 of file itkBinaryCrossStructuringElement.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
typedef BinaryCrossStructuringElement itk::BinaryCrossStructuringElement< TPixel, VDimension, TAllocator >::Self

Standard class typedefs.

Reimplemented from itk::Neighborhood< TPixel, VDimension, TAllocator >.

Definition at line 49 of file itkBinaryCrossStructuringElement.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
typedef Superclass::SizeType itk::BinaryCrossStructuringElement< TPixel, VDimension, TAllocator >::SizeType

Size and value typedef support.

Reimplemented from itk::Neighborhood< TPixel, VDimension, TAllocator >.

Definition at line 68 of file itkBinaryCrossStructuringElement.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
typedef Superclass::SizeValueType itk::BinaryCrossStructuringElement< TPixel, VDimension, TAllocator >::SizeValueType

Reimplemented from itk::Neighborhood< TPixel, VDimension, TAllocator >.

Definition at line 69 of file itkBinaryCrossStructuringElement.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
typedef SliceIterator<TPixel, Self> itk::BinaryCrossStructuringElement< TPixel, VDimension, TAllocator >::SliceIteratorType

External slice iterator type typedef support.

Reimplemented from itk::Neighborhood< TPixel, VDimension, TAllocator >.

Definition at line 79 of file itkBinaryCrossStructuringElement.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
typedef Neighborhood<TPixel, VDimension, TAllocator> itk::BinaryCrossStructuringElement< TPixel, VDimension, TAllocator >::Superclass

Definition at line 50 of file itkBinaryCrossStructuringElement.h.


Constructor & Destructor Documentation

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
itk::BinaryCrossStructuringElement< TPixel, VDimension, TAllocator >::BinaryCrossStructuringElement (  )  [inline]

Default constructor.

Definition at line 82 of file itkBinaryCrossStructuringElement.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
virtual itk::BinaryCrossStructuringElement< TPixel, VDimension, TAllocator >::~BinaryCrossStructuringElement (  )  [inline, virtual]

Default destructor.

Definition at line 85 of file itkBinaryCrossStructuringElement.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
itk::BinaryCrossStructuringElement< TPixel, VDimension, TAllocator >::BinaryCrossStructuringElement ( const Self other  )  [inline]

Copy constructor.

Definition at line 88 of file itkBinaryCrossStructuringElement.h.


Member Function Documentation

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
virtual void itk::Neighborhood< TPixel, VDimension, TAllocator >::Allocate ( unsigned int  i  )  [inline, protected, virtual, inherited]

Allocates the neighborhood's memory buffer.

Definition at line 228 of file itkNeighborhood.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
ConstIterator itk::Neighborhood< TPixel, VDimension, TAllocator >::Begin ( void   )  const [inline, inherited]

Reimplemented in itk::ConstShapedNeighborhoodIterator< TImage, TBoundaryCondition >.

Definition at line 148 of file itkNeighborhood.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
Iterator itk::Neighborhood< TPixel, VDimension, TAllocator >::Begin ( void   )  [inline, inherited]

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

Definition at line 144 of file itkNeighborhood.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
virtual void itk::Neighborhood< TPixel, VDimension, TAllocator >::ComputeNeighborhoodOffsetTable (  )  [protected, virtual, inherited]

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

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
virtual void itk::Neighborhood< TPixel, VDimension, TAllocator >::ComputeNeighborhoodStrideTable (  )  [protected, virtual, inherited]

Computes the entries for the stride table

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
void itk::BinaryCrossStructuringElement< TPixel, VDimension, TAllocator >::CreateStructuringElement (  ) 

Build the structuring element

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
ConstIterator itk::Neighborhood< TPixel, VDimension, TAllocator >::End ( void   )  const [inline, inherited]

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

Definition at line 146 of file itkNeighborhood.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
Iterator itk::Neighborhood< TPixel, VDimension, TAllocator >::End ( void   )  [inline, inherited]

STL-style iterator support.

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

Definition at line 142 of file itkNeighborhood.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
const AllocatorType& itk::Neighborhood< TPixel, VDimension, TAllocator >::GetBufferReference (  )  const [inline, inherited]

Definition at line 195 of file itkNeighborhood.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
AllocatorType& itk::Neighborhood< TPixel, VDimension, TAllocator >::GetBufferReference (  )  [inline, inherited]

Returns a reference to the data buffer structure.

Definition at line 193 of file itkNeighborhood.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
unsigned int itk::Neighborhood< TPixel, VDimension, TAllocator >::GetCenterNeighborhoodIndex (  )  const [inline, inherited]

Definition at line 213 of file itkNeighborhood.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
TPixel itk::Neighborhood< TPixel, VDimension, TAllocator >::GetCenterValue (  )  const [inline, inherited]

Returns the element at the center of the neighborhood.

Definition at line 166 of file itkNeighborhood.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
TPixel& itk::Neighborhood< TPixel, VDimension, TAllocator >::GetElement ( unsigned int  i  )  [inline, inherited]

Definition at line 161 of file itkNeighborhood.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
virtual unsigned int itk::Neighborhood< TPixel, VDimension, TAllocator >::GetNeighborhoodIndex ( const OffsetType  )  const [virtual, inherited]

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
OffsetType itk::Neighborhood< TPixel, VDimension, TAllocator >::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 208 of file itkNeighborhood.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
unsigned long itk::Neighborhood< TPixel, VDimension, TAllocator >::GetRadius ( const unsigned long  n  )  const [inline, inherited]

Returns the radius of the neighborhood along a specified dimension.

Definition at line 123 of file itkNeighborhood.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
const SizeType itk::Neighborhood< TPixel, VDimension, TAllocator >::GetRadius ( void   )  const [inline, inherited]

Returns the radius of the neighborhood.

Definition at line 118 of file itkNeighborhood.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
SizeType itk::Neighborhood< TPixel, VDimension, TAllocator >::GetSize ( void   )  const [inline, inherited]

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

Definition at line 132 of file itkNeighborhood.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
unsigned long itk::Neighborhood< TPixel, VDimension, TAllocator >::GetSize ( const unsigned long  n  )  const [inline, inherited]

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

Definition at line 128 of file itkNeighborhood.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
std::slice itk::Neighborhood< TPixel, VDimension, TAllocator >::GetSlice ( unsigned  int  )  const [inherited]

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
unsigned itk::Neighborhood< TPixel, VDimension, TAllocator >::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 138 of file itkNeighborhood.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
itk::BinaryCrossStructuringElement< TPixel, VDimension, TAllocator >::itkStaticConstMacro ( NeighborhoodDimension  ,
unsigned  int,
VDimension   
)

External support for dimensionality.

Reimplemented from itk::Neighborhood< TPixel, VDimension, TAllocator >.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
bool itk::Neighborhood< TPixel, VDimension, TAllocator >::operator!= ( const Self other  )  const [inline, inherited]

Not Equal operator.

Definition at line 110 of file itkNeighborhood.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
Self& itk::BinaryCrossStructuringElement< TPixel, VDimension, TAllocator >::operator= ( const Self other  )  [inline]

Assignment operator.

Definition at line 94 of file itkBinaryCrossStructuringElement.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
bool itk::Neighborhood< TPixel, VDimension, TAllocator >::operator== ( const Self other  )  const [inline, inherited]

Comparison operator.

Definition at line 102 of file itkNeighborhood.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
const TPixel& itk::Neighborhood< TPixel, VDimension, TAllocator >::operator[] ( const OffsetType o  )  const [inline, inherited]

Definition at line 202 of file itkNeighborhood.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
TPixel& itk::Neighborhood< TPixel, VDimension, TAllocator >::operator[] ( const OffsetType o  )  [inline, inherited]

Get pixel value by offset

Definition at line 200 of file itkNeighborhood.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
const TPixel& itk::Neighborhood< TPixel, VDimension, TAllocator >::operator[] ( unsigned int  i  )  const [inline, inherited]

Definition at line 159 of file itkNeighborhood.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
TPixel& itk::Neighborhood< TPixel, VDimension, TAllocator >::operator[] ( unsigned int  i  )  [inline, inherited]

Pass-through data access methods to the buffer.

Definition at line 157 of file itkNeighborhood.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
void itk::Neighborhood< TPixel, VDimension, TAllocator >::Print ( std::ostream &  os  )  const [inline, inherited]

Standard itk object method.

Definition at line 189 of file itkNeighborhood.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
virtual void itk::Neighborhood< TPixel, VDimension, TAllocator >::PrintSelf ( std::ostream &  ,
Indent   
) const [protected, virtual, inherited]

Standard itk object method.

Reimplemented in itk::AnnulusOperator< TPixel, TDimension, TAllocator >, itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >, itk::ConstShapedNeighborhoodIterator< TImage, TBoundaryCondition >, itk::DerivativeOperator< TPixel, VDimension, TAllocator >, itk::GaussianOperator< TPixel, VDimension, TAllocator >, itk::LaplacianOperator< TPixel, VDimension, TAllocator >, itk::NeighborhoodIterator< TImage, TBoundaryCondition >, itk::NeighborhoodOperator< TPixel, VDimension, TAllocator >, itk::ShapedNeighborhoodIterator< TImage, TBoundaryCondition >, itk::DerivativeOperator< PixelType::ValueType, itkGetStaticConstMacro(ImageDimension)>, itk::DerivativeOperator< Superclass::PixelType, itkGetStaticConstMacro(ImageDimension)>, itk::DerivativeOperator< TOutputImage::PixelType, itkGetStaticConstMacro(ImageDimension)>, itk::DerivativeOperator< OutputImagePixelType, itkGetStaticConstMacro(ImageDimension)>, itk::NeighborhoodOperator< Superclass::PixelType, VDimension, itk::NeighborhoodAllocator< Superclass::PixelType > >, itk::NeighborhoodOperator< OutputImagePixelType, VDimension, itk::NeighborhoodAllocator< OutputImagePixelType > >, itk::NeighborhoodOperator< TOutputImage::PixelType, VDimension, itk::NeighborhoodAllocator< TOutputImage::PixelType > >, itk::NeighborhoodOperator< PixelType::ValueType, VDimension, itk::NeighborhoodAllocator< PixelType::ValueType > >, and itk::NeighborhoodOperator< TPixel, TDimension, TAllocator >.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
void itk::Neighborhood< TPixel, VDimension, TAllocator >::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).

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
void itk::Neighborhood< TPixel, VDimension, TAllocator >::SetRadius ( const unsigned long *  rad  )  [inline, inherited]

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

Definition at line 175 of file itkNeighborhood.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
void itk::Neighborhood< TPixel, VDimension, TAllocator >::SetRadius ( const SizeType  )  [inherited]

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

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
void itk::Neighborhood< TPixel, VDimension, TAllocator >::SetSize (  )  [inline, protected, inherited]

Sets the length along each dimension.

Definition at line 220 of file itkNeighborhood.h.

template<class TPixel, unsigned int VDimension = 2, class TAllocator = NeighborhoodAllocator<TPixel>>
unsigned int itk::Neighborhood< TPixel, VDimension, TAllocator >::Size ( void   )  const [inline, inherited]

More STL-style support.

Definition at line 153 of file itkNeighborhood.h.

Referenced by itk::NeighborhoodInnerProduct< Superclass::ImageType >::operator()().


The documentation for this class was generated from the following file:
Generated at Sun Sep 23 15:12:01 2007 for ITK by doxygen 1.5.1 written by Dimitri van Heesch, © 1997-2000