summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--NEWS4
-rw-r--r--lilv/lilv.h20
-rw-r--r--src/world.c4
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 <d@drobilla.net> Thu, 29 Jan 2015 17:40:17 -0500
+ -- David Robillard <d@drobilla.net> 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
@@ -563,6 +563,26 @@ 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.
This unloads statements loaded by lilv_world_load_bundle(). Note that this
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.