X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FcpPlugins%2FPlugins%2FImageWriter.h;h=4fc04f5a34545eb862e2093c1ad6077d6fa580e3;hb=a3cae0375976d524c957493a3cc565b9f5b20bce;hp=af80058b2081bc457600f4649bfdec067e292776;hpb=8c23766af88a29c3e830299dffc4b95d9fe61df9;p=cpPlugins.git diff --git a/lib/cpPlugins/Plugins/ImageWriter.h b/lib/cpPlugins/Plugins/ImageWriter.h index af80058..4fc04f5 100644 --- a/lib/cpPlugins/Plugins/ImageWriter.h +++ b/lib/cpPlugins/Plugins/ImageWriter.h @@ -1,7 +1,8 @@ #ifndef __CPPLUGINS__PLUGINS__IMAGEWRITER__H__ #define __CPPLUGINS__PLUGINS__IMAGEWRITER__H__ -#include +#include +#include namespace cpPlugins { @@ -9,26 +10,36 @@ 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 Superclass::TParameter TParameter; - typedef Superclass::TParameters TParameters; + typedef ImageWriter Self; + typedef cpPlugins::Interface::ImageSink Superclass; + typedef itk::SmartPointer< Self > Pointer; + typedef itk::SmartPointer< const Self > ConstPointer; public: + itkNewMacro( Self ); + itkTypeMacro( ImageWriter, cpPluginsInterfaceImageSink ); + + protected: ImageWriter( ); virtual ~ImageWriter( ); - virtual std::string GetClassName( ) const; - virtual bool Update( ); + virtual std::string _GenerateData( ); + + template< class I > + inline std::string _RealGD( itk::DataObject* image ); + + private: + // Purposely not implemented + ImageWriter( const Self& ); + Self& operator=( const Self& ); }; // --------------------------------------------------------------------- - PLUMA_INHERIT_PROVIDER( ImageWriter, cpPlugins::Interface::Object ); + CPPLUGINS_INHERIT_PROVIDER( ImageWriter ); } // ecapseman