~PluginObj() { if( dlobj ) unload(dlobj); }
};
+class PluginGUIs : public ArrayList<PluginServer*>
+{
+ int next_id;
+ MWindow *mwindow;
+public:
+ PluginGUIs(MWindow *mwindow);
+ ~PluginGUIs();
+
+ void append(PluginServer *server);
+ PluginServer *gui_server(int gui_id);
+};
+
class PluginServer
{
PluginObj *plugin_obj;
int64_t position, int direction);
// Get interpolation used by EDL
int get_interpolation_type();
+// plugin position or -1 if no plugin
+ int64_t get_startproject();
+ int64_t get_endproject();
// Get or create keyframe for writing, depending on whether auto keyframes
// is enabled. Called by PluginClient::send_configure_change
KeyFrame* get_keyframe();
EDL *edl;
Preferences *preferences;
MenuEffectPrompt *prompt;
- int gui_on;
+ int gui_on, gui_id;
VFrame *temp_frame;