diff options
Diffstat (limited to 'src/engine/LV2Node.cpp')
-rw-r--r-- | src/engine/LV2Node.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/engine/LV2Node.cpp b/src/engine/LV2Node.cpp index a0c7dd07..2e176abe 100644 --- a/src/engine/LV2Node.cpp +++ b/src/engine/LV2Node.cpp @@ -198,6 +198,9 @@ LV2Node::instantiate(BufferFactory& bufs) SLV2Value min_size_pred = slv2_value_new_uri(info->lv2_world(), "http://lv2plug.in/ns/dev/resize-port#minimumSize"); + SLV2Value port_property_pred = slv2_value_new_uri(info->lv2_world(), + "http://lv2plug.in/ns/lv2core#portProperty"); + //SLV2Value as_large_as_pred = slv2_value_new_uri(info->lv2_world(), // "http://lv2plug.in/ns/dev/resize-port#asLargeAs"); @@ -291,6 +294,16 @@ LV2Node::instantiate(BufferFactory& bufs) } } + // Set lv2:portProperty properties + SLV2Values properties = slv2_port_get_value(plug, id, port_property_pred); + for (uint32_t i = 0; i < slv2_values_size(properties); ++i) { + SLV2Value p = slv2_values_get_at(properties, i); + if (slv2_value_is_uri(p)) { + Raul::info << "SET PORT PROPERTY " << slv2_value_as_uri(p) << endl; + port->set_property(uris.lv2_portProperty, Raul::URI(slv2_value_as_uri(p))); + } + } + SLV2Values contexts = slv2_port_get_value(plug, id, context_pred); for (uint32_t i = 0; i < slv2_values_size(contexts); ++i) { SLV2Value c = slv2_values_get_at(contexts, i); |