-#include "bcdisplayinfo.h"
-#include "clip.h"
-#include "bchash.h"
-#include "filexml.h"
-#include "guicast.h"
-#include "language.h"
-#include "bccolors.h"
-#include "pluginvclient.h"
-#include "vframe.h"
-
-#include <stdint.h>
-#include <string.h>
-
-
-class YUVShiftEffect;
-
-
-class YUVShiftConfig
-{
-public:
- YUVShiftConfig();
-
- void copy_from(YUVShiftConfig &src);
- int equivalent(YUVShiftConfig &src);
- void interpolate(YUVShiftConfig &prev,
- YUVShiftConfig &next,
- long prev_frame,
- long next_frame,
- long current_frame);
-
- int y_dx, y_dy, u_dx, u_dy, v_dx, v_dy;
-};
-
-class YUVShiftLevel : public BC_ISlider
-{
-public:
- YUVShiftLevel(YUVShiftEffect *plugin, int *output, int x, int y);
- int handle_event();
- YUVShiftEffect *plugin;
- int *output;
-};
-
-class YUVShiftWindow : public PluginClientWindow
-{
-public:
- YUVShiftWindow(YUVShiftEffect *plugin);
- void create_objects();
- YUVShiftLevel *y_dx, *y_dy, *u_dx, *u_dy, *v_dx, *v_dy;
- YUVShiftEffect *plugin;
-};
-
-
-
-class YUVShiftEffect : public PluginVClient
-{
- VFrame *temp_frame;
-public:
- YUVShiftEffect(PluginServer *server);
- ~YUVShiftEffect();
-
-
- PLUGIN_CLASS_MEMBERS(YUVShiftConfig)
- int process_realtime(VFrame *input, VFrame *output);
- int is_realtime();
- void save_data(KeyFrame *keyframe);
- void read_data(KeyFrame *keyframe);
- void update_gui();
-};
-
-