TuttleOFX  1
ImageMagickWriterPlugin.hpp
Go to the documentation of this file.
00001 #ifndef _TUTTLE_PLUGIN_IMAGEMAGICK_WRITER_PLUGIN_HPP_
00002 #define _TUTTLE_PLUGIN_IMAGEMAGICK_WRITER_PLUGIN_HPP_
00003 
00004 #include <tuttle/plugin/context/WriterPlugin.hpp>
00005 
00006 namespace tuttle {
00007 namespace plugin {
00008 namespace imagemagick {
00009 namespace writer {
00010 
00011 struct ImageMagickWriterProcessParams
00012 {
00013         std::string _filepath;      ///< filepath
00014         bool _premult;              ///< Premultiply by alpha or directly use RGB channels
00015         int _bitDepth;              ///< Output bit depth
00016         int _quality;
00017 };
00018 
00019 /**
00020  * @brief ImageMagick writer
00021  */
00022 class ImageMagickWriterPlugin : public WriterPlugin
00023 {
00024 public:
00025         ImageMagickWriterPlugin( OfxImageEffectHandle handle );
00026 
00027 public:
00028         ImageMagickWriterProcessParams getProcessParams( const OfxTime time );
00029         void                           render( const OFX::RenderArguments& args );
00030 
00031 public:
00032         OFX::BooleanParam* _premult; ///< premult output by alpha
00033         OFX::IntParam* _quality; ///< quality / compression for imagemagick
00034 };
00035 
00036 }
00037 }
00038 }
00039 }
00040 
00041 #endif