TuttleOFX  1
InvertPlugin.hpp
Go to the documentation of this file.
00001 #ifndef _TUTTLE_PLUGIN_INVERTPLUGIN_HPP_
00002 #define _TUTTLE_PLUGIN_INVERTPLUGIN_HPP_
00003 
00004 #include "InvertDefinitions.hpp"
00005 
00006 #include <tuttle/plugin/ImageEffectGilPlugin.hpp>
00007 
00008 namespace tuttle {
00009 namespace plugin {
00010 namespace invert {
00011 
00012 struct InvertProcessParams
00013 {
00014         bool _red;
00015         bool _green;
00016         bool _blue;
00017         bool _alpha;
00018         bool _gray;
00019 };
00020 
00021 /**
00022  * @brief
00023  *
00024  */
00025 class InvertPlugin : public ImageEffectGilPlugin
00026 {
00027 public:
00028         InvertPlugin( OfxImageEffectHandle handle );
00029 
00030 public:
00031         InvertProcessParams getProcessParams( const OfxPointD& renderScale = OFX::kNoRenderScale ) const;
00032 
00033         void render( const OFX::RenderArguments& args );
00034 
00035 protected:
00036         OFX::GroupParam*   _paramProcessGroup;
00037         OFX::BooleanParam* _paramProcessR;
00038         OFX::BooleanParam* _paramProcessG;
00039         OFX::BooleanParam* _paramProcessB;
00040         OFX::BooleanParam* _paramProcessA;
00041         OFX::BooleanParam* _paramProcessGray;
00042 };
00043 
00044 }
00045 }
00046 }
00047 
00048 #endif