1 #ifndef __FPA__IMAGE__REGIONGROW__H__
2 #define __FPA__IMAGE__REGIONGROW__H__
4 #include <itkFunctionBase.h>
5 #include <itkImageToImageFilter.h>
7 #include <fpa/Base/RegionGrow.h>
8 #include <fpa/Image/Algorithm.h>
15 * @param I Input image type
16 * @param O Output image type
18 template< class I, class O = I >
20 : public Algorithm< I, O, fpa::Base::RegionGrow< typename I::IndexType, typename I::PixelType, typename O::PixelType, I, itk::Functor::IndexLexicographicCompare< I::ImageDimension >, itk::ImageToImageFilter< I, O > > >
23 typedef fpa::Base::RegionGrow< typename I::IndexType, typename I::PixelType, typename O::PixelType, I, itk::Functor::IndexLexicographicCompare< I::ImageDimension >, itk::ImageToImageFilter< I, O > > TBaseAlgorithm;
25 typedef RegionGrow Self;
26 typedef Algorithm< I, O, TBaseAlgorithm > Superclass;
27 typedef itk::SmartPointer< Self > Pointer;
28 typedef itk::SmartPointer< const Self > ConstPointer;
30 typedef typename Superclass::TInputImage TInputImage;
31 typedef typename Superclass::TOutputImage TOutputImage;
32 typedef typename Superclass::TVertex TVertex;
33 typedef typename Superclass::TValue TValue;
34 typedef typename Superclass::TResult TResult;
35 typedef typename Superclass::TSpace TSpace;
36 typedef typename Superclass::TGrowingFunction TGrowingFunction;
39 typedef typename Superclass::_TVertices _TVertices;
40 typedef typename Superclass::_TCollision _TCollision;
41 typedef typename Superclass::_TCollisionsRow _TCollisionsRow;
42 typedef typename Superclass::_TCollisions _TCollisions;
43 typedef typename Superclass::_TNode _TNode;
44 typedef typename Superclass::_TNodes _TNodes;
48 itkTypeMacro( RegionGrow, Algorithm );
52 virtual ~RegionGrow( );
54 virtual void _InitResults( ) ITK_OVERRIDE;
57 // Purposely not implemented
58 RegionGrow( const Self& other );
59 Self& operator=( const Self& other );
66 #ifndef ITK_MANUAL_INSTANTIATION
67 #include <fpa/Image/RegionGrow.hxx>
68 #endif // ITK_MANUAL_INSTANTIATION
70 #endif // __FPA__IMAGE__REGIONGROW__H__