-#include "bcdisplayinfo.h"
-#include "affine.h"
-#include "clip.h"
-#include "bchash.h"
-#include "filexml.h"
-#include "guicast.h"
-#include "keyframe.h"
-#include "language.h"
-#include "pluginvclient.h"
-#include "vframe.h"
-
-#include <math.h>
-#include <string.h>
-#include <stdint.h>
-
-
-class Rumbler;
-class RumblerConfig;
-class RumblerRate;
-class RumblerSeq;
-class RumblerWindow;
-
-
-class RumblerConfig
-{
-public:
- RumblerConfig();
- float time_rumble, time_rate;
- float space_rumble, space_rate;
- int sequence;
- void copy_from(RumblerConfig &that);
- int equivalent(RumblerConfig &that);
- void interpolate(RumblerConfig &prev, RumblerConfig &next,
- int64_t prev_frame, int64_t next_frame, int64_t current_frame);
-};
-
-class RumblerRate : public BC_TextBox
-{
-public:
- RumblerRate(Rumbler *plugin, RumblerWindow *gui,
- float &value, int x, int y);
- int handle_event();
- Rumbler *plugin;
- RumblerWindow *gui;
- float *value;
-};
-
-class RumblerSeq : public BC_TextBox
-{
-public:
- RumblerSeq(Rumbler *plugin, RumblerWindow *gui,
- int &value, int x, int y);
- int handle_event();
- Rumbler *plugin;
- RumblerWindow *gui;
- int *value;
-};
-
-
-class RumblerWindow : public PluginClientWindow
-{
-public:
- RumblerWindow(Rumbler *plugin);
- ~RumblerWindow();
- void create_objects();
-
- Rumbler *plugin;
- RumblerRate *time_rumble, *time_rate;
- RumblerRate *space_rumble, *space_rate;
- RumblerSeq *seq;
-};
-
-class Rumbler : public PluginVClient
-{
-public:
- Rumbler(PluginServer *server);
- ~Rumbler();