]> Creatis software - cpPlugins.git/blob - lib/cpPlugins/Plugins/PolyDataReader.h
vtkPolyData support added
[cpPlugins.git] / lib / cpPlugins / Plugins / PolyDataReader.h
1 #ifndef __CPPLUGINS__PLUGINS__POLYDATAREADER__H__
2 #define __CPPLUGINS__PLUGINS__POLYDATAREADER__H__
3
4 #include <cpPlugins/Plugins/cpPlugins_Export.h>
5 #include <cpPlugins/Interface/PolyDataSource.h>
6
7 #include <vtkAlgorithm.h>
8 #include <vtkSmartPointer.h>
9
10 namespace cpPlugins
11 {
12   namespace Plugins
13   {
14     /**
15      */
16     class cpPlugins_EXPORT PolyDataReader
17       : public cpPlugins::Interface::PolyDataSource
18     {
19     public:
20       typedef PolyDataReader                       Self;
21       typedef cpPlugins::Interface::PolyDataSource Superclass;
22       typedef itk::SmartPointer< Self >            Pointer;
23       typedef itk::SmartPointer< const Self >      ConstPointer;
24
25     public:
26       itkNewMacro( Self );
27       itkTypeMacro( PolyDataReader, cpPluginsInterfacePolyDataSource );
28
29     public:
30       virtual std::string GetClassName( ) const;
31
32     protected:
33       PolyDataReader( );
34       virtual ~PolyDataReader( );
35
36       virtual std::string _GenerateData( );
37
38     private:
39       // Purposely not implemented
40       PolyDataReader( const Self& );
41       Self& operator=( const Self& );
42
43     protected:
44       vtkSmartPointer< vtkAlgorithm > m_Reader;
45     };
46
47     // ---------------------------------------------------------------------
48     CPPLUGINS_INHERIT_PROVIDER( PolyDataReader );
49
50   } // ecapseman
51
52 } // ecapseman
53
54 #endif // __CPPLUGINS__PLUGINS__POLYDATAREADER__H__
55
56 // eof - $RCSfile$