TuttleOFX  1
CropProcess.hpp
Go to the documentation of this file.
00001 #ifndef _TUTTLE_PLUGIN_CROP_PROCESS_HPP_
00002 #define _TUTTLE_PLUGIN_CROP_PROCESS_HPP_
00003 
00004 #include <tuttle/plugin/ImageGilFilterProcessor.hpp>
00005 #include <tuttle/plugin/global.hpp>
00006 #include <tuttle/plugin/exceptions.hpp>
00007 
00008 namespace tuttle {
00009 namespace plugin {
00010 namespace crop {
00011 
00012 /**
00013  * @brief Base class
00014  *
00015  */
00016 template<class View>
00017 class CropProcess : public ImageGilFilterProcessor<View>
00018 {
00019 public:
00020         typedef typename View::value_type Pixel;
00021 
00022 protected:
00023         CropPlugin&          _plugin;        ///< Rendering plugin
00024         CropProcessParams<Pixel>    _params;        ///< process parameters
00025 
00026 public:
00027         CropProcess<View>( CropPlugin & instance );
00028 
00029         void setup( const OFX::RenderArguments& args );
00030 
00031         void multiThreadProcessImages( const OfxRectI& procWindowRoW );
00032 };
00033 
00034 }
00035 }
00036 }
00037 
00038 #include "CropProcess.tcc"
00039 
00040 #endif
00041