TuttleOFX  1
JpegWriterPlugin.hpp
Go to the documentation of this file.
00001 #ifndef _TUTTLE_PLUGIN_JPEG_WRITER_PLUGIN_HPP_
00002 #define _TUTTLE_PLUGIN_JPEG_WRITER_PLUGIN_HPP_
00003 
00004 #include <tuttle/plugin/context/WriterPlugin.hpp>
00005 
00006 namespace tuttle {
00007 namespace plugin {
00008 namespace jpeg {
00009 namespace writer {
00010 
00011 struct JpegWriterProcessParams
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 Jpeg writer
00021  */
00022 class JpegWriterPlugin : public WriterPlugin
00023 {
00024 public:
00025         JpegWriterPlugin( OfxImageEffectHandle handle );
00026 
00027 public:
00028         JpegWriterProcessParams getProcessParams( const OfxTime time );
00029         void               render( const OFX::RenderArguments& args );
00030 
00031 public:
00032         OFX::BooleanParam* _paramPremult; ///< premult output by alpha
00033         OFX::IntParam* _paramQuality; ///< quality / compression for jpeg
00034 };
00035 
00036 }
00037 }
00038 }
00039 }
00040 
00041 #endif