r1009: Move the dependencies to newer package names
[cinelerra_cv/mob.git] / plugins / bandslide / bandslide.h
blobc41b5670bad75297ddd0fb1fee4e625ba68bbc28
1 #ifndef BANDSLIDE_H
2 #define BANDSLIDE_H
4 class BandSlideMain;
5 class BandSlideWindow;
8 #include "overlayframe.inc"
9 #include "pluginvclient.h"
10 #include "vframe.inc"
15 class BandSlideCount : public BC_TumbleTextBox
17 public:
18 BandSlideCount(BandSlideMain *plugin,
19 BandSlideWindow *window,
20 int x,
21 int y);
22 int handle_event();
23 BandSlideMain *plugin;
24 BandSlideWindow *window;
27 class BandSlideIn : public BC_Radial
29 public:
30 BandSlideIn(BandSlideMain *plugin,
31 BandSlideWindow *window,
32 int x,
33 int y);
34 int handle_event();
35 BandSlideMain *plugin;
36 BandSlideWindow *window;
39 class BandSlideOut : public BC_Radial
41 public:
42 BandSlideOut(BandSlideMain *plugin,
43 BandSlideWindow *window,
44 int x,
45 int y);
46 int handle_event();
47 BandSlideMain *plugin;
48 BandSlideWindow *window;
54 class BandSlideWindow : public BC_Window
56 public:
57 BandSlideWindow(BandSlideMain *plugin, int x, int y);
58 void create_objects();
59 int close_event();
60 BandSlideMain *plugin;
61 BandSlideCount *count;
62 BandSlideIn *in;
63 BandSlideOut *out;
67 PLUGIN_THREAD_HEADER(BandSlideMain, BandSlideThread, BandSlideWindow)
70 class BandSlideMain : public PluginVClient
72 public:
73 BandSlideMain(PluginServer *server);
74 ~BandSlideMain();
76 // required for all realtime plugins
77 void load_configuration();
78 int process_realtime(VFrame *incoming, VFrame *outgoing);
79 int load_defaults();
80 int save_defaults();
81 void save_data(KeyFrame *keyframe);
82 void read_data(KeyFrame *keyframe);
83 int show_gui();
84 void raise_window();
85 int uses_gui();
86 int is_transition();
87 int is_video();
88 char* plugin_title();
89 int set_string();
90 VFrame* new_picon();
92 int bands;
93 int direction;
94 BandSlideThread *thread;
95 BC_Hash *defaults;
98 #endif