summaryrefslogtreecommitdiffstats
path: root/src/server/LV2Plugin.cpp
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2015-10-30 17:02:07 +0000
committerDavid Robillard <d@drobilla.net>2015-10-30 17:02:07 +0000
commit8510f80faad7a719a97cf14b1a82a1cc2141282b (patch)
tree11ab0ede29a4a2e29d1e689f6b2cb23ee0da47f1 /src/server/LV2Plugin.cpp
parent2fe35cd17f96a1d393fda203ccaa234b0aa69b16 (diff)
downloadingen-8510f80faad7a719a97cf14b1a82a1cc2141282b.tar.gz
ingen-8510f80faad7a719a97cf14b1a82a1cc2141282b.tar.bz2
ingen-8510f80faad7a719a97cf14b1a82a1cc2141282b.zip
Update clients when plugins are unloaded/reloaded
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@5808 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/server/LV2Plugin.cpp')
-rw-r--r--src/server/LV2Plugin.cpp18
1 files changed, 12 insertions, 6 deletions
diff --git a/src/server/LV2Plugin.cpp b/src/server/LV2Plugin.cpp
index 5e0dc609..ce920f4e 100644
--- a/src/server/LV2Plugin.cpp
+++ b/src/server/LV2Plugin.cpp
@@ -39,20 +39,26 @@ LV2Plugin::LV2Plugin(World* world, const LilvPlugin* lplugin)
{
set_property(_uris.rdf_type, _uris.lv2_Plugin);
- LilvNode* minor = lilv_world_get(world->lilv_world(),
- lilv_plugin_get_uri(lplugin),
+ update_properties();
+}
+
+void
+LV2Plugin::update_properties()
+{
+ LilvNode* minor = lilv_world_get(_world->lilv_world(),
+ lilv_plugin_get_uri(_lilv_plugin),
_uris.lv2_minorVersion,
NULL);
- LilvNode* micro = lilv_world_get(world->lilv_world(),
- lilv_plugin_get_uri(lplugin),
+ LilvNode* micro = lilv_world_get(_world->lilv_world(),
+ lilv_plugin_get_uri(_lilv_plugin),
_uris.lv2_minorVersion,
NULL);
if (lilv_node_is_int(minor) && lilv_node_is_int(micro)) {
set_property(_uris.lv2_minorVersion,
- world->forge().make(lilv_node_as_int(minor)));
+ _world->forge().make(lilv_node_as_int(minor)));
set_property(_uris.lv2_microVersion,
- world->forge().make(lilv_node_as_int(micro)));
+ _world->forge().make(lilv_node_as_int(micro)));
}
lilv_node_free(minor);