summaryrefslogtreecommitdiffstats
path: root/src/server
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2012-03-14 23:38:53 +0000
committerDavid Robillard <d@drobilla.net>2012-03-14 23:38:53 +0000
commitf8ca7f3cf6f4a0e967eacfd2e1f9a8ae9625c015 (patch)
treea1e7bff65900df78c2283fec7093454a18340195 /src/server
parent31f009967ea0a1664c05d38ea1c126e0c678b20a (diff)
downloadingen-f8ca7f3cf6f4a0e967eacfd2e1f9a8ae9625c015.tar.gz
ingen-f8ca7f3cf6f4a0e967eacfd2e1f9a8ae9625c015.tar.bz2
ingen-f8ca7f3cf6f4a0e967eacfd2e1f9a8ae9625c015.zip
Use the host URI map/unmap when running as a plugin.
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4058 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/server')
-rw-r--r--src/server/BufferFactory.cpp1
-rw-r--r--src/server/ConnectionImpl.cpp1
-rw-r--r--src/server/DuplexPort.cpp1
-rw-r--r--src/server/Engine.cpp1
-rw-r--r--src/server/InputPort.cpp1
-rw-r--r--src/server/InternalPlugin.cpp1
-rw-r--r--src/server/LV2Node.cpp1
-rw-r--r--src/server/LV2Plugin.cpp4
-rw-r--r--src/server/Notification.cpp1
-rw-r--r--src/server/ObjectSender.cpp1
-rw-r--r--src/server/OutputPort.cpp1
-rw-r--r--src/server/PatchImpl.cpp5
-rw-r--r--src/server/PortImpl.cpp1
-rw-r--r--src/server/ServerInterfaceImpl.cpp2
-rw-r--r--src/server/events/CreateNode.cpp6
-rw-r--r--src/server/events/CreatePatch.cpp4
-rw-r--r--src/server/events/CreatePort.cpp1
-rw-r--r--src/server/events/RegisterClient.cpp4
-rw-r--r--src/server/events/SetMetadata.cpp4
-rw-r--r--src/server/events/SetPortValue.cpp11
-rw-r--r--src/server/ingen_lv2.cpp25
-rw-r--r--src/server/internals/Controller.cpp4
-rw-r--r--src/server/internals/Delay.cpp7
-rw-r--r--src/server/internals/Note.cpp7
-rw-r--r--src/server/internals/Trigger.cpp9
25 files changed, 72 insertions, 32 deletions
diff --git a/src/server/BufferFactory.cpp b/src/server/BufferFactory.cpp
index 6e6474e9..f24f7270 100644
--- a/src/server/BufferFactory.cpp
+++ b/src/server/BufferFactory.cpp
@@ -18,6 +18,7 @@
#include <algorithm>
#include "raul/log.hpp"
#include "ingen/shared/LV2URIMap.hpp"
+#include "ingen/shared/URIs.hpp"
#include "AudioBuffer.hpp"
#include "EventBuffer.hpp"
#include "ObjectBuffer.hpp"
diff --git a/src/server/ConnectionImpl.cpp b/src/server/ConnectionImpl.cpp
index d752d4b2..bc0a5c53 100644
--- a/src/server/ConnectionImpl.cpp
+++ b/src/server/ConnectionImpl.cpp
@@ -20,6 +20,7 @@
#include "raul/log.hpp"
#include "raul/Maid.hpp"
#include "ingen/shared/LV2URIMap.hpp"
+#include "ingen/shared/URIs.hpp"
#include "AudioBuffer.hpp"
#include "BufferFactory.hpp"
#include "ConnectionImpl.hpp"
diff --git a/src/server/DuplexPort.cpp b/src/server/DuplexPort.cpp
index 8b8cf541..f2c2763b 100644
--- a/src/server/DuplexPort.cpp
+++ b/src/server/DuplexPort.cpp
@@ -20,6 +20,7 @@
#include <string>
#include "ingen/shared/LV2URIMap.hpp"
+#include "ingen/shared/URIs.hpp"
#include "ConnectionImpl.hpp"
#include "DuplexPort.hpp"
diff --git a/src/server/Engine.cpp b/src/server/Engine.cpp
index ebfd73b3..d9878bee 100644
--- a/src/server/Engine.cpp
+++ b/src/server/Engine.cpp
@@ -29,6 +29,7 @@
#include "ingen/shared/LV2Features.hpp"
#include "ingen/shared/LV2URIMap.hpp"
#include "ingen/shared/Store.hpp"
+#include "ingen/shared/URIs.hpp"
#include "BufferFactory.hpp"
#include "ClientBroadcaster.hpp"
#include "ControlBindings.hpp"
diff --git a/src/server/InputPort.cpp b/src/server/InputPort.cpp
index 9ab3692e..a07ef183 100644
--- a/src/server/InputPort.cpp
+++ b/src/server/InputPort.cpp
@@ -32,6 +32,7 @@
#include "ThreadManager.hpp"
#include "mix.hpp"
#include "ingen/shared/LV2URIMap.hpp"
+#include "ingen/shared/URIs.hpp"
#include "util.hpp"
using namespace std;
diff --git a/src/server/InternalPlugin.cpp b/src/server/InternalPlugin.cpp
index 2be57051..773a30c6 100644
--- a/src/server/InternalPlugin.cpp
+++ b/src/server/InternalPlugin.cpp
@@ -18,6 +18,7 @@
#include <cassert>
#include <string>
#include "ingen/shared/LV2URIMap.hpp"
+#include "ingen/shared/URIs.hpp"
#include "internals/Controller.hpp"
#include "internals/Delay.hpp"
#include "internals/Note.hpp"
diff --git a/src/server/LV2Node.cpp b/src/server/LV2Node.cpp
index ff886166..a22b0232 100644
--- a/src/server/LV2Node.cpp
+++ b/src/server/LV2Node.cpp
@@ -27,6 +27,7 @@
#include "raul/Array.hpp"
#include "ingen/shared/LV2URIMap.hpp"
+#include "ingen/shared/URIs.hpp"
#include "AudioBuffer.hpp"
#include "EventBuffer.hpp"
diff --git a/src/server/LV2Plugin.cpp b/src/server/LV2Plugin.cpp
index 59028cfc..87669417 100644
--- a/src/server/LV2Plugin.cpp
+++ b/src/server/LV2Plugin.cpp
@@ -19,11 +19,11 @@
#include <string>
#include <glibmm.h>
+#include "ingen/shared/LV2URIMap.hpp"
+#include "ingen/shared/URIs.hpp"
#include "raul/log.hpp"
-
#include "sord/sordmm.hpp"
-#include "ingen/shared/LV2URIMap.hpp"
#include "Driver.hpp"
#include "Engine.hpp"
#include "LV2Node.hpp"
diff --git a/src/server/Notification.cpp b/src/server/Notification.cpp
index c9ea9d00..7a44062f 100644
--- a/src/server/Notification.cpp
+++ b/src/server/Notification.cpp
@@ -16,6 +16,7 @@
*/
#include "ingen/shared/LV2URIMap.hpp"
+#include "ingen/shared/URIs.hpp"
#include "ClientBroadcaster.hpp"
#include "Notification.hpp"
diff --git a/src/server/ObjectSender.cpp b/src/server/ObjectSender.cpp
index 746e7642..9eac2911 100644
--- a/src/server/ObjectSender.cpp
+++ b/src/server/ObjectSender.cpp
@@ -18,6 +18,7 @@
#include "ObjectSender.hpp"
#include "ingen/ClientInterface.hpp"
#include "ingen/shared/LV2URIMap.hpp"
+#include "ingen/shared/URIs.hpp"
#include "EngineStore.hpp"
#include "PatchImpl.hpp"
#include "NodeImpl.hpp"
diff --git a/src/server/OutputPort.cpp b/src/server/OutputPort.cpp
index e2d8cd9c..11f637b3 100644
--- a/src/server/OutputPort.cpp
+++ b/src/server/OutputPort.cpp
@@ -22,6 +22,7 @@
#include "OutputPort.hpp"
#include "ProcessContext.hpp"
#include "ingen/shared/LV2URIMap.hpp"
+#include "ingen/shared/URIs.hpp"
using namespace std;
diff --git a/src/server/PatchImpl.cpp b/src/server/PatchImpl.cpp
index f43abf39..c2d97d41 100644
--- a/src/server/PatchImpl.cpp
+++ b/src/server/PatchImpl.cpp
@@ -19,6 +19,9 @@
#include <cmath>
#include <string>
+#include "ingen/shared/LV2URIMap.hpp"
+#include "ingen/shared/URIs.hpp"
+#include "ingen/shared/World.hpp"
#include "raul/log.hpp"
#include "ConnectionImpl.hpp"
@@ -31,8 +34,6 @@
#include "PortImpl.hpp"
#include "ProcessSlave.hpp"
#include "ThreadManager.hpp"
-#include "ingen/shared/LV2URIMap.hpp"
-#include "ingen/shared/World.hpp"
using namespace std;
using namespace Raul;
diff --git a/src/server/PortImpl.cpp b/src/server/PortImpl.cpp
index 03403a7a..67255e5f 100644
--- a/src/server/PortImpl.cpp
+++ b/src/server/PortImpl.cpp
@@ -22,6 +22,7 @@
#include "ingen/shared/LV2URIMap.hpp"
#include "ingen/shared/LV2Atom.hpp"
+#include "ingen/shared/URIs.hpp"
#include "AudioBuffer.hpp"
#include "BufferFactory.hpp"
diff --git a/src/server/ServerInterfaceImpl.cpp b/src/server/ServerInterfaceImpl.cpp
index cf08a8de..eb615e9a 100644
--- a/src/server/ServerInterfaceImpl.cpp
+++ b/src/server/ServerInterfaceImpl.cpp
@@ -19,6 +19,8 @@
#include "raul/log.hpp"
+#include "ingen/shared/URIs.hpp"
+
#include "Driver.hpp"
#include "Engine.hpp"
#include "EventSource.hpp"
diff --git a/src/server/events/CreateNode.cpp b/src/server/events/CreateNode.cpp
index 5fe7a86f..f043a321 100644
--- a/src/server/events/CreateNode.cpp
+++ b/src/server/events/CreateNode.cpp
@@ -15,11 +15,13 @@
* 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/
-#include "raul/log.hpp"
+#include "ingen/shared/LV2URIMap.hpp"
+#include "ingen/shared/URIs.hpp"
#include "raul/Maid.hpp"
#include "raul/Path.hpp"
+#include "raul/log.hpp"
#include "sord/sordmm.hpp"
-#include "ingen/shared/LV2URIMap.hpp"
+
#include "CreateNode.hpp"
#include "PatchImpl.hpp"
#include "NodeImpl.hpp"
diff --git a/src/server/events/CreatePatch.cpp b/src/server/events/CreatePatch.cpp
index 6e261755..4f85be8d 100644
--- a/src/server/events/CreatePatch.cpp
+++ b/src/server/events/CreatePatch.cpp
@@ -15,9 +15,11 @@
* 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/
+#include "ingen/shared/LV2URIMap.hpp"
+#include "ingen/shared/URIs.hpp"
#include "raul/Maid.hpp"
#include "raul/Path.hpp"
-#include "ingen/shared/LV2URIMap.hpp"
+
#include "events/CreatePatch.hpp"
#include "PatchImpl.hpp"
#include "NodeImpl.hpp"
diff --git a/src/server/events/CreatePort.cpp b/src/server/events/CreatePort.cpp
index 4f4753d3..39aed9d2 100644
--- a/src/server/events/CreatePort.cpp
+++ b/src/server/events/CreatePort.cpp
@@ -20,6 +20,7 @@
#include "raul/Maid.hpp"
#include "raul/Path.hpp"
#include "ingen/shared/LV2URIMap.hpp"
+#include "ingen/shared/URIs.hpp"
#include "ClientBroadcaster.hpp"
#include "ControlBindings.hpp"
#include "CreatePort.hpp"
diff --git a/src/server/events/RegisterClient.cpp b/src/server/events/RegisterClient.cpp
index d95cc19c..088cf296 100644
--- a/src/server/events/RegisterClient.cpp
+++ b/src/server/events/RegisterClient.cpp
@@ -15,11 +15,13 @@
* 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/
+#include "ingen/shared/LV2URIMap.hpp"
+#include "ingen/shared/URIs.hpp"
+
#include "ClientBroadcaster.hpp"
#include "Driver.hpp"
#include "Engine.hpp"
#include "events/RegisterClient.hpp"
-#include "ingen/shared/LV2URIMap.hpp"
using namespace Raul;
diff --git a/src/server/events/SetMetadata.cpp b/src/server/events/SetMetadata.cpp
index 0603a150..5b2391bd 100644
--- a/src/server/events/SetMetadata.cpp
+++ b/src/server/events/SetMetadata.cpp
@@ -22,6 +22,9 @@
#include "raul/log.hpp"
#include "raul/Maid.hpp"
+#include "ingen/shared/LV2URIMap.hpp"
+#include "ingen/shared/URIs.hpp"
+
#include "ClientBroadcaster.hpp"
#include "ControlBindings.hpp"
#include "CreateNode.hpp"
@@ -37,7 +40,6 @@
#include "PortType.hpp"
#include "SetMetadata.hpp"
#include "SetPortValue.hpp"
-#include "ingen/shared/LV2URIMap.hpp"
#define LOG(s) s << "[SetMetadata] "
diff --git a/src/server/events/SetPortValue.cpp b/src/server/events/SetPortValue.cpp
index bc4cd9bf..30478f5f 100644
--- a/src/server/events/SetPortValue.cpp
+++ b/src/server/events/SetPortValue.cpp
@@ -16,12 +16,15 @@
*/
#include <sstream>
-#include "raul/log.hpp"
-#include "lv2/lv2plug.in/ns/ext/event/event.h"
-#include "ingen/shared/LV2URIMap.hpp"
-#include "ingen/shared/LV2Features.hpp"
+
#include "ingen/shared/LV2Atom.hpp"
+#include "ingen/shared/LV2Features.hpp"
+#include "ingen/shared/LV2URIMap.hpp"
+#include "ingen/shared/URIs.hpp"
#include "ingen/shared/World.hpp"
+#include "lv2/lv2plug.in/ns/ext/event/event.h"
+#include "raul/log.hpp"
+
#include "AudioBuffer.hpp"
#include "ClientBroadcaster.hpp"
#include "ControlBindings.hpp"
diff --git a/src/server/ingen_lv2.cpp b/src/server/ingen_lv2.cpp
index db8a642e..23aa3715 100644
--- a/src/server/ingen_lv2.cpp
+++ b/src/server/ingen_lv2.cpp
@@ -278,24 +278,27 @@ ingen_instantiate(const LV2_Descriptor* descriptor,
return NULL;
}
- IngenPlugin* plugin = (IngenPlugin*)malloc(sizeof(IngenPlugin));
- plugin->conf = new Ingen::Shared::Configuration(&plugin->forge);
- plugin->world = new Ingen::Shared::World(plugin->conf,
- plugin->argc,
- plugin->argv);
- if (!plugin->world->load_module("serialisation")) {
- delete plugin->world;
- return NULL;
- }
- plugin->main = NULL;
- plugin->map = NULL;
+ IngenPlugin* plugin = (IngenPlugin*)malloc(sizeof(IngenPlugin));
+ plugin->conf = new Ingen::Shared::Configuration(&plugin->forge);
+ plugin->main = NULL;
+ plugin->map = NULL;
+ LV2_URID_Unmap* unmap = NULL;
for (int i = 0; features[i]; ++i) {
if (!strcmp(features[i]->URI, LV2_URID_URI "#map")) {
plugin->map = (LV2_URID_Map*)features[i]->data;
+ } else if (!strcmp(features[i]->URI, LV2_URID_URI "#unmap")) {
+ unmap = (LV2_URID_Unmap*)features[i]->data;
}
}
+ plugin->world = new Ingen::Shared::World(
+ plugin->conf, plugin->argc, plugin->argv, plugin->map, unmap);
+ if (!plugin->world->load_module("serialisation")) {
+ delete plugin->world;
+ return NULL;
+ }
+
SharedPtr<Server::Engine> engine(new Server::Engine(plugin->world));
plugin->world->set_local_engine(engine);
plugin->main = new MainThread(engine);
diff --git a/src/server/internals/Controller.cpp b/src/server/internals/Controller.cpp
index f29951c8..e93d5f27 100644
--- a/src/server/internals/Controller.cpp
+++ b/src/server/internals/Controller.cpp
@@ -16,9 +16,11 @@
*/
#include <math.h>
-#include "raul/midi_events.h"
+
#include "ingen/shared/LV2URIMap.hpp"
+#include "ingen/shared/URIs.hpp"
#include "internals/Controller.hpp"
+#include "raul/midi_events.h"
#include "AudioBuffer.hpp"
#include "EventBuffer.hpp"
diff --git a/src/server/internals/Delay.cpp b/src/server/internals/Delay.cpp
index e3be103a..21cc23d5 100644
--- a/src/server/internals/Delay.cpp
+++ b/src/server/internals/Delay.cpp
@@ -17,11 +17,14 @@
#include <cmath>
#include <limits.h>
-#include "raul/log.hpp"
+
+#include "ingen/shared/LV2URIMap.hpp"
+#include "ingen/shared/URIs.hpp"
#include "raul/Array.hpp"
#include "raul/Maid.hpp"
+#include "raul/log.hpp"
#include "raul/midi_events.h"
-#include "ingen/shared/LV2URIMap.hpp"
+
#include "internals/Delay.hpp"
#include "AudioBuffer.hpp"
#include "Driver.hpp"
diff --git a/src/server/internals/Note.cpp b/src/server/internals/Note.cpp
index fc88038b..a44c0c36 100644
--- a/src/server/internals/Note.cpp
+++ b/src/server/internals/Note.cpp
@@ -16,11 +16,14 @@
*/
#include <cmath>
-#include "raul/log.hpp"
+
+#include "ingen/shared/LV2URIMap.hpp"
+#include "ingen/shared/URIs.hpp"
#include "raul/Array.hpp"
#include "raul/Maid.hpp"
+#include "raul/log.hpp"
#include "raul/midi_events.h"
-#include "ingen/shared/LV2URIMap.hpp"
+
#include "internals/Note.hpp"
#include "AudioBuffer.hpp"
#include "Driver.hpp"
diff --git a/src/server/internals/Trigger.cpp b/src/server/internals/Trigger.cpp
index ccab41f2..885144fe 100644
--- a/src/server/internals/Trigger.cpp
+++ b/src/server/internals/Trigger.cpp
@@ -16,18 +16,21 @@
*/
#include <cmath>
+
+#include "ingen/shared/LV2URIMap.hpp"
+#include "ingen/shared/URIs.hpp"
#include "raul/log.hpp"
#include "raul/midi_events.h"
-#include "ingen/shared/LV2URIMap.hpp"
-#include "internals/Trigger.hpp"
+
#include "AudioBuffer.hpp"
#include "EventBuffer.hpp"
#include "InputPort.hpp"
#include "InternalPlugin.hpp"
#include "OutputPort.hpp"
#include "ProcessContext.hpp"
-#include "util.hpp"
#include "ingen_config.h"
+#include "internals/Trigger.hpp"
+#include "util.hpp"
#define LOG(s) s << "[TriggerNode] "