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