#ifndef __CPPLUGINS__PLUGINS__IMAGEREADER__H__ #define __CPPLUGINS__PLUGINS__IMAGEREADER__H__ #include #include #include namespace itk { class ImageIOBase; } namespace cpPlugins { namespace IO { /** */ class cpPluginsIO_EXPORT ImageReader : public cpPlugins::Interface::ImageSource { public: typedef ImageReader Self; typedef cpPlugins::Interface::ImageSource Superclass; typedef itk::SmartPointer< Self > Pointer; typedef itk::SmartPointer< const Self > ConstPointer; typedef Superclass::TParameters TParameters; typedef std::vector< std::string > TStringList; public: itkNewMacro( Self ); itkTypeMacro( ImageReader, cpPluginsInterfaceImageSource ); cpPlugins_Id_Macro( cpPlugins::IO::ImageReader, IO ); protected: ImageReader( ); virtual ~ImageReader( ); virtual std::string _GenerateData( ); template< unsigned int D > std::string _GD0( itk::ImageIOBase* io, const TStringList& names ); template< class P, unsigned int D > std::string _GD1( const TStringList& names ); template< class I > std::string _RealGD( const TStringList& names ); private: // Purposely not implemented ImageReader( const Self& ); Self& operator=( const Self& ); }; // --------------------------------------------------------------------- CPPLUGINS_INHERIT_PROVIDER( ImageReader ); } // ecapseman } // ecapseman #endif // __CPPLUGINS__PLUGINS__IMAGEREADER__H__ // eof - $RCSfile$