1 // =========================================================================
2 // @author Leonardo Florez Valencia
3 // @email florez-l@javeriana.edu.co
4 // =========================================================================
6 #ifndef __fpa__Image__MarksInterface__h__
7 #define __fpa__Image__MarksInterface__h__
9 #include <fpa/Base/MarksInterface.h>
19 template< unsigned int _VDim >
21 : public fpa::Base::MarksInterface< itk::Index< _VDim > >
24 typedef MarksInterface Self;
25 typedef fpa::Base::MarksInterface< itk::Index< _VDim > > Superclass;
27 typedef typename Superclass::TVertex TVertex;
28 typedef typename Superclass::TCollision TCollision;
29 typedef typename Superclass::TCollisionsRow TCollisionsRow;
30 typedef typename Superclass::TCollisions TCollisions;
32 typedef itk::Image< unsigned long, _VDim > TMarks;
35 virtual bool _IsMarked( const TVertex& v ) const override;
36 virtual unsigned long _GetMark( const TVertex& v ) const override;
37 virtual void _Mark( const TVertex& v, unsigned long frontId ) override;
38 virtual void _FreeMarks( ) override;
39 virtual void _InitMarks( unsigned long nSeeds ) override;
42 MarksInterface( itk::ProcessObject* filter );
43 virtual ~MarksInterface( );
46 typename TMarks::Pointer m_Marks;
53 #ifndef ITK_MANUAL_INSTANTIATION
54 # include <fpa/Image/MarksInterface.hxx>
55 #endif // ITK_MANUAL_INSTANTIATION
57 #endif // __fpa__Image__MarksInterface__h__