TuttleOFX
1
|
00001 #ifndef _TUTTLE_PLUGIN_EXRWRITER_PLUGIN_HPP_ 00002 #define _TUTTLE_PLUGIN_EXRWRITER_PLUGIN_HPP_ 00003 00004 #include "EXRWriterDefinitions.hpp" 00005 #include <tuttle/plugin/context/WriterPlugin.hpp> 00006 00007 namespace tuttle { 00008 namespace plugin { 00009 namespace exr { 00010 namespace writer { 00011 00012 struct EXRWriterProcessParams 00013 { 00014 std::string _filepath; ///< filepath 00015 ETuttlePluginBitDepth _bitDepth; ///< Bit depth 00016 ETuttlePluginComponents _componentsType; ///< Components type 00017 EParamStorage _storageType; ///< Storage type (Scan line or tile) 00018 }; 00019 00020 /** 00021 * @brief 00022 * 00023 */ 00024 class EXRWriterPlugin : public WriterPlugin 00025 { 00026 public: 00027 EXRWriterPlugin( OfxImageEffectHandle handle ); 00028 00029 public: 00030 EXRWriterProcessParams getProcessParams( const OfxTime time ); 00031 void render( const OFX::RenderArguments& args ); 00032 00033 protected: 00034 OFX::ChoiceParam* _componentsType; ///< Components type 00035 OFX::ChoiceParam* _storageType; ///< Storage type 00036 }; 00037 00038 } 00039 } 00040 } 00041 } 00042 00043 #endif