#ifndef __CPPLUGINS__PLUGINS__IMAGEREADER__H__
#define __CPPLUGINS__PLUGINS__IMAGEREADER__H__
+#include <vector>
+
#include <cpPlugins/Plugins/cpPlugins_Export.h>
-#include <cpPlugins/Interface/SourceObject.h>
-#include <itkProcessObject.h>
+#include <cpPlugins/Interface/BaseProcessObjects.h>
+
+namespace itk
+{
+ class ImageIOBase;
+}
namespace cpPlugins
{
/**
*/
class cpPlugins_EXPORT ImageReader
- : public cpPlugins::Interface::SourceObject
+ : public cpPlugins::Interface::ImageSource
{
public:
- typedef ImageReader Self;
- typedef cpPlugins::Interface::SourceObject Superclass;
+ typedef ImageReader Self;
+ typedef cpPlugins::Interface::ImageSource Superclass;
+ typedef itk::SmartPointer< Self > Pointer;
+ typedef itk::SmartPointer< const Self > ConstPointer;
- typedef Superclass::TParameter TParameter;
- typedef Superclass::TParameters TParameters;
+ typedef
+ std::vector< cpPlugins::Interface::Parameters::TString >
+ TStringList;
public:
- ImageReader( );
- virtual ~ImageReader( );
-
- virtual std::string GetClassName( ) const;
+ itkNewMacro( Self );
+ itkTypeMacro( ImageReader, cpPluginsInterfaceImageSource );
protected:
+ ImageReader( );
+ virtual ~ImageReader( );
virtual std::string _GenerateData( );
template< unsigned int D >
- std::string _GD0( );
+ std::string _GD0( itk::ImageIOBase* io, const TStringList& names );
template< class P, unsigned int D >
- std::string _GD1( );
+ std::string _RealGD( const TStringList& names );
- protected:
- itk::ProcessObject::Pointer m_Reader;
+ private:
+ // Purposely not implemented
+ ImageReader( const Self& );
+ Self& operator=( const Self& );
};
// ---------------------------------------------------------------------
- PLUMA_INHERIT_PROVIDER( ImageReader, cpPlugins::Interface::Object );
+ CPPLUGINS_INHERIT_PROVIDER( ImageReader );
} // ecapseman