// ========================================================================= // @author Leonardo Florez Valencia // @email florez-l@javeriana.edu.co // ========================================================================= #ifndef __fpa__Filters__Image__LabelsSeedFilter__h__ #define __fpa__Filters__Image__LabelsSeedFilter__h__ namespace fpa { namespace Filters { namespace Image { /** */ template< class _TFilter, class _TInputLabels > class LabelsSeedFilter : public _TFilter { public: typedef _TInputLabels TInputLabels; typedef typename _TFilter::TTraits TTraits; fpaTraitsMacro( typename, TTraits ); typedef _TFilter Superclass; typedef LabelsSeedFilter Self; typedef itk::SmartPointer< Self > Pointer; typedef itk::SmartPointer< const Self > ConstPointer; public: itkNewMacro( Self ); itkTypeMacro( fpa::Filters::Image::LabelsSeedFilter, TFilter ); fpaFilterInputMacro( InputLabels, TInputLabels ); protected: LabelsSeedFilter( ); virtual ~LabelsSeedFilter( ); virtual const itk::DataObject* _GetReferenceInput( ) const override; virtual void _PrepareSeeds( const itk::DataObject* input ) override; private: // Purposely not implemented. LabelsSeedFilter( const Self& other ); Self& operator=( const Self& other ); protected: unsigned int m_InputLabelsIdx; }; } // ecapseman } // ecapseman } // ecapseman #ifndef ITK_MANUAL_INSTANTIATION # include #endif // ITK_MANUAL_INSTANTIATION #endif // __fpa__Filters__Image__LabelsSeedFilter__h__ // eof - $RCSfile$