]> Creatis software - FrontAlgorithms.git/blob - lib/fpa/Filters/Image/LabelsSeedFilter.h
b640fa71be2eae55212824e37b9e303fa57f5f88
[FrontAlgorithms.git] / lib / fpa / Filters / Image / LabelsSeedFilter.h
1 // =========================================================================
2 // @author Leonardo Florez Valencia
3 // @email florez-l@javeriana.edu.co
4 // =========================================================================
5 #ifndef __fpa__Filters__Image__LabelsSeedFilter__h__
6 #define __fpa__Filters__Image__LabelsSeedFilter__h__
7
8 namespace fpa
9 {
10   namespace Filters
11   {
12     namespace Image
13     {
14       /**
15        */
16       template< class _TFilter, class _TInputLabels >
17       class LabelsSeedFilter
18         : public _TFilter
19       {
20       public:
21         typedef _TInputLabels TInputLabels;
22         typedef typename _TFilter::TTraits TTraits;
23         fpaTraitsMacro( typename, TTraits );
24
25         typedef _TFilter                        Superclass;
26         typedef LabelsSeedFilter                Self;
27         typedef itk::SmartPointer< Self >       Pointer;
28         typedef itk::SmartPointer< const Self > ConstPointer;
29
30       public:
31         itkNewMacro( Self );
32         itkTypeMacro(
33           fpa::Filters::Image::LabelsSeedFilter, TFilter
34           );
35
36         fpaFilterInputMacro( InputLabels, TInputLabels );
37
38       protected:
39         LabelsSeedFilter( );
40         virtual ~LabelsSeedFilter( );
41
42         virtual const itk::DataObject* _GetReferenceInput( ) const override;
43         virtual void _PrepareSeeds( const itk::DataObject* input ) override;
44
45       private:
46         // Purposely not implemented.
47         LabelsSeedFilter( const Self& other );
48         Self& operator=( const Self& other );
49
50       protected:
51         unsigned int m_InputLabelsIdx;
52       };
53
54     } // ecapseman
55
56   } // ecapseman
57
58 } // ecapseman
59
60 #ifndef ITK_MANUAL_INSTANTIATION
61 #  include <fpa/Filters/Image/LabelsSeedFilter.hxx>
62 #endif // ITK_MANUAL_INSTANTIATION
63 #endif // __fpa__Filters__Image__LabelsSeedFilter__h__
64 // eof - $RCSfile$