]> Creatis software - FrontAlgorithms.git/blob - lib/fpa/Image/SkeletonToPolyDataFilter.h
...
[FrontAlgorithms.git] / lib / fpa / Image / SkeletonToPolyDataFilter.h
1 // =========================================================================
2 // @author Leonardo Florez Valencia
3 // @email florez-l@javeriana.edu.co
4 // =========================================================================
5
6 #ifndef __fpa__Image__SkeletonToPolyDataFilter__h__
7 #define __fpa__Image__SkeletonToPolyDataFilter__h__
8
9 #include <fpa/Config.h>
10
11 #ifdef USE_VTK
12 #  include <vtkPolyDataAlgorithm.h>
13 #endif // USE_VTK
14
15 namespace fpa
16 {
17   namespace Image
18   {
19     /**
20      */
21     template< class _TSkeleton >
22     class SkeletonToPolyDataFilter
23 #ifdef USE_VTK
24       : public vtkPolyDataAlgorithm
25 #endif // USE_VTK
26     {
27     public:
28       typedef SkeletonToPolyDataFilter Self;
29       typedef _TSkeleton               TSkeleton;
30
31     public:
32 #ifdef USE_VTK
33       vtkTypeMacro( SkeletonToPolyDataFilter, vtkPolyDataAlgorithm );
34 #endif // USE_VTK
35
36     public:
37       static Self* New( );
38
39       const TSkeleton* GetInput( ) const;
40       void SetInput( const TSkeleton* sk );
41
42     protected:
43       SkeletonToPolyDataFilter( );
44       virtual ~SkeletonToPolyDataFilter( );
45
46 #ifdef USE_VTK
47       int RequestData(
48         vtkInformation* information,
49         vtkInformationVector** input,
50         vtkInformationVector* output
51         );
52       int RequestInformation(
53         vtkInformation* information,
54         vtkInformationVector** input,
55         vtkInformationVector* output
56         );
57 #endif // USE_VTK
58
59     private:
60       // Purposely not implemented
61       SkeletonToPolyDataFilter( const Self& );
62       void operator=( const Self& );
63
64     protected:
65       const TSkeleton* m_Skeleton;
66     };
67
68   } // ecapseman
69
70 } // ecapseman
71
72 #ifndef ITK_MANUAL_INSTANTIATION
73 #  include <fpa/Image/SkeletonToPolyDataFilter.hxx>
74 #endif // ITK_MANUAL_INSTANTIATION
75
76 #endif // __fpa__Image__SkeletonToPolyDataFilter__h__
77
78 // eof - $RCSfile$