00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef __itkConstSmartNeighborhoodIterator_h
00018 #define __itkConstSmartNeighborhoodIterator_h
00019
00020 #include "itkConstNeighborhoodIterator.h"
00021 #include "itkZeroFluxNeumannBoundaryCondition.h"
00022
00023 namespace itk {
00024
00040 template<class TImage, class TBoundaryCondition
00041 = ZeroFluxNeumannBoundaryCondition<TImage> >
00042 class ITK_EXPORT ConstSmartNeighborhoodIterator
00043 : public ConstNeighborhoodIterator<TImage, TBoundaryCondition>
00044 {
00045 public:
00047 typedef ConstSmartNeighborhoodIterator Self;
00048 typedef ConstNeighborhoodIterator<TImage> Superclass;
00049
00051 typedef typename Superclass::InternalPixelType InternalPixelType;
00052 typedef typename Superclass::PixelType PixelType;
00053
00055 itkStaticConstMacro(Dimension, unsigned int,Superclass::Dimension);
00056
00058 typedef typename Superclass::ImageType ImageType;
00059 typedef typename Superclass::RegionType RegionType;
00060 typedef typename Superclass::SizeType SizeType;
00061 typedef typename Superclass::SizeValueType SizeValueType;
00062 typedef typename Superclass::NeighborhoodType NeighborhoodType;
00063 typedef typename Superclass::IndexType IndexType;
00064 typedef typename Superclass::IndexValueType IndexValueType;
00065 typedef typename Superclass::OffsetType OffsetType;
00066 typedef typename Superclass::OffsetValueType OffsetValueType;
00067
00069 typedef typename Superclass::ImageBoundaryConditionPointerType
00070 ImageBoundaryConditionPointerType;
00071
00073 typedef TBoundaryCondition BoundaryConditionType;
00074
00077 typedef typename Superclass::ConstIterator ConstIterator;
00078
00080 ConstSmartNeighborhoodIterator()
00081 : Superclass()
00082 {
00083 itkGenericOutputMacro(<< "ConstSmartNeighborhoodIterator has been deprecated and will be removed. Use ConstNeighborhoodIterator instead.");
00084
00085
00086
00087
00088 }
00089
00091
00092
00096 ConstSmartNeighborhoodIterator(const SizeType& radius,
00097 const ImageType *ptr,
00098 const RegionType& region)
00099 : Superclass(radius, ptr, region)
00100 {
00101
00102
00103
00104
00105 itkGenericOutputMacro(<< "ConstSmartNeighborhoodIterator has been deprecated and will be removed. Use ConstNeighborhoodIterator instead.");
00106 }
00107
00113
00114
00115
00117 Self &operator=(const Self& orig);
00118
00121
00122
00124
00125
00126
00129
00130
00134
00135
00139
00140
00146
00147
00148
00151
00152
00153
00155
00156
00157
00158 protected:
00159
00161
00162
00167
00168
00171
00172
00174
00175
00177
00178
00180
00181
00183
00184
00185 };
00186
00187 }
00188
00189 #ifndef ITK_MANUAL_INSTANTIATION
00190 #include "itkConstSmartNeighborhoodIterator.txx"
00191 #endif
00192
00193 #endif
00194