TuttleOFX
1
|
00001 #ifndef _TUTTLE_PLUGIN_JPEG2000_WRITER_PLUGIN_HPP_ 00002 #define _TUTTLE_PLUGIN_JPEG2000_WRITER_PLUGIN_HPP_ 00003 00004 #include "Jpeg2000WriterDefinitions.hpp" 00005 #include <tuttle/plugin/context/WriterPlugin.hpp> 00006 00007 namespace tuttle { 00008 namespace plugin { 00009 namespace jpeg2000 { 00010 namespace writer { 00011 00012 struct Jpeg2000ProcessParams 00013 { 00014 std::string _filepath; ///< filepath 00015 ETuttlePluginBitDepth _bitDepth; ///< Precision (in bits) 00016 int _cineProfil; ///< Cinema Profile 00017 bool _lossless; ///< Lossless compression 00018 }; 00019 00020 /** 00021 * @brief Jpeg2000 plugin 00022 */ 00023 class Jpeg2000WriterPlugin : public WriterPlugin 00024 { 00025 public: 00026 Jpeg2000WriterPlugin( OfxImageEffectHandle handle ); 00027 00028 public: 00029 Jpeg2000ProcessParams getProcessParams(const OfxTime time); 00030 00031 void changedParam( const OFX::InstanceChangedArgs &args, const std::string ¶mName ); 00032 00033 void render( const OFX::RenderArguments &args ); 00034 00035 protected: 00036 OFX::ChoiceParam *_paramCineProfil; 00037 OFX::BooleanParam *_paramLossless; 00038 }; 00039 00040 } 00041 } 00042 } 00043 } 00044 00045 #endif