A virtual base object that defines an interface to a class of boundary condition objects for use by neighborhood iterators. More...
#include <itkImageBoundaryCondition.h>
Public Types | |
typedef TImageType::NeighborhoodAccessorFunctorType | NeighborhoodAccessorFunctorType |
typedef Neighborhood < PixelPointerType, itkGetStaticConstMacro(ImageDimension)> | NeighborhoodType |
typedef ImageBoundaryCondition | Self |
typedef TImageType::PixelType | PixelType |
typedef TImageType::InternalPixelType * | PixelPointerType |
typedef Index < itkGetStaticConstMacro(ImageDimension)> | IndexType |
typedef Offset < itkGetStaticConstMacro(ImageDimension)> | OffsetType |
Public Member Functions | |
ImageBoundaryCondition () | |
virtual PixelType | operator() (const OffsetType &point_index, const OffsetType &boundary_offset, const NeighborhoodType *data) const =0 |
virtual PixelType | operator() (const OffsetType &point_index, const OffsetType &boundary_offset, const NeighborhoodType *data, const NeighborhoodAccessorFunctorType &neighborhoodAccessorFunctor) const =0 |
virtual | ~ImageBoundaryCondition () |
virtual bool | RequiresCompleteNeighborhood () |
Static Public Attributes | |
static const unsigned int | ImageDimension = TImageType::ImageDimension |
A virtual base object that defines an interface to a class of boundary condition objects for use by neighborhood iterators.
A boundary condition object supplies a phantom pixel value when given a neighborhood of (pointers to) image values, the (ND) index of the phantom pixel, and its (ND) offset from the boundary. The index of the phantom pixel is relative to the "upper left-hand corner" of the neighborhood (as opposed to its center).
Associated Types Description ---------------- ----------- PixelType The data type of the return value. PixelPointerType A pointer to PixelType. PixelPointerTypeNeighborhood A neighborhood of PixelPointerTypes that points to the pixel values in an image neighborhood.
Definition at line 51 of file itkImageBoundaryCondition.h.
typedef Index<itkGetStaticConstMacro(ImageDimension)> itk::ImageBoundaryCondition< TImageType >::IndexType |
Extract information from the image type
Reimplemented in itk::ConstantBoundaryCondition< TImage >, itk::PeriodicBoundaryCondition< TImage >, itk::ZeroFluxNeumannBoundaryCondition< TImage >, itk::ConstantBoundaryCondition< InputImageType >, itk::ZeroFluxNeumannBoundaryCondition< ImageType >, itk::ZeroFluxNeumannBoundaryCondition< TInputImage >, itk::ZeroFluxNeumannBoundaryCondition< MovedGradientImageType >, itk::ZeroFluxNeumannBoundaryCondition< TInput >, itk::ZeroFluxNeumannBoundaryCondition< FixedImageType >, itk::ZeroFluxNeumannBoundaryCondition< InputImageType >, itk::ZeroFluxNeumannBoundaryCondition< TImageType >, itk::ZeroFluxNeumannBoundaryCondition< FixedGradientImageType >, itk::ZeroFluxNeumannBoundaryCondition< TDeformationField >, and itk::ZeroFluxNeumannBoundaryCondition< TSparseImageType >.
Definition at line 65 of file itkImageBoundaryCondition.h.
typedef TImageType::NeighborhoodAccessorFunctorType itk::ImageBoundaryCondition< TImageType >::NeighborhoodAccessorFunctorType |
Functor used to access pixels from a neighborhood of pixel pointers
Reimplemented in itk::ConstantBoundaryCondition< TImage >, itk::PeriodicBoundaryCondition< TImage >, itk::ZeroFluxNeumannBoundaryCondition< TImage >, itk::ConstantBoundaryCondition< InputImageType >, itk::ZeroFluxNeumannBoundaryCondition< ImageType >, itk::ZeroFluxNeumannBoundaryCondition< TInputImage >, itk::ZeroFluxNeumannBoundaryCondition< MovedGradientImageType >, itk::ZeroFluxNeumannBoundaryCondition< TInput >, itk::ZeroFluxNeumannBoundaryCondition< FixedImageType >, itk::ZeroFluxNeumannBoundaryCondition< InputImageType >, itk::ZeroFluxNeumannBoundaryCondition< TImageType >, itk::ZeroFluxNeumannBoundaryCondition< FixedGradientImageType >, itk::ZeroFluxNeumannBoundaryCondition< TDeformationField >, and itk::ZeroFluxNeumannBoundaryCondition< TSparseImageType >.
Definition at line 75 of file itkImageBoundaryCondition.h.
typedef Neighborhood<PixelPointerType, itkGetStaticConstMacro(ImageDimension)> itk::ImageBoundaryCondition< TImageType >::NeighborhoodType |
Type of the data container passed to this function object.
Reimplemented in itk::ConstantBoundaryCondition< TImage >, itk::PeriodicBoundaryCondition< TImage >, itk::ZeroFluxNeumannBoundaryCondition< TImage >, itk::ConstantBoundaryCondition< InputImageType >, itk::ZeroFluxNeumannBoundaryCondition< ImageType >, itk::ZeroFluxNeumannBoundaryCondition< TInputImage >, itk::ZeroFluxNeumannBoundaryCondition< MovedGradientImageType >, itk::ZeroFluxNeumannBoundaryCondition< TInput >, itk::ZeroFluxNeumannBoundaryCondition< FixedImageType >, itk::ZeroFluxNeumannBoundaryCondition< InputImageType >, itk::ZeroFluxNeumannBoundaryCondition< TImageType >, itk::ZeroFluxNeumannBoundaryCondition< FixedGradientImageType >, itk::ZeroFluxNeumannBoundaryCondition< TDeformationField >, and itk::ZeroFluxNeumannBoundaryCondition< TSparseImageType >.
Definition at line 71 of file itkImageBoundaryCondition.h.
typedef Offset<itkGetStaticConstMacro(ImageDimension)> itk::ImageBoundaryCondition< TImageType >::OffsetType |
Extract information from the image type
Reimplemented in itk::ConstantBoundaryCondition< TImage >, itk::PeriodicBoundaryCondition< TImage >, itk::ZeroFluxNeumannBoundaryCondition< TImage >, itk::ConstantBoundaryCondition< InputImageType >, itk::ZeroFluxNeumannBoundaryCondition< ImageType >, itk::ZeroFluxNeumannBoundaryCondition< TInputImage >, itk::ZeroFluxNeumannBoundaryCondition< MovedGradientImageType >, itk::ZeroFluxNeumannBoundaryCondition< TInput >, itk::ZeroFluxNeumannBoundaryCondition< FixedImageType >, itk::ZeroFluxNeumannBoundaryCondition< InputImageType >, itk::ZeroFluxNeumannBoundaryCondition< TImageType >, itk::ZeroFluxNeumannBoundaryCondition< FixedGradientImageType >, itk::ZeroFluxNeumannBoundaryCondition< TDeformationField >, and itk::ZeroFluxNeumannBoundaryCondition< TSparseImageType >.
Definition at line 66 of file itkImageBoundaryCondition.h.
typedef TImageType::InternalPixelType* itk::ImageBoundaryCondition< TImageType >::PixelPointerType |
Extract information from the image type
Reimplemented in itk::ConstantBoundaryCondition< TImage >, itk::PeriodicBoundaryCondition< TImage >, itk::ZeroFluxNeumannBoundaryCondition< TImage >, itk::ConstantBoundaryCondition< InputImageType >, itk::ZeroFluxNeumannBoundaryCondition< ImageType >, itk::ZeroFluxNeumannBoundaryCondition< TInputImage >, itk::ZeroFluxNeumannBoundaryCondition< MovedGradientImageType >, itk::ZeroFluxNeumannBoundaryCondition< TInput >, itk::ZeroFluxNeumannBoundaryCondition< FixedImageType >, itk::ZeroFluxNeumannBoundaryCondition< InputImageType >, itk::ZeroFluxNeumannBoundaryCondition< TImageType >, itk::ZeroFluxNeumannBoundaryCondition< FixedGradientImageType >, itk::ZeroFluxNeumannBoundaryCondition< TDeformationField >, and itk::ZeroFluxNeumannBoundaryCondition< TSparseImageType >.
Definition at line 64 of file itkImageBoundaryCondition.h.
typedef TImageType::PixelType itk::ImageBoundaryCondition< TImageType >::PixelType |
Extract information from the image type
Reimplemented in itk::ConstantBoundaryCondition< TImage >, itk::PeriodicBoundaryCondition< TImage >, itk::ZeroFluxNeumannBoundaryCondition< TImage >, itk::ConstantBoundaryCondition< InputImageType >, itk::ZeroFluxNeumannBoundaryCondition< ImageType >, itk::ZeroFluxNeumannBoundaryCondition< TInputImage >, itk::ZeroFluxNeumannBoundaryCondition< MovedGradientImageType >, itk::ZeroFluxNeumannBoundaryCondition< TInput >, itk::ZeroFluxNeumannBoundaryCondition< FixedImageType >, itk::ZeroFluxNeumannBoundaryCondition< InputImageType >, itk::ZeroFluxNeumannBoundaryCondition< TImageType >, itk::ZeroFluxNeumannBoundaryCondition< FixedGradientImageType >, itk::ZeroFluxNeumannBoundaryCondition< TDeformationField >, and itk::ZeroFluxNeumannBoundaryCondition< TSparseImageType >.
Definition at line 63 of file itkImageBoundaryCondition.h.
typedef ImageBoundaryCondition itk::ImageBoundaryCondition< TImageType >::Self |
Standard typedefs.
Reimplemented in itk::ConstantBoundaryCondition< TImage >, itk::PeriodicBoundaryCondition< TImage >, itk::ZeroFluxNeumannBoundaryCondition< TImage >, itk::ConstantBoundaryCondition< InputImageType >, itk::ZeroFluxNeumannBoundaryCondition< ImageType >, itk::ZeroFluxNeumannBoundaryCondition< TInputImage >, itk::ZeroFluxNeumannBoundaryCondition< MovedGradientImageType >, itk::ZeroFluxNeumannBoundaryCondition< TInput >, itk::ZeroFluxNeumannBoundaryCondition< FixedImageType >, itk::ZeroFluxNeumannBoundaryCondition< InputImageType >, itk::ZeroFluxNeumannBoundaryCondition< TImageType >, itk::ZeroFluxNeumannBoundaryCondition< FixedGradientImageType >, itk::ZeroFluxNeumannBoundaryCondition< TDeformationField >, and itk::ZeroFluxNeumannBoundaryCondition< TSparseImageType >.
Definition at line 60 of file itkImageBoundaryCondition.h.
itk::ImageBoundaryCondition< TImageType >::ImageBoundaryCondition | ( | ) | [inline] |
Default constructor.
Definition at line 78 of file itkImageBoundaryCondition.h.
virtual itk::ImageBoundaryCondition< TImageType >::~ImageBoundaryCondition | ( | ) | [inline, virtual] |
Definition at line 96 of file itkImageBoundaryCondition.h.
virtual PixelType itk::ImageBoundaryCondition< TImageType >::operator() | ( | const OffsetType & | point_index, | |
const OffsetType & | boundary_offset, | |||
const NeighborhoodType * | data | |||
) | const [pure virtual] |
Returns a value for a given out-of-bounds pixel. The arguments are the phantom pixel (ND) index within the neighborhood, the pixel's offset from the nearest image border pixel, and a neighborhood of pointers to pixel values in the image.
Implemented in itk::ConstantBoundaryCondition< TImage >, itk::PeriodicBoundaryCondition< TImage >, itk::ZeroFluxNeumannBoundaryCondition< TImage >, itk::ConstantBoundaryCondition< InputImageType >, itk::ZeroFluxNeumannBoundaryCondition< ImageType >, itk::ZeroFluxNeumannBoundaryCondition< TInputImage >, itk::ZeroFluxNeumannBoundaryCondition< MovedGradientImageType >, itk::ZeroFluxNeumannBoundaryCondition< TInput >, itk::ZeroFluxNeumannBoundaryCondition< FixedImageType >, itk::ZeroFluxNeumannBoundaryCondition< InputImageType >, itk::ZeroFluxNeumannBoundaryCondition< TImageType >, itk::ZeroFluxNeumannBoundaryCondition< FixedGradientImageType >, itk::ZeroFluxNeumannBoundaryCondition< TDeformationField >, and itk::ZeroFluxNeumannBoundaryCondition< TSparseImageType >.
virtual PixelType itk::ImageBoundaryCondition< TImageType >::operator() | ( | const OffsetType & | point_index, | |
const OffsetType & | boundary_offset, | |||
const NeighborhoodType * | data, | |||
const NeighborhoodAccessorFunctorType & | neighborhoodAccessorFunctor | |||
) | const [pure virtual] |
Computes and returns the appropriate pixel value from neighborhood iterator data, using the functor.
Implemented in itk::ZeroFluxNeumannBoundaryCondition< ImageType >, itk::ZeroFluxNeumannBoundaryCondition< TInputImage >, itk::ZeroFluxNeumannBoundaryCondition< MovedGradientImageType >, itk::ZeroFluxNeumannBoundaryCondition< TInput >, itk::ZeroFluxNeumannBoundaryCondition< FixedImageType >, itk::ZeroFluxNeumannBoundaryCondition< InputImageType >, itk::ZeroFluxNeumannBoundaryCondition< TImageType >, itk::ZeroFluxNeumannBoundaryCondition< FixedGradientImageType >, itk::ZeroFluxNeumannBoundaryCondition< TDeformationField >, and itk::ZeroFluxNeumannBoundaryCondition< TSparseImageType >.
virtual bool itk::ImageBoundaryCondition< TImageType >::RequiresCompleteNeighborhood | ( | ) | [inline, virtual] |
Tell if the boundary condition can index to any location within the associated iterator's neighborhood or if it has some limited subset (such as none) that it relies upon. Subclasses should override this method if they can safely limit indexes to active pixels (or no pixels).
Reimplemented in itk::ConstantBoundaryCondition< TImage >, and itk::ConstantBoundaryCondition< InputImageType >.
Definition at line 104 of file itkImageBoundaryCondition.h.
const unsigned int itk::ImageBoundaryCondition< TImageType >::ImageDimension = TImageType::ImageDimension [static] |
Extract information from the image type
Reimplemented in itk::ConstantBoundaryCondition< TImage >, itk::PeriodicBoundaryCondition< TImage >, itk::ZeroFluxNeumannBoundaryCondition< TImage >, itk::ConstantBoundaryCondition< InputImageType >, itk::ZeroFluxNeumannBoundaryCondition< ImageType >, itk::ZeroFluxNeumannBoundaryCondition< TInputImage >, itk::ZeroFluxNeumannBoundaryCondition< MovedGradientImageType >, itk::ZeroFluxNeumannBoundaryCondition< TInput >, itk::ZeroFluxNeumannBoundaryCondition< FixedImageType >, itk::ZeroFluxNeumannBoundaryCondition< InputImageType >, itk::ZeroFluxNeumannBoundaryCondition< TImageType >, itk::ZeroFluxNeumannBoundaryCondition< FixedGradientImageType >, itk::ZeroFluxNeumannBoundaryCondition< TDeformationField >, and itk::ZeroFluxNeumannBoundaryCondition< TSparseImageType >.
Definition at line 57 of file itkImageBoundaryCondition.h.