#ifndef __CPPLUGINS__PLUGINS__IMAGEWRITER__H__
#define __CPPLUGINS__PLUGINS__IMAGEWRITER__H__
-#include <cpPlugins/Interface/SourceObject.h>
+#include <cpPlugins/Plugins/cpPlugins_Export.h>
+#include <cpPlugins/Interface/ImageSink.h>
+#include <itkProcessObject.h>
namespace cpPlugins
{
{
/**
*/
- class ImageWriter
- : public cpPlugins::Interface::SourceObject
+ class cpPlugins_EXPORT ImageWriter
+ : public cpPlugins::Interface::ImageSink
{
public:
- typedef ImageWriter Self;
- typedef cpPlugins::Interface::SourceObject Superclass;
+ typedef ImageWriter Self;
+ typedef cpPlugins::Interface::ImageSink Superclass;
+ typedef itk::SmartPointer< Self > Pointer;
+ typedef itk::SmartPointer< const Self > ConstPointer;
- typedef Superclass::TParameter TParameter;
- typedef Superclass::TParameters TParameters;
+ public:
+ itkNewMacro( Self );
+ itkTypeMacro( ImageWriter, cpPluginsInterfaceImageSink );
public:
+ virtual std::string GetClassName( ) const;
+
+ protected:
ImageWriter( );
virtual ~ImageWriter( );
- virtual std::string GetClassName( ) const;
- virtual bool Update( );
+ virtual std::string _GenerateData( );
+
+ template< unsigned int D >
+ std::string _GD0( );
+
+ template< class P, unsigned int D >
+ std::string _GD1( );
+
+ private:
+ // Purposely not implemented
+ ImageWriter( const Self& );
+ Self& operator=( const Self& );
};
// ---------------------------------------------------------------------
- PLUMA_INHERIT_PROVIDER( ImageWriter, cpPlugins::Interface::Object );
+ CPPLUGINS_INHERIT_PROVIDER( ImageWriter );
} // ecapseman