TuttleOFX
1
|
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