1 // =========================================================================
2 // @author Leonardo Florez Valencia
3 // @email florez-l@javeriana.edu.co
4 // =========================================================================
6 #ifndef __fpa__Image__RegionGrow__h__
7 #define __fpa__Image__RegionGrow__h__
9 #include <fpa/Base/MarksInterfaceWithCollisions.h>
10 #include <fpa/Base/RegionGrow.h>
11 #include <fpa/Base/SeedsInterface.h>
12 #include <fpa/Image/Algorithm.h>
13 #include <fpa/Image/DefaultTraits.h>
22 template< class _TInputImage, class _TOutputImage, class _TFrontId = unsigned char, class _TTraits = fpa::Image::DefaultTraits< _TInputImage, _TOutputImage, _TFrontId > >
24 : public fpa::Base::RegionGrow< fpa::Image::Algorithm< _TTraits, fpa::Base::MarksInterfaceWithCollisions< _TTraits >, fpa::Base::SeedsInterface< _TTraits > > >
27 typedef _TInputImage TInputImage;
28 typedef _TOutputImage TOutputImage;
29 typedef _TTraits TTraits;
30 typedef fpa::Base::MarksInterfaceWithCollisions< TTraits > TMarksInterface;
31 typedef fpa::Base::SeedsInterface< TTraits > TSeedsInterface;
33 typedef fpa::Image::Algorithm< TTraits, TMarksInterface, TSeedsInterface > TAlgorithm;
34 typedef fpa::Base::RegionGrow< TAlgorithm > Superclass;
35 typedef RegionGrow Self;
36 typedef itk::SmartPointer< Self > Pointer;
37 typedef itk::SmartPointer< const Self > ConstPointer;
39 fpa_Base_TraitTypes( typename TTraits );
43 itkTypeMacro( fpa::Image::RegionGrow, fpa::Base::RegionGrow );
46 RegionGrow( ) : Superclass( ) { }
47 virtual ~RegionGrow( ) { }
50 // Purposely not implemented.
51 RegionGrow( const Self& other );
52 Self& operator=( const Self& other );
59 #endif // __fpa__Image__RegionGrow__h__