TuttleOFX  1
ImageMagickWriterProcess.hpp
Go to the documentation of this file.
00001 #ifndef IMAGEMAGICK_WRITER_PROCESS_HPP
00002 #define IMAGEMAGICK_WRITER_PROCESS_HPP
00003 
00004 #include <tuttle/plugin/global.hpp>
00005 #include <tuttle/plugin/ImageGilFilterProcessor.hpp>
00006 
00007 namespace tuttle {
00008 namespace plugin {
00009 namespace imagemagick {
00010 namespace writer {
00011 
00012 /**
00013  * @brief Base class for the denoising processor
00014  *
00015  */
00016 template<class View>
00017 class ImageMagickWriterProcess : public ImageGilFilterProcessor<View>
00018 {
00019 public:
00020         typedef typename View::value_type Pixel;
00021 
00022 protected:
00023         ImageMagickWriterPlugin&    _plugin;        ///< Rendering plugin
00024 
00025 public:
00026         ImageMagickWriterProcess( ImageMagickWriterPlugin& instance );
00027 
00028         void multiThreadProcessImages( const OfxRectI& procWindowRoW );
00029 
00030         template<class Bits>
00031         void writeImage( View& src, const std::string& filepath );
00032 };
00033 
00034 }
00035 }
00036 }
00037 }
00038 
00039 #include "ImageMagickWriterProcess.tcc"
00040 
00041 #endif