// ========================================================================= // @author Leonardo Florez Valencia // @email florez-l@javeriana.edu.co // ========================================================================= #ifndef __fpa__Image__MoriRegionGrow__h__ #define __fpa__Image__MoriRegionGrow__h__ #include #include #include #include namespace fpa { namespace Image { /** */ template< class _TInputImage, class _TOutputImage > class MoriRegionGrow : public fpa::Base::MoriRegionGrow< fpa::Image::Filter< _TInputImage, _TOutputImage >, fpa::Image::MarksInterface< _TInputImage::ImageDimension >, fpa::Base::SeedsInterface< typename _TInputImage::IndexType, typename _TInputImage::IndexType::LexicographicCompare > > { public: // Interfaces typedef fpa::Image::Filter< _TInputImage, _TOutputImage > TFilter; typedef fpa::Image::MarksInterface< _TInputImage::ImageDimension > TMarksInterface; typedef fpa::Base::SeedsInterface< typename _TInputImage::IndexType, typename _TInputImage::IndexType::LexicographicCompare > TSeedsInterface; // Smart pointers typedef MoriRegionGrow Self; typedef fpa::Base::MoriRegionGrow< TFilter, TMarksInterface, TSeedsInterface > Superclass; typedef itk::SmartPointer< Self > Pointer; typedef itk::SmartPointer< const Self > ConstPointer; public: itkNewMacro( Self ); itkTypeMacro( fpa::Image::MoriRegionGrow, fpa::Base::MoriRegionGrow ); protected: MoriRegionGrow( ) : Superclass( ) { } virtual ~MoriRegionGrow( ) { } private: MoriRegionGrow( const Self& other ); Self& operator=( const Self& other ); }; } // ecapseman } // ecapseman #endif // __fpa__Image__MoriRegionGrow__h__ // eof - $RCSfile$