TuttleOFX
1
|
00001 #ifndef _TUTTLE_PLUGIN_TENSORS_PLUGIN_HPP_ 00002 #define _TUTTLE_PLUGIN_TENSORS_PLUGIN_HPP_ 00003 00004 #include "AnisotropicTensorsMargin.hpp" 00005 00006 #include <tuttle/plugin/ImageEffectGilPlugin.hpp> 00007 00008 namespace tuttle { 00009 namespace plugin { 00010 namespace anisotropicFilter { 00011 namespace tensors { 00012 00013 00014 /** 00015 * @class TensorsPlugin 00016 * @brief Class used to render the effect 00017 */ 00018 class TensorsPlugin : public ImageEffectGilPlugin 00019 { 00020 public: 00021 TensorsPlugin( OfxImageEffectHandle handle ); 00022 int getMargin(); 00023 00024 void getRegionsOfInterest( const OFX::RegionsOfInterestArguments& args, OFX::RegionOfInterestSetter& rois ); 00025 00026 void render( const OFX::RenderArguments& args ); 00027 00028 public: 00029 OFX::BooleanParam *_paramDisplayMargin; ///< Display margin boolean 00030 OFX::DoubleParam *_paramAlpha; 00031 OFX::DoubleParam *_paramSigma; 00032 00033 OfxRectD _renderRect; ///< Render zone 00034 OfxRectD _overSizedRect; ///< Over sized render zone 00035 00036 }; 00037 00038 00039 } 00040 } 00041 } 00042 } 00043 00044 #endif