X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2Ffpa%2FFilters%2FSeedsInterface.h;fp=lib%2Ffpa%2FFilters%2FSeedsInterface.h;h=ffcaf258d48c7bed71a59e202d9de695950fe1f4;hb=2047276c8f1a02432fbcc7014722d460d6c1e60f;hp=0000000000000000000000000000000000000000;hpb=3c639e5da479c7216a0a302ffa156ac6762caeed;p=FrontAlgorithms.git diff --git a/lib/fpa/Filters/SeedsInterface.h b/lib/fpa/Filters/SeedsInterface.h new file mode 100644 index 0000000..ffcaf25 --- /dev/null +++ b/lib/fpa/Filters/SeedsInterface.h @@ -0,0 +1,55 @@ +// ========================================================================= +// @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$