X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FcpPlugins%2FPlugins%2FImageWriter.h;h=1dcd98f5dbaf9534c2634a3160aca1b8cb10d95a;hb=cb833d2fface96e020fe91584d2206860a8174ee;hp=78f00efc0985c3da4772dcff57e99acc12dd9328;hpb=cf8ebcdb1e31f332e74569b2be5dfb5f5100df07;p=cpPlugins.git diff --git a/lib/cpPlugins/Plugins/ImageWriter.h b/lib/cpPlugins/Plugins/ImageWriter.h index 78f00ef..1dcd98f 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 #include namespace cpPlugins @@ -10,37 +11,48 @@ namespace cpPlugins { /** */ - class ImageWriter - : public cpPlugins::Interface::SinkObject + class cpPlugins_EXPORT ImageWriter + : public cpPlugins::Interface::ImageSink { public: - typedef ImageWriter Self; - typedef cpPlugins::Interface::SinkObject 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: - ImageWriter( ); - virtual ~ImageWriter( ); + itkNewMacro( Self ); + itkTypeMacro( ImageWriter, cpPluginsInterfaceImageSink ); + public: virtual std::string GetClassName( ) const; protected: + ImageWriter( ); + virtual ~ImageWriter( ); + virtual std::string _GenerateData( ); template< unsigned int D > - std::string _GenerateData0( ); + std::string _GD0( ); template< class P, unsigned int D > - std::string _GenerateData1( ); + std::string _GD1( ); - protected: - itk::ProcessObject::Pointer m_Writer; + private: + // Purposely not implemented + ImageWriter( const Self& ); + Self& operator=( const Self& ); }; // --------------------------------------------------------------------- - PLUMA_INHERIT_PROVIDER( ImageWriter, cpPlugins::Interface::Object ); + PLUMA_INHERIT_PROVIDER_CPPLUGINS( + ImageWriter, + cpPlugins::Interface::Object + ); } // ecapseman