From 3257b52a2ceb7d6ad36a8cd8768612ce33090003 Mon Sep 17 00:00:00 2001 From: David Robillard Date: Thu, 29 Jan 2015 22:56:16 +0000 Subject: Expose lilv_world_load_specifications() and lilv_world_load_plugin_classes(). git-svn-id: http://svn.drobilla.net/lad/trunk/lilv@5529 a436a847-0d15-0410-975c-d299462d15a1 --- NEWS | 4 +++- lilv/lilv.h | 20 ++++++++++++++++++++ src/world.c | 4 ++-- 3 files changed, 25 insertions(+), 3 deletions(-) diff --git a/NEWS b/NEWS index 60fc3c5..a9e9756 100644 --- a/NEWS +++ b/NEWS @@ -2,13 +2,15 @@ lilv (0.21.1) unstable; * Fix loading files with spaces in their path * Add lilv_file_uri_parse() for correct URI to path conversion + * Expose lilv_world_load_specifications() and + lilv_world_load_plugin_classes() * Tolerate passing NULL to lilv_state_restore() * Fix a few minor/unlikely memory errors * Configure based on compiler target OS for cross-compilation * Windows fixes (thanks John Emmas) * Minor documentation improvements - -- David Robillard Thu, 29 Jan 2015 17:40:17 -0500 + -- David Robillard Thu, 29 Jan 2015 17:55:31 -0500 lilv (0.20.0) stable; diff --git a/lilv/lilv.h b/lilv/lilv.h index ca63e90..9d7b940 100644 --- a/lilv/lilv.h +++ b/lilv/lilv.h @@ -562,6 +562,26 @@ LILV_API void lilv_world_load_bundle(LilvWorld* world, LilvNode* bundle_uri); +/** + Load all specifications from currently loaded bundles. + + This is for hosts that explicitly load specific bundles, its use is not + necessary when using lilv_world_load_all(). This function parses the + specifications and adds them to the model. +*/ +LILV_API void +lilv_world_load_specifications(LilvWorld* world); + +/** + Load all plugin classes from currently loaded specifications. + + Must be called after lilv_world_load_specifications(). This is for hosts + that explicitly load specific bundles, its use is not necessary when using + lilv_world_load_all(). +*/ +LILV_API void +lilv_world_load_plugin_classes(LilvWorld* world); + /** Unload a specific bundle. diff --git a/src/world.c b/src/world.c index cd9467a..9c758e8 100644 --- a/src/world.c +++ b/src/world.c @@ -731,7 +731,7 @@ lilv_world_load_path(LilvWorld* world, } } -static void +void lilv_world_load_specifications(LilvWorld* world) { for (LilvSpec* spec = world->specs; spec; spec = spec->next) { @@ -742,7 +742,7 @@ lilv_world_load_specifications(LilvWorld* world) } } -static void +void lilv_world_load_plugin_classes(LilvWorld* world) { /* FIXME: This loads all classes, not just lv2:Plugin subclasses. -- cgit v1.2.1