diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/lilv_internal.h | 1 | ||||
-rw-r--r-- | src/plugin.c | 7 | ||||
-rw-r--r-- | src/world.c | 2 |
3 files changed, 10 insertions, 0 deletions
diff --git a/src/lilv_internal.h b/src/lilv_internal.h index 0d4310f..21f612a 100644 --- a/src/lilv_internal.h +++ b/src/lilv_internal.h @@ -142,6 +142,7 @@ struct LilvWorldImpl { SordNode* xsd_double_node; SordNode* xsd_integer_node; LilvNode* doap_name_val; + LilvNode* lv2_extensionData_val; LilvNode* lv2_name_val; LilvNode* lv2_optionalFeature_val; LilvNode* lv2_requiredFeature_val; diff --git a/src/plugin.c b/src/plugin.c index a5ca1a7..9fba6f4 100644 --- a/src/plugin.c +++ b/src/plugin.c @@ -645,6 +645,13 @@ lilv_plugin_get_required_features(const LilvPlugin* p) } LILV_API +LilvNodes* +lilv_plugin_get_extension_data(const LilvPlugin* p) +{ + return lilv_plugin_get_value(p, p->world->lv2_extensionData_val); +} + +LILV_API const LilvPort* lilv_plugin_get_port_by_index(const LilvPlugin* p, uint32_t index) diff --git a/src/world.c b/src/world.c index 9d74c6b..0bad4c4 100644 --- a/src/world.c +++ b/src/world.c @@ -77,6 +77,7 @@ lilv_world_new(void) world->xsd_integer_node = NEW_URI(LILV_NS_XSD "integer"); world->doap_name_val = NEW_URI_VAL(LILV_NS_DOAP "name"); + world->lv2_extensionData_val = NEW_URI_VAL(LILV_NS_LV2 "extensionData"); world->lv2_name_val = NEW_URI_VAL(LILV_NS_LV2 "name"); world->lv2_optionalFeature_val = NEW_URI_VAL(LILV_NS_LV2 "optionalFeature"); world->lv2_requiredFeature_val = NEW_URI_VAL(LILV_NS_LV2 "requiredFeature"); @@ -131,6 +132,7 @@ lilv_world_free(LilvWorld* world) sord_node_free(world->world, world->xsd_double_node); sord_node_free(world->world, world->xsd_integer_node); lilv_node_free(world->doap_name_val); + lilv_node_free(world->lv2_extensionData_val); lilv_node_free(world->lv2_name_val); lilv_node_free(world->lv2_optionalFeature_val); lilv_node_free(world->lv2_requiredFeature_val); |