1 // =========================================================================
2 // @author Leonardo Florez Valencia
3 // @email florez-l@javeriana.edu.co
4 // =========================================================================
6 #ifndef __fpa__Base__MoriRegionGrow__h__
7 #define __fpa__Base__MoriRegionGrow__h__
15 template< class _TFilter, class _TMarksInterface, class _TSeedsInterface >
18 public _TMarksInterface,
19 public _TSeedsInterface
22 typedef MoriRegionGrow Self;
23 typedef _TFilter Superclass;
24 typedef _TMarksInterface TMarksInterface;
25 typedef _TSeedsInterface TSeedsInterface;
26 typedef itk::SmartPointer< Self > Pointer;
27 typedef itk::SmartPointer< const Self > ConstPointer;
29 typedef typename Superclass::TInputValue TInputValue;
30 typedef typename Superclass::TOutputValue TOutputValue;
31 typedef typename Superclass::TVertex TVertex;
32 typedef typename Superclass::TVertices TVertices;
39 TCurveData( TInputValue v, unsigned long c )
43 this->Diff1 = double( 0 );
46 typedef std::vector< TCurveData > TCurve;
49 itkTypeMacro( MoriRegionGrow, TFilter );
51 itkGetConstMacro( LowerThreshold, TInputValue );
52 itkGetConstMacro( UpperThreshold, TInputValue );
53 itkGetConstMacro( DeltaThreshold, TInputValue );
54 itkGetConstMacro( Curve, TCurve );
55 itkGetConstMacro( OptimumThreshold, TInputValue );
57 itkSetMacro( LowerThreshold, TInputValue );
58 itkSetMacro( UpperThreshold, TInputValue );
59 itkSetMacro( DeltaThreshold, TInputValue );
62 void SetThresholdRange(
63 const TInputValue& lower, const TInputValue& upper,
64 const TInputValue& delta = TInputValue( 1 )
69 virtual ~MoriRegionGrow( );
71 virtual void GenerateData( ) override;
74 MoriRegionGrow( const Self& other );
75 Self& operator=( const Self& other );
78 TInputValue m_LowerThreshold;
79 TInputValue m_UpperThreshold;
80 TInputValue m_DeltaThreshold;
83 TInputValue m_OptimumThreshold;
90 #ifndef ITK_MANUAL_INSTANTIATION
91 # include <fpa/Base/MoriRegionGrow.hxx>
92 #endif // ITK_MANUAL_INSTANTIATION
94 #endif // __fpa__Base__MoriRegionGrow__h__