ITK  5.4.0
Insight Toolkit
Public Types | Public Member Functions | Private Attributes | List of all members
itk::VectorImageNeighborhoodAccessorFunctor< TImage > Class Template Reference

#include <itkVectorImageNeighborhoodAccessorFunctor.h>

Detailed Description

template<typename TImage>
class itk::VectorImageNeighborhoodAccessorFunctor< TImage >

Provides accessor interfaces to Access pixels and is meant to be used on pointers to pixels held by the Neighborhood class.

A typical user should not need to use this class. The class is internally used by the neighborhood iterators.

Note
This work is part of the National Alliance for Medical Image Computing (NAMIC), funded by the National Institutes of Health through the NIH Roadmap for Medical Research, Grant U54 EB005149.

Definition at line 41 of file itkVectorImageNeighborhoodAccessorFunctor.h.

Public Types

template<typename TOutput = ImageType>
using ImageBoundaryConditionType = ImageBoundaryCondition< ImageType, TOutput >
 
using ImageType = TImage
 
using InternalPixelType = typename ImageType::InternalPixelType
 
using NeighborhoodType = Neighborhood< InternalPixelType *, TImage::ImageDimension >
 
using OffsetType = typename ImageType::OffsetType
 
using PixelType = typename ImageType::PixelType
 
using VectorLengthType = unsigned int
 

Public Member Functions

template<typename TOutput >
ImageBoundaryConditionType< TOutput >::OutputPixelType BoundaryCondition (const OffsetType &point_index, const OffsetType &boundary_offset, const NeighborhoodType *data, const ImageBoundaryConditionType< TOutput > *boundaryCondition) const
 
PixelType Get (const InternalPixelType *pixelPointer) const
 
VectorLengthType GetVectorLength ()
 
void Set (InternalPixelType *const pixelPointer, const PixelType &p) const
 
void SetVectorLength (VectorLengthType length)
 
 VectorImageNeighborhoodAccessorFunctor ()=default
 
 VectorImageNeighborhoodAccessorFunctor (VectorLengthType length)
 
void SetBegin (const InternalPixelType *begin)
 

Private Attributes

InternalPixelTypem_Begin { nullptr }
 
VectorLengthType m_OffsetMultiplier { 0 }
 
VectorLengthType m_VectorLength { 0 }
 

Member Typedef Documentation

◆ ImageBoundaryConditionType

template<typename TImage >
template<typename TOutput = ImageType>
using itk::VectorImageNeighborhoodAccessorFunctor< TImage >::ImageBoundaryConditionType = ImageBoundaryCondition<ImageType, TOutput>

Definition at line 53 of file itkVectorImageNeighborhoodAccessorFunctor.h.

◆ ImageType

template<typename TImage >
using itk::VectorImageNeighborhoodAccessorFunctor< TImage >::ImageType = TImage

Definition at line 44 of file itkVectorImageNeighborhoodAccessorFunctor.h.

◆ InternalPixelType

template<typename TImage >
using itk::VectorImageNeighborhoodAccessorFunctor< TImage >::InternalPixelType = typename ImageType::InternalPixelType

Definition at line 46 of file itkVectorImageNeighborhoodAccessorFunctor.h.

◆ NeighborhoodType

template<typename TImage >
using itk::VectorImageNeighborhoodAccessorFunctor< TImage >::NeighborhoodType = Neighborhood<InternalPixelType *, TImage::ImageDimension>

Definition at line 50 of file itkVectorImageNeighborhoodAccessorFunctor.h.

◆ OffsetType

template<typename TImage >
using itk::VectorImageNeighborhoodAccessorFunctor< TImage >::OffsetType = typename ImageType::OffsetType

Definition at line 48 of file itkVectorImageNeighborhoodAccessorFunctor.h.

◆ PixelType

template<typename TImage >
using itk::VectorImageNeighborhoodAccessorFunctor< TImage >::PixelType = typename ImageType::PixelType

Definition at line 45 of file itkVectorImageNeighborhoodAccessorFunctor.h.

◆ VectorLengthType

template<typename TImage >
using itk::VectorImageNeighborhoodAccessorFunctor< TImage >::VectorLengthType = unsigned int

Definition at line 47 of file itkVectorImageNeighborhoodAccessorFunctor.h.

