#ifndef __fpa__Image__Functors__RegionGrow__BinaryThreshold__h__ #define __fpa__Image__Functors__RegionGrow__BinaryThreshold__h__ #include #include namespace fpa { namespace Image { namespace Functors { namespace RegionGrow { /** */ template< class _TImage, class _TOutput > class BinaryThreshold : public fpa::Image::Functors::Base< _TImage, fpa::Base::Functors::RegionGrow::Base< typename _TImage::IndexType, _TOutput > > { public: typedef _TImage TImage; typedef _TOutput TOutput; typedef typename TImage::IndexType TIndex; typedef typename TImage::PixelType TPixel; typedef fpa::Base::Functors::RegionGrow::Base< TIndex, TOutput > TBase; typedef fpa::Image::Functors::Base< TImage, TBase > Superclass; typedef BinaryThreshold Self; typedef itk::SmartPointer< Self > Pointer; typedef itk::SmartPointer< const Self > ConstPointer; public: itkNewMacro( Self ); itkTypeMacro( BinaryThreshold, Base ); itkGetConstMacro( Lower, TPixel ); itkGetConstMacro( Upper, TPixel ); itkSetMacro( Lower, TPixel ); itkSetMacro( Upper, TPixel ); public: virtual TOutput Evaluate( const TIndex& a, const TIndex& b ) const override; protected: BinaryThreshold( ); virtual ~BinaryThreshold( ); private: // Purposely not implemented BinaryThreshold( const Self& other ); Self& operator=( const Self& other ); protected: TPixel m_Lower; TPixel m_Upper; }; } // ecapseman } // ecapseman } // ecapseman } // ecapseman #ifndef ITK_MANUAL_INSTANTIATION # include #endif // ITK_MANUAL_INSTANTIATION #endif // __fpa__Image__Functors__RegionGrow__BinaryThreshold__h__ // eof - $RCSfile$