[SCM] calf/master: Move the table_edit_iface out of plugin_metadata_iface, where it should have never been in first place.
js at users.alioth.debian.org
js at users.alioth.debian.org
Tue May 7 15:40:25 UTC 2013
The following commit has been merged in the master branch:
commit 6907dc9670eae2313707b142c552a8d9e8b477b5
Author: Krzysztof Foltman <wdev at foltman.com>
Date: Sat Sep 25 21:39:34 2010 +0100
Move the table_edit_iface out of plugin_metadata_iface, where it should have never been in first place.
diff --git a/src/calf/giface.h b/src/calf/giface.h
index d4eb287..55e8323 100644
--- a/src/calf/giface.h
+++ b/src/calf/giface.h
@@ -315,8 +315,6 @@ struct plugin_metadata_iface
virtual bool requires_midi() const =0;
/// @return port offset of first control (parameter) port (= number of audio inputs + number of audio outputs in all existing plugins as for 1 Aug 2008)
virtual int get_param_port_offset() const = 0;
- /// @return table_edit_iface if any
- virtual const table_edit_iface *get_table_edit_iface() const = 0;
/// @return NULL-terminated list of menu commands
virtual plugin_command_info *get_commands() const { return NULL; }
/// @return description structure for given parameter
@@ -367,6 +365,8 @@ struct plugin_ctl_iface
virtual const plugin_metadata_iface *get_metadata_iface() const = 0;
/// @return line_graph_iface if any
virtual const line_graph_iface *get_line_graph_iface() const = 0;
+ /// @return table_edit_iface if any
+ virtual const table_edit_iface *get_table_edit_iface() const = 0;
/// Do-nothing destructor to silence compiler warning
virtual ~plugin_ctl_iface() {}
};
@@ -447,6 +447,8 @@ struct audio_module_iface
virtual uint32_t message_run(const void *valid_ports, void *output_ports) = 0;
/// @return line_graph_iface if any
virtual const line_graph_iface *get_line_graph_iface() const = 0;
+ /// @return table_edit_iface if any
+ virtual const table_edit_iface *get_table_edit_iface() const = 0;
virtual ~audio_module_iface() {}
};
@@ -546,6 +548,7 @@ public:
}
/// @return line_graph_iface if any
virtual const line_graph_iface *get_line_graph_iface() const { return dynamic_cast<const line_graph_iface *>(this); }
+ virtual const table_edit_iface *get_table_edit_iface() const { return dynamic_cast<const table_edit_iface *>(this); }
};
#if USE_EXEC_GUI || USE_DSSI
@@ -609,7 +612,6 @@ public:
bool get_midi() const { return Metadata::support_midi; }
bool requires_midi() const { return Metadata::require_midi; }
bool is_rt_capable() const { return Metadata::rt_capable; }
- const table_edit_iface *get_table_edit_iface() const { return dynamic_cast<const table_edit_iface *>(this); }
int get_param_port_offset() const { return Metadata::in_count + Metadata::out_count; }
const char *get_gui_xml() const { static const char *data_ptr = calf_plugins::load_gui_xml(get_id()); return data_ptr; }
plugin_command_info *get_commands() const { return NULL; }
diff --git a/src/calf/jackhost.h b/src/calf/jackhost.h
index 5057fee..2831e97 100644
--- a/src/calf/jackhost.h
+++ b/src/calf/jackhost.h
@@ -128,6 +128,7 @@ public:
virtual int send_status_updates(send_updates_iface *sui, int last_serial) { return module->send_status_updates(sui, last_serial); }
virtual const plugin_metadata_iface *get_metadata_iface() const { return module->get_metadata_iface(); }
virtual const line_graph_iface *get_line_graph_iface() const { return module->get_line_graph_iface(); }
+ virtual const table_edit_iface *get_table_edit_iface() const { return module->get_table_edit_iface(); }
};
extern jack_host *create_jack_host(const char *name, const std::string &instance_name, calf_plugins::progress_report_iface *priface);
diff --git a/src/calf/ladspa_wrap.h b/src/calf/ladspa_wrap.h
index d94ebce..8859b98 100644
--- a/src/calf/ladspa_wrap.h
+++ b/src/calf/ladspa_wrap.h
@@ -48,6 +48,7 @@ struct ladspa_instance: public plugin_ctl_iface
ladspa_instance(audio_module_iface *_module, ladspa_plugin_metadata_set *_ladspa, int sample_rate);
virtual const line_graph_iface *get_line_graph_iface() const { return module->get_line_graph_iface(); }
+ virtual const table_edit_iface *get_table_edit_iface() const { return module->get_table_edit_iface(); }
virtual float get_param_value(int param_no);
virtual void set_param_value(int param_no, float value);
virtual bool activate_preset(int bank, int program);
diff --git a/src/calf/lv2wrap.h b/src/calf/lv2wrap.h
index 198b713..c43237f 100644
--- a/src/calf/lv2wrap.h
+++ b/src/calf/lv2wrap.h
@@ -160,6 +160,7 @@ struct lv2_instance: public plugin_ctl_iface, public progress_report_iface
}
virtual const plugin_metadata_iface *get_metadata_iface() const { return metadata; }
virtual const line_graph_iface *get_line_graph_iface() const { return module->get_line_graph_iface(); }
+ virtual const table_edit_iface *get_table_edit_iface() const { return module->get_table_edit_iface(); }
virtual int send_status_updates(send_updates_iface *sui, int last_serial) { return module->send_status_updates(sui, last_serial); }
};
diff --git a/src/dssigui.cpp b/src/dssigui.cpp
index 5e59ae6..b1daf98 100644
--- a/src/dssigui.cpp
+++ b/src/dssigui.cpp
@@ -205,6 +205,7 @@ struct plugin_proxy: public plugin_ctl_iface, public line_graph_iface
}
}
virtual const line_graph_iface *get_line_graph_iface() const { return this; }
+ virtual const table_edit_iface *get_table_edit_iface() const { return NULL; } // not supported in external UIs yet
virtual bool get_graph(int index, int subindex, float *data, int points, cairo_iface *context) const;
virtual bool get_dot(int index, int subindex, float &x, float &y, int &size, cairo_iface *context) const;
virtual bool get_gridline(int index, int subindex, float &pos, bool &vertical, std::string &legend, cairo_iface *context) const;
diff --git a/src/gui_controls.cpp b/src/gui_controls.cpp
index dede3b7..93b8d18 100644
--- a/src/gui_controls.cpp
+++ b/src/gui_controls.cpp
@@ -938,7 +938,7 @@ GtkWidget *listview_param_control::create(plugin_gui *_gui, int _param_no)
gui = _gui;
param_no = _param_no;
- teif = gui->plugin->get_metadata_iface()->get_table_edit_iface();
+ teif = gui->plugin->get_table_edit_iface();
const table_column_info *tci = teif->get_table_columns(param_no);
assert(tci);
cols = 0;
diff --git a/src/lv2gui.cpp b/src/lv2gui.cpp
index e236bce..eedcc16 100644
--- a/src/lv2gui.cpp
+++ b/src/lv2gui.cpp
@@ -92,6 +92,9 @@ struct plugin_proxy_base
/// Obtain line graph interface if available
const line_graph_iface *get_line_graph_iface() const;
+ /// Obtain line graph interface if available
+ const table_edit_iface *get_table_edit_iface() const;
+
/// Map an URI to an integer value using a given URI map
uint32_t map_uri(const char *mapURI, const char *keyURI);
@@ -174,6 +177,13 @@ const line_graph_iface *plugin_proxy_base::get_line_graph_iface() const
return NULL;
}
+const table_edit_iface *plugin_proxy_base::get_table_edit_iface() const
+{
+ if (instance)
+ return instance->get_table_edit_iface();
+ return NULL;
+}
+
char *plugin_proxy_base::configure(const char *key, const char *value)
{
if (instance)
@@ -239,6 +249,8 @@ struct lv2_plugin_proxy: public plugin_ctl_iface, public plugin_proxy_base, publ
virtual const plugin_metadata_iface *get_metadata_iface() const { return plugin_metadata; }
/// Override for a method in plugin_ctl_iface - trivial delegation to base class
virtual const line_graph_iface *get_line_graph_iface() const { return plugin_proxy_base::get_line_graph_iface(); }
+ /// Override for a method in plugin_ctl_iface - trivial delegation to base class
+ virtual const table_edit_iface *get_table_edit_iface() const { return plugin_proxy_base::get_table_edit_iface(); }
};
static gboolean plugin_on_idle(void *data)
--
calf audio plugins packaging
More information about the pkg-multimedia-commits
mailing list