diff options
Diffstat (limited to 'src/world.c')
-rw-r--r-- | src/world.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/world.c b/src/world.c index ae04b17..6cb0bad 100644 --- a/src/world.c +++ b/src/world.c @@ -56,7 +56,9 @@ slv2_world_new() #define NS_DYNMAN (const uint8_t*)"http://lv2plug.in/ns/ext/dynmanifest#" -#define NEW_URI(uri) sord_get_uri(world->model, true, uri) +#define NEW_URI(uri) sord_get_uri(world->model, true, uri) +#define NEW_URI_VAL(uri) slv2_value_new_from_node( \ + world,sord_get_uri(world->model, true, uri)); world->dyn_manifest_node = NEW_URI(NS_DYNMAN "DynManifest"); world->lv2_specification_node = NEW_URI(SLV2_NS_LV2 "Specification"); @@ -81,6 +83,9 @@ slv2_world_new() world->xsd_integer_node = NEW_URI(SLV2_NS_XSD "integer"); world->xsd_decimal_node = NEW_URI(SLV2_NS_XSD "decimal"); + world->doap_name_val = NEW_URI_VAL(SLV2_NS_DOAP "name"); + world->lv2_name_val = NEW_URI_VAL(SLV2_NS_LV2 "name"); + world->lv2_plugin_class = slv2_plugin_class_new( world, NULL, world->lv2_plugin_node, "Plugin"); assert(world->lv2_plugin_class); @@ -133,6 +138,9 @@ slv2_world_free(SLV2World world) slv2_node_free(world->xsd_integer_node); slv2_node_free(world->xsd_decimal_node); + slv2_value_free(world->doap_name_val); + slv2_value_free(world->lv2_name_val); + for (unsigned i = 0; i < ((GPtrArray*)world->plugins)->len; ++i) slv2_plugin_free(g_ptr_array_index((GPtrArray*)world->plugins, i)); g_ptr_array_unref(world->plugins); |