Allocate a static predicate for pg:inGroup.
This commit is contained in:
parent
1ef08edb7c
commit
c076e7d34f
@ -53,6 +53,7 @@ SLV2Value output_class;
|
|||||||
SLV2Value integer_prop;
|
SLV2Value integer_prop;
|
||||||
SLV2Value toggled_prop;
|
SLV2Value toggled_prop;
|
||||||
SLV2Value in_place_broken_pred;
|
SLV2Value in_place_broken_pred;
|
||||||
|
SLV2Value in_group_pred;
|
||||||
|
|
||||||
static GstSignalProcessorClass *parent_class;
|
static GstSignalProcessorClass *parent_class;
|
||||||
|
|
||||||
@ -77,7 +78,7 @@ gst_lv2_base_init (gpointer g_class)
|
|||||||
GstSignalProcessorClass *gsp_class = GST_SIGNAL_PROCESSOR_CLASS (g_class);
|
GstSignalProcessorClass *gsp_class = GST_SIGNAL_PROCESSOR_CLASS (g_class);
|
||||||
GstElementDetails *details;
|
GstElementDetails *details;
|
||||||
SLV2Plugin lv2plugin;
|
SLV2Plugin lv2plugin;
|
||||||
SLV2Value val, pred;
|
SLV2Value val;
|
||||||
SLV2Values values;
|
SLV2Values values;
|
||||||
guint j, audio_in_count, audio_out_count, control_in_count, control_out_count;
|
guint j, audio_in_count, audio_out_count, control_in_count, control_out_count;
|
||||||
gchar *klass_tags;
|
gchar *klass_tags;
|
||||||
@ -110,8 +111,6 @@ gst_lv2_base_init (gpointer g_class)
|
|||||||
g_new0 (struct _GstLV2Port, gsp_class->num_control_out);
|
g_new0 (struct _GstLV2Port, gsp_class->num_control_out);
|
||||||
|
|
||||||
klass->groups = NULL;
|
klass->groups = NULL;
|
||||||
pred = slv2_value_new_uri (world,
|
|
||||||
"http://lv2plug.in/ns/dev/port-groups#inGroup");
|
|
||||||
|
|
||||||
/* find port groups */
|
/* find port groups */
|
||||||
audio_in_count = audio_out_count = control_in_count = control_out_count = 0;
|
audio_in_count = audio_out_count = control_in_count = control_out_count = 0;
|
||||||
@ -134,7 +133,7 @@ gst_lv2_base_init (gpointer g_class)
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
desc->index = j;
|
desc->index = j;
|
||||||
values = slv2_port_get_value (lv2plugin, port, pred);
|
values = slv2_port_get_value (lv2plugin, port, in_group_pred);
|
||||||
if (slv2_values_size (values) > 0) {
|
if (slv2_values_size (values) > 0) {
|
||||||
SLV2Value v = slv2_values_get_at (values, 0);
|
SLV2Value v = slv2_values_get_at (values, 0);
|
||||||
desc->group = v;
|
desc->group = v;
|
||||||
@ -151,8 +150,6 @@ gst_lv2_base_init (gpointer g_class)
|
|||||||
g_assert (control_in_count == gsp_class->num_control_in);
|
g_assert (control_in_count == gsp_class->num_control_in);
|
||||||
g_assert (control_out_count == gsp_class->num_control_out);
|
g_assert (control_out_count == gsp_class->num_control_out);
|
||||||
|
|
||||||
slv2_value_free (pred);
|
|
||||||
|
|
||||||
/* add pad templates */
|
/* add pad templates */
|
||||||
audio_in_count = audio_out_count = 0;
|
audio_in_count = audio_out_count = 0;
|
||||||
for (j = 0; j < slv2_plugin_get_num_ports (lv2plugin); j++) {
|
for (j = 0; j < slv2_plugin_get_num_ports (lv2plugin); j++) {
|
||||||
@ -574,6 +571,9 @@ plugin_init (GstPlugin * plugin)
|
|||||||
slv2_value_new_uri (world, "http://lv2plug.in/ns/lv2core#toggled");
|
slv2_value_new_uri (world, "http://lv2plug.in/ns/lv2core#toggled");
|
||||||
in_place_broken_pred = slv2_value_new_uri (world,
|
in_place_broken_pred = slv2_value_new_uri (world,
|
||||||
"http://lv2plug.in/ns/lv2core#inPlaceBroken");
|
"http://lv2plug.in/ns/lv2core#inPlaceBroken");
|
||||||
|
in_group_pred =
|
||||||
|
slv2_value_new_uri (world,
|
||||||
|
"http://lv2plug.in/ns/dev/port-groups#inGroup");
|
||||||
|
|
||||||
parent_class = g_type_class_ref (GST_TYPE_SIGNAL_PROCESSOR);
|
parent_class = g_type_class_ref (GST_TYPE_SIGNAL_PROCESSOR);
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user