TuttleOFX  1
Move2DProcess.hpp
Go to the documentation of this file.
00001 #ifndef _TUTTLE_PLUGIN_MOVE2D_PROCESS_HPP_
00002 #define _TUTTLE_PLUGIN_MOVE2D_PROCESS_HPP_
00003 
00004 #include <tuttle/plugin/ImageGilFilterProcessor.hpp>
00005 
00006 namespace tuttle {
00007 namespace plugin {
00008 namespace move2D {
00009 
00010 /**
00011  * @brief Move2D process
00012  *
00013  */
00014 template<class View>
00015 class Move2DProcess : public ImageGilFilterProcessor<View>
00016 {
00017 public:
00018         typedef typename View::value_type Pixel;
00019         typedef typename boost::gil::channel_type<View>::type Channel;
00020         typedef float Scalar;
00021 protected:
00022     Move2DPlugin&    _plugin;            ///< Rendering plugin
00023         Move2DProcessParams<Scalar> _params; ///< parameters
00024 
00025 public:
00026     Move2DProcess( Move2DPlugin& effect );
00027 
00028         void setup( const OFX::RenderArguments& args );
00029 
00030     void multiThreadProcessImages( const OfxRectI& procWindowRoW );
00031 };
00032 
00033 }
00034 }
00035 }
00036 
00037 #include "Move2DProcess.tcc"
00038 
00039 #endif