// ========================================================================= // @author Leonardo Florez Valencia // @email florez-l@javeriana.edu.co // ========================================================================= #ifndef __fpa__Filters__BaseMarksInterface__h__ #define __fpa__Filters__BaseMarksInterface__h__ #include #include namespace fpa { namespace Filters { /** */ template< class _TTraits > class BaseMarksInterface { public: typedef BaseMarksInterface Self; typedef _TTraits TTraits; fpaTraitsMacro( typename TTraits ); protected: BaseMarksInterface( itk::ProcessObject* f ) : m_Filter( f ) { } virtual ~BaseMarksInterface( ) { } virtual unsigned long _GetMark( const TVertex& v ) const = 0; virtual bool _Collisions( const TVertex& a, const TVertex& b ) { return( false ); } virtual void _InitCollisions( unsigned long nSeeds ) { // Nothing to do at this level } protected: itk::ProcessObject::Pointer m_Filter; }; } // ecapseman } // ecapseman #endif // __fpa__Filters__BaseMarksInterface__h__ // eof - $RCSfile$