// ========================================================================= // @author Leonardo Florez Valencia // @email florez-l@javeriana.edu.co // ========================================================================= #ifndef __fpa__Filters__SeedsInterface__h__ #define __fpa__Filters__SeedsInterface__h__ #include #include #include namespace fpa { namespace Filters { /** */ template< class _TTraits > class SeedsInterface { public: typedef SeedsInterface Self; typedef _TTraits TTraits; fpaInternalTraitsMacro( typename, TTraits ); public: SeedsInterface( itk::ProcessObject* f ); virtual ~SeedsInterface( ); void AddSeed( const TPoint& s ); void AddSeed( const TVertex& s ); void ClearSeeds( ); unsigned long GetNumberOfSeeds( ) const; const TNodes& GetSeeds( ) const; protected: virtual void _PrepareSeeds( const itk::DataObject* input ); protected: TSeeds m_InputSeeds; TNodes m_UnifiedSeeds; itk::ProcessObject::Pointer m_Filter; }; } // ecapseman } // ecapseman #ifndef ITK_MANUAL_INSTANTIATION # include #endif // ITK_MANUAL_INSTANTIATION #endif // __fpa__Filters__SeedsInterface__h__ // eof - $RCSfile$