00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef __itkBinaryDilateImageFilter_h
00018 #define __itkBinaryDilateImageFilter_h
00019
00020 #include "itkMorphologyImageFilter.h"
00021
00022 namespace itk {
00023
00066 template<class TInputImage, class TOutputImage, class TKernel>
00067 class ITK_EXPORT BinaryDilateImageFilter :
00068 public MorphologyImageFilter<TInputImage, TOutputImage, TKernel>
00069 {
00070 public:
00072 typedef BinaryDilateImageFilter Self;
00073 typedef MorphologyImageFilter<TInputImage, TOutputImage, TKernel>
00074 Superclass;
00075 typedef SmartPointer<Self> Pointer;
00076 typedef SmartPointer<const Self> ConstPointer;
00077
00079 itkNewMacro(Self);
00080
00082 itkTypeMacro(BinaryDilateImageFilter, MorphologyImageFilter);
00083
00085 typedef typename Superclass::PixelType PixelType;
00086
00088 typedef ConstNeighborhoodIterator<TInputImage>
00089 NeighborhoodIteratorType ;
00090 typedef ConstSmartNeighborhoodIterator<TInputImage>
00091 SmartNeighborhoodIteratorType ;
00092
00094 typedef TKernel KernelType;
00095
00097 typedef typename KernelType::ConstIterator KernelIteratorType ;
00098
00101 itkSetMacro(DilateValue, PixelType);
00102
00105 itkGetMacro(DilateValue, PixelType);
00106
00107 protected:
00108 BinaryDilateImageFilter();
00109 ~BinaryDilateImageFilter() {};
00110 void PrintSelf(std::ostream& os, Indent indent) const;
00111
00119 PixelType Evaluate(const NeighborhoodIteratorType &nit,
00120 const KernelType &kernel);
00121
00129 PixelType Evaluate(const SmartNeighborhoodIteratorType &nit,
00130 const KernelType &kernel);
00131
00132 private:
00133 BinaryDilateImageFilter(const Self&);
00134 void operator=(const Self&);
00135
00136 PixelType m_DilateValue;
00137
00138 } ;
00139
00140 }
00141
00142 #ifndef ITK_MANUAL_INSTANTIATION
00143 #include "itkBinaryDilateImageFilter.txx"
00144 #endif
00145
00146 #endif
00147
00148