r123: Merged HEAD and TEST. New stuff shall be committed to HEAD from now on.
[cinelerra_cv/mob.git] / plugins / rgb601 / rgb601.h
blobbd2d6e98b0fda0cd35fb0ff3a7dfb307fda0d7e8
1 #ifndef RGB601_H
2 #define RGB601_H
4 class RGB601Main;
6 #define TOTAL_PATTERNS 2
8 #include "defaults.h"
9 #include "mutex.h"
10 #include "pluginvclient.h"
11 #include "rgb601window.h"
12 #include <sys/types.h>
14 class RGB601Config
16 public:
17 RGB601Config();
18 // 0 -> none 1 -> RGB->601 2 -> 601->RGB
19 int direction;
22 class RGB601Main : public PluginVClient
24 public:
25 RGB601Main(PluginServer *server);
26 ~RGB601Main();
28 // required for all realtime plugins
29 int process_realtime(VFrame *input_ptr, VFrame *output_ptr);
30 int is_realtime();
31 char* plugin_title();
32 int show_gui();
33 void update_gui();
34 void raise_window();
35 int set_string();
36 void load_configuration();
37 void save_data(KeyFrame *keyframe);
38 void read_data(KeyFrame *keyframe);
39 int load_defaults();
40 int save_defaults();
41 VFrame* new_picon();
43 void create_table(VFrame *input_ptr);
44 void process(int *table, VFrame *input_ptr, VFrame *output_ptr);
46 RGB601Thread *thread;
47 RGB601Config config;
48 Defaults *defaults;
49 int forward_table[0x10000], reverse_table[0x10000];
53 #endif