bg/clr color tweaks, clear borders rework, fc31 depends
[goodguy/cinelerra.git] / cinelerra-5.1 / plugins / yuv411 / yuv411.h
1 #ifndef YUV411_H
2 #define YUV411_H
3
4
5 class yuv411Main;
6 class yuv411Window;
7
8 #include "filexml.h"
9 #include "yuv411win.h"
10 #include "guicast.h"
11 #include "pluginvclient.h"
12
13 class yuv411Config
14 {
15 public:
16         yuv411Config();
17         void reset();
18
19         void copy_from(yuv411Config &that);
20         int equivalent(yuv411Config &that);
21         void interpolate(yuv411Config &prev, yuv411Config &next,
22                 long prev_frame, long next_frame, long current_frame);
23         int int_horizontal;
24         int avg_vertical;
25         int inpainting;
26         int offset;
27         int thresh;
28         int bias;
29 };
30
31 class yuv411Main : public PluginVClient
32 {
33         VFrame *temp_frame;
34         int colormodel;
35         friend class yuv411Window;
36 public:
37         yuv411Main(PluginServer *server);
38         ~yuv411Main();
39
40 // required for all realtime plugins
41         PLUGIN_CLASS_MEMBERS(yuv411Config)
42
43         int process_realtime(VFrame *input_ptr, VFrame *output_ptr);
44         int is_realtime();
45         void update_gui();
46         void render_gui(void *data);
47         void save_data(KeyFrame *keyframe);
48         void read_data(KeyFrame *keyframe);
49 };
50
51
52 #endif