00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef __itkMovingHistogramErodeImageFilter_h
00018 #define __itkMovingHistogramErodeImageFilter_h
00019
00020 #include "itkMovingHistogramMorphologyImageFilter.h"
00021
00022 namespace itk {
00023
00040 template<class TInputImage, class TOutputImage, class TKernel>
00041 class ITK_EXPORT MovingHistogramErodeImageFilter :
00042 public MovingHistogramMorphologyImageFilter<TInputImage, TOutputImage, TKernel,
00043 typename Function::MorphologyHistogram < typename TInputImage::PixelType, typename std::less<typename TInputImage::PixelType> > >
00044 {
00045 public:
00047 typedef MovingHistogramErodeImageFilter Self;
00048 typedef MovingHistogramMorphologyImageFilter<TInputImage, TOutputImage, TKernel,
00049 typename Function::MorphologyHistogram < typename TInputImage::PixelType, typename std::less<typename TInputImage::PixelType> > > Superclass;
00050 typedef SmartPointer<Self> Pointer;
00051 typedef SmartPointer<const Self> ConstPointer;
00052
00054 itkNewMacro(Self);
00055
00057 itkTypeMacro(MovingHistogramErodeImageFilter,
00058 MovingHistogramMorphologyImageFilter);
00059
00061 typedef TInputImage InputImageType;
00062 typedef TOutputImage OutputImageType;
00063 typedef typename TInputImage::RegionType RegionType;
00064 typedef typename TInputImage::SizeType SizeType;
00065 typedef typename TInputImage::IndexType IndexType;
00066 typedef typename TInputImage::PixelType PixelType;
00067 typedef typename TInputImage::OffsetType OffsetType;
00068 typedef typename Superclass::OutputImageRegionType OutputImageRegionType;
00069 typedef typename TOutputImage::PixelType OutputPixelType;
00070
00072 itkStaticConstMacro(ImageDimension, unsigned int,
00073 TInputImage::ImageDimension);
00074
00075
00076 protected:
00077 MovingHistogramErodeImageFilter()
00078 {
00079 this->m_Boundary = NumericTraits< PixelType >::max();
00080 }
00081 ~MovingHistogramErodeImageFilter() {};
00082
00083
00084 private:
00085 MovingHistogramErodeImageFilter(const Self&);
00086 void operator=(const Self&);
00087
00088 };
00089
00090 }
00091
00092 #endif
00093