summaryrefslogtreecommitdiffstats
path: root/src/libs/module
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2008-05-19 23:52:44 +0000
committerDavid Robillard <d@drobilla.net>2008-05-19 23:52:44 +0000
commit239825b92b1d4c79ebd67cb3766355bf8e699bc7 (patch)
tree1f18e56760afcd0fbe201161ca0e7262d6c54124 /src/libs/module
parentf9eba59332ee7e45ffbfebcd0ce79e8e0cfd9ec4 (diff)
downloadingen-239825b92b1d4c79ebd67cb3766355bf8e699bc7.tar.gz
ingen-239825b92b1d4c79ebd67cb3766355bf8e699bc7.tar.bz2
ingen-239825b92b1d4c79ebd67cb3766355bf8e699bc7.zip
Better global (engine/client) LV2 feature sharing.
Provide URI map extension to plugin UIs. git-svn-id: http://svn.drobilla.net/lad/ingen@1217 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/libs/module')
-rw-r--r--src/libs/module/Makefile.am15
-rw-r--r--src/libs/module/World.hpp5
-rw-r--r--src/libs/module/global.cpp2
3 files changed, 19 insertions, 3 deletions
diff --git a/src/libs/module/Makefile.am b/src/libs/module/Makefile.am
index a4b22986..31a327da 100644
--- a/src/libs/module/Makefile.am
+++ b/src/libs/module/Makefile.am
@@ -1,8 +1,19 @@
noinst_LTLIBRARIES = libingen_module.la
-libingen_module_la_CXXFLAGS = @GLIBMM_CFLAGS@ @REDLANDMM_CFLAGS@ @RAUL_CFLAGS@ @SLV2_CFLAGS@ -DINGEN_MODULE_DIR=\"$(libdir)/ingen\"
+libingen_module_la_CXXFLAGS = \
+ @INGEN_CFLAGS@ \
+ @GLIBMM_CFLAGS@ \
+ @REDLANDMM_CFLAGS@ \
+ @RAUL_CFLAGS@ \
+ @SLV2_CFLAGS@ \
+ -DINGEN_MODULE_DIR=\"$(libdir)/ingen\"
-libingen_module_la_LIBADD = @GLIBMM_LIBS@ @REDLANDMM_LIBS@ @RAUL_LIBS@ @SLV2_LIBS@
+libingen_module_la_LIBADD = \
+ ../shared/libingen_shared.la \
+ @GLIBMM_LIBS@ \
+ @REDLANDMM_LIBS@ \
+ @RAUL_LIBS@ \
+ @SLV2_LIBS@
libingen_module_la_SOURCES = \
global.hpp \
diff --git a/src/libs/module/World.hpp b/src/libs/module/World.hpp
index b61fe2af..a1ca9a68 100644
--- a/src/libs/module/World.hpp
+++ b/src/libs/module/World.hpp
@@ -24,6 +24,7 @@
#include <glibmm/module.h>
#include <raul/SharedPtr.hpp>
#include <redlandmm/World.hpp>
+#include "shared/LV2Features.hpp"
#ifdef HAVE_SLV2
#include <slv2/slv2.h>
@@ -50,8 +51,10 @@ class EngineInterface;
*/
struct World {
#ifdef HAVE_SLV2
- SLV2World slv2_world;
+ SLV2World slv2_world;
+ LV2Features* lv2_features;
#endif
+
Redland::World* rdf_world;
EngineInterface* engine;
diff --git a/src/libs/module/global.cpp b/src/libs/module/global.cpp
index 6cd54685..21c36575 100644
--- a/src/libs/module/global.cpp
+++ b/src/libs/module/global.cpp
@@ -47,6 +47,7 @@ get_world()
world->rdf_world = new Redland::World();
#ifdef HAVE_SLV2
world->slv2_world = slv2_world_new_using_rdf_world(world->rdf_world->world());
+ world->lv2_features = new LV2Features();
slv2_world_load_all(world->slv2_world);
#endif
world->engine = NULL;
@@ -68,6 +69,7 @@ destroy_world()
if (world) {
#ifdef HAVE_SLV2
slv2_world_free(world->slv2_world);
+ delete world->lv2_features;
#endif
delete world->rdf_world;
delete world;