18 #ifndef itkConstNeighborhoodIterator_h
19 #define itkConstNeighborhoodIterator_h
49 template<
typename TImage,
typename TBoundaryCondition =
52 public Neighborhood< typename TImage::InternalPixelType *,
53 TImage::ImageDimension >
92 typedef typename ImageType::NeighborhoodAccessorFunctorType
148 {
return ( this->
operator[]( ( this->
Size() ) >> 1 ) ); }
205 bool & IsInBounds)
const
247 {
return ( this->
GetIndex() + o ); }
305 std::ostringstream msg;
307 <<
" is greater than End = " <<
m_End
552 template<
typename TImage >
562 template<
typename TImage >
566 {
return ( it + ind ); }
568 template<
typename TImage >
580 #ifndef ITK_MANUAL_INSTANTIATION
581 #include "itkConstNeighborhoodIterator.hxx"
virtual IndexType GetIndex(void) const
virtual bool IsAtEnd() const
bool operator==(const Self &it) const
bool m_InBounds[Dimension]
unsigned int DimensionValueType
OffsetValueType GetWrapOffset(NeighborIndexType n) const
NeighborhoodAccessorFunctorType m_NeighborhoodAccessorFunctor
bool GetNeedToUseBoundaryCondition() const
bool operator<=(const Self &it) const
typedef::itk::Size< VDimension > RadiusType
ConstNeighborhoodIterator< TImage > operator-(const ConstNeighborhoodIterator< TImage > &it, const typename ConstNeighborhoodIterator< TImage >::OffsetType &ind)
virtual void SetDescription(const std::string &s)
TImage::PixelType PixelType
Neighborhood< PixelType, itkGetStaticConstMacro(Dimension) > NeighborhoodType
bool operator!=(const Self &it) const
virtual PixelType GetNext(const unsigned axis) const
signed long OffsetValueType
virtual PixelType GetPixel(NeighborIndexType i) const
void NeedToUseBoundaryConditionOn()
IndexType m_InnerBoundsLow
virtual void OverrideBoundaryCondition(const ImageBoundaryConditionPointerType i)
A light-weight container object for storing an N-dimensional neighborhood of values.
signed long IndexValueType
IndexType GetBound() const
virtual void PrintSelf(std::ostream &, Indent) const
bool IndexInBounds(const NeighborIndexType n, OffsetType &internalIndex, OffsetType &offset) const
NeighborhoodType::NeighborIndexType NeighborIndexType
TBoundaryCondition m_InternalBoundaryCondition
virtual bool IsAtBegin() const
virtual NeighborIndexType GetNeighborhoodIndex(const OffsetType &) const
OffsetValueType GetStride(DimensionValueType axis) const
ConstNeighborhoodIterator Self
Superclass::RadiusType RadiusType
static const double e
The base of the natural logarithm or Euler's number
IndexType GetBeginIndex() const
virtual PixelType GetPixel(const OffsetType &o, bool &IsInBounds) const
Const version of NeighborhoodIterator, defining iteration of a local N-dimensional neighborhood of pi...
virtual PixelType GetPrevious(const unsigned axis, NeighborIndexType i) const
virtual void ResetBoundaryCondition()
OffsetType GetWrapOffset() const
IndexType GetFastIndexPlusOffset(const OffsetType &o) const
ImageBoundaryCondition< ImageType > * ImageBoundaryConditionPointerType
Superclass::Iterator Iterator
IndexValueType GetBound(NeighborIndexType n) const
virtual PixelType GetNext(const unsigned axis, NeighborIndexType i) const
virtual void SetPixelPointers(const IndexType &)
const InternalPixelType * m_End
ConstNeighborhoodIterator(const SizeType &radius, const ImageType *ptr, const RegionType ®ion)
Superclass::SizeType SizeType
const InternalPixelType * m_Begin
ImageType::ConstWeakPointer m_ConstImage
Self & operator=(const Self &orig)
NeighborIndexType Size() const
Superclass::ConstIterator ConstIterator
OffsetType GetOffset(NeighborIndexType i) const
TBoundaryCondition BoundaryConditionType
ConstNeighborhoodIterator()
ImageBoundaryConditionPointerType m_BoundaryCondition
void SetLocation(const IndexType &position)
ConstNeighborhoodIterator< TImage > operator+(const ConstNeighborhoodIterator< TImage > &it, const typename ConstNeighborhoodIterator< TImage >::OffsetType &ind)
PixelType GetCenterPixel() const
typedef::itk::Size< VDimension > SizeType
virtual IndexType GetIndex(const OffsetType &o) const
Standard exception handling object.
virtual void SetRegion(const RegionType ®ion)
Neighborhood< InternalPixelType *, itkGetStaticConstMacro(Dimension) > Superclass
virtual void SetLoop(const IndexType &p)
virtual void SetBeginIndex(const IndexType &start)
bool operator>=(const Self &it) const
TImage::RegionType RegionType
virtual PixelType GetPrevious(const unsigned axis) const
ImageType::NeighborhoodAccessorFunctorType NeighborhoodAccessorFunctorType
Self & operator+=(const OffsetType &)
const ImageType * GetImagePointer(void) const
Index< itkGetStaticConstMacro(Dimension) > IndexType
RegionType GetRegion() const
Self & operator-=(const OffsetType &)
AllocatorType::iterator Iterator
ImageBoundaryCondition< ImageType > const * ImageBoundaryConditionConstPointerType
RegionType GetBoundingBoxAsImageRegion() const
const InternalPixelType * GetCenterPointer() const
bool m_NeedToUseBoundaryCondition
NeighborIndexType GetCenterNeighborhoodIndex() const
Control indentation during Print() invocation.
virtual void SetBound(const SizeType &)
AllocatorType::const_iterator ConstIterator
bool operator<(const Self &it) const
OffsetType ComputeInternalIndex(const NeighborIndexType n) const
virtual NeighborhoodType GetNeighborhood() const
static const DimensionValueType Dimension
ImageBoundaryConditionPointerType GetBoundaryCondition() const
void SetBoundaryCondition(const TBoundaryCondition &c)
virtual IndexType GetIndex(NeighborIndexType i) const
virtual void SetEndIndex()
void NeedToUseBoundaryConditionOff()
void SetNeedToUseBoundaryCondition(bool b)
OffsetType operator-(const Self &b)
virtual ~ConstNeighborhoodIterator()
virtual PixelType GetPixel(const OffsetType &o) const
TImage::InternalPixelType InternalPixelType
virtual void Initialize(const SizeType &radius, const ImageType *ptr, const RegionType ®ion)
IndexType m_InnerBoundsHigh
bool operator>(const Self &it) const
Superclass::OffsetType OffsetType
SizeValueType NeighborIndexType