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