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