X-Git-Url: https://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fplugins%2Fcrikey%2Fcrikey.h;h=6cb3aa4f5ff85b68804abedb670c8c395a523229;hb=9546c223df88c04184b0ffbd27323c09952dfa4c;hp=21e602e7c669ff534484b5a21eaceb62f1469306;hpb=7fd85fb66168f6b518c5f2d73e04036e87faa0e1;p=goodguy%2Fcinelerra.git diff --git a/cinelerra-5.1/plugins/crikey/crikey.h b/cinelerra-5.1/plugins/crikey/crikey.h index 21e602e7..6cb3aa4f 100644 --- a/cinelerra-5.1/plugins/crikey/crikey.h +++ b/cinelerra-5.1/plugins/crikey/crikey.h @@ -44,6 +44,7 @@ public: CriKeyPoint(int tag, int e, float x, float y, float t); ~CriKeyPoint(); + void update_parameter(CriKeyPoint *prev, CriKeyPoint *src); }; class CriKeyPoints : public ArrayList { @@ -58,6 +59,8 @@ public: CriKeyConfig(); ~CriKeyConfig(); + void save_data(KeyFrame *keyframe); + void read_data(KeyFrame *keyframe); int equivalent(CriKeyConfig &that); void copy_from(CriKeyConfig &that); void interpolate(CriKeyConfig &prev, CriKeyConfig &next, @@ -71,7 +74,6 @@ public: float threshold; int draw_mode; - int drag, selected; }; class CriKeyPackage : public LoadPackage @@ -118,8 +120,10 @@ public: // required for all realtime plugins PLUGIN_CLASS_MEMBERS2(CriKeyConfig) int is_realtime(); - void update_gui(); + void render_gui(void *data); + int is_dragging(); int new_point(); + void update_gui(); int set_target(float *color, int x, int y); void save_data(KeyFrame *keyframe); void read_data(KeyFrame *keyframe); @@ -128,11 +132,15 @@ public: void draw_edge(VFrame *frm); void draw_mask(VFrame *frm); void draw_point(VFrame *msk, CriKeyPoint *pt); + void span_keyframes(KeyFrame *src, int64_t start, int64_t end); + void update_parameter(CriKeyConfig &prev_config, CriKeyConfig &src_config, + KeyFrame *keyframe); CriKeyEngine *engine; VFrame *src, *edg, *msk; int w, h, color_model, bpp, comp; int is_yuv, is_float; + int drag, selected; }; #endif