Constructor & Destructor Documentation

◆ VectorImageNeighborhoodAccessorFunctor() [1/2]

Definition at line 55 of file itkVectorImageNeighborhoodAccessorFunctor.h.

◆ VectorImageNeighborhoodAccessorFunctor() [2/2]

Member Function Documentation

◆ BoundaryCondition()

template<typename TImage >
template<typename TOutput >
ImageBoundaryConditionType<TOutput>::OutputPixelType itk::VectorImageNeighborhoodAccessorFunctor< TImage >::BoundaryCondition ( const OffsetType point_index,
const OffsetType boundary_offset,
const NeighborhoodType data,
const ImageBoundaryConditionType< TOutput > *  boundaryCondition 
) const
inline

Definition at line 109 of file itkVectorImageNeighborhoodAccessorFunctor.h.

◆ Get()

template<typename TImage >
PixelType itk::VectorImageNeighborhoodAccessorFunctor< TImage >::Get ( const InternalPixelType pixelPointer) const
inline

Method to dereference a pixel pointer. This is used from the ConstNeighborhoodIterator as the equivalent operation to (*it). This method should be preferred over the former (*it) notation. The reason is that dereferencing a pointer to a location of VectorImage pixel involves a different operation that simply dereferencing the pointer. Here a PixelType (array of InternalPixelType s) is created on the stack and returned.

Definition at line 89 of file itkVectorImageNeighborhoodAccessorFunctor.h.

References itk::VectorImageNeighborhoodAccessorFunctor< TImage >::m_Begin, itk::VectorImageNeighborhoodAccessorFunctor< TImage >::m_OffsetMultiplier, and itk::VectorImageNeighborhoodAccessorFunctor< TImage >::m_VectorLength.

◆ GetVectorLength()

template<typename TImage >
VectorLengthType itk::VectorImageNeighborhoodAccessorFunctor< TImage >::GetVectorLength ( )
inline

Methods to Set/Get vector length. This should be the length of a block of pixels in the VectorImage.

Definition at line 129 of file itkVectorImageNeighborhoodAccessorFunctor.h.

References itk::VectorImageNeighborhoodAccessorFunctor< TImage >::m_VectorLength.

◆ Set()

template<typename TImage >
void itk::VectorImageNeighborhoodAccessorFunctor< TImage >::Set ( InternalPixelType *const  pixelPointer,
const PixelType p 
) const
inline

◆ SetBegin()

template<typename TImage >
void itk::VectorImageNeighborhoodAccessorFunctor< TImage >::SetBegin ( const InternalPixelType begin)
inline

Set the pointer index to the start of the buffer. This must be set by the iterators to the starting location of the buffer. Typically a neighborhood iterator iterating on a neighborhood of an Image, say image will set this in its constructor. For instance:

ConstNeighborhoodIterator( radius, image, )
{
...
m_NeighborhoodAccessorFunctor.SetBegin( image->GetBufferPointer() );
}

Definition at line 75 of file itkVectorImageNeighborhoodAccessorFunctor.h.

References itk::VectorImageNeighborhoodAccessorFunctor< TImage >::m_Begin.

◆ SetVectorLength()

template<typename TImage >
void itk::VectorImageNeighborhoodAccessorFunctor< TImage >::SetVectorLength ( VectorLengthType  length)
inline

Methods to Set/Get vector length. This should be the length of a block of pixels in the VectorImage.

Definition at line 120 of file itkVectorImageNeighborhoodAccessorFunctor.h.

References itk::VectorImageNeighborhoodAccessorFunctor< TImage >::m_OffsetMultiplier, and itk::VectorImageNeighborhoodAccessorFunctor< TImage >::m_VectorLength.

Member Data Documentation

◆ m_Begin

template<typename TImage >
InternalPixelType* itk::VectorImageNeighborhoodAccessorFunctor< TImage >::m_Begin { nullptr }
private

◆ m_OffsetMultiplier

template<typename TImage >
VectorLengthType itk::VectorImageNeighborhoodAccessorFunctor< TImage >::m_OffsetMultiplier { 0 }
private

◆ m_VectorLength

template<typename TImage >
VectorLengthType itk::VectorImageNeighborhoodAccessorFunctor< TImage >::m_VectorLength { 0 }
private

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