5 #define MAXSHARPNESS 100
9 #include "pluginvclient.h"
10 #include "quarkwindow.h"
12 #include <sys/types.h>
16 class QuarkEngine
: public Thread
19 QuarkEngine(QuarkMain
*plugin
);
22 int start_process_frame(VFrame
*output
, VFrame
*input
, int row1
, int row2
);
23 int wait_process_frame();
26 void filter(int components
,
35 void filter(int components
,
46 void filter_888(int w
,
52 void filter_8888(int w
,
58 void filter_161616(int w
,
64 void filter_16161616(int w
,
72 void sharpen_161616();
74 void sharpen_16161616();
85 VFrame
*output
, *input
;
87 Mutex input_lock
, output_lock
;
88 unsigned char *src_rows
[4], *dst_row
;
93 class QuarkMain
: public PluginVClient
96 QuarkMain(PluginServer
*server
);
99 // required for all realtime plugins
100 int process_realtime(VFrame
*input_ptr
, VFrame
*output_ptr
);
102 char* plugin_title();
106 void load_configuration();
107 void save_data(KeyFrame
*keyframe
);
108 void read_data(KeyFrame
*keyframe
);
113 // parameters needed for sharpness
114 float sharpness
; // Range from 0 to 100
115 float last_sharpness
;
121 // a thread for the GUI
123 int pos_lut
[0x10000], neg_lut
[0x10000];
126 int get_luts(int *pos_lut
, int *neg_lut
, int color_model
);
128 QuarkEngine
**engine
;