]> Creatis software - cpPlugins.git/blob - plugins/IO/ImageReader.h
6b2392a291a96c38c51eb8586e947ce168cc101a
[cpPlugins.git] / plugins / IO / ImageReader.h
1 #ifndef __CPPLUGINSIO__IMAGEREADER__H__
2 #define __CPPLUGINSIO__IMAGEREADER__H__
3
4 #include <plugins/IO/cpPluginsIO_Export.h>
5 #include <cpPlugins/ProcessObject.h>
6
7 namespace itk
8 {
9   class ImageIOBase;
10 }
11
12 namespace cpPluginsIO
13 {
14   /**
15    */
16   class cpPluginsIO_EXPORT ImageReader
17     : public cpPlugins::ProcessObject
18   {
19     cpPluginsObject;
20   public:
21     typedef ImageReader                     Self;
22     typedef cpPlugins::ProcessObject        Superclass;
23     typedef itk::SmartPointer< Self >       Pointer;
24     typedef itk::SmartPointer< const Self > ConstPointer;
25
26   public:
27     itkNewMacro( Self );
28     itkTypeMacro( ImageReader, cpPlugins::ProcessObject );
29     cpPlugins_Id_Macro( ImageReader, IO );
30
31   public:
32     // Qt dialog creation
33     virtual QDialog* CreateQDialog( ) ITK_OVERRIDE;
34
35   protected:
36     ImageReader( );
37     virtual ~ImageReader( );
38
39     virtual void _GenerateData( ) ITK_OVERRIDE;
40
41     template< unsigned int _Dim >
42       inline void _GD0( itk::ImageIOBase* io );
43
44     template< class _TPixel, unsigned int _Dim >
45       inline void _GD1( itk::ImageIOBase* io );
46
47   private:
48     // Purposely not implemented
49     ImageReader( const Self& );
50     Self& operator=( const Self& );
51   };
52
53 } // ecapseman
54
55 #endif // __CPPLUGINS__IO__IMAGEREADER__H__
56
57 // eof - $RCSfile$