summaryrefslogtreecommitdiffstats
path: root/src/libs/engine
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2007-05-04 03:59:38 +0000
committerDavid Robillard <d@drobilla.net>2007-05-04 03:59:38 +0000
commita96166710faf2447ed10194d1829db5564b0dff9 (patch)
tree4eb792fcceee17f188566fc6e6bee11e5a8c4336 /src/libs/engine
parentcf14d321e8f084f742b03e09c086d5ef30297492 (diff)
downloadingen-a96166710faf2447ed10194d1829db5564b0dff9.tar.gz
ingen-a96166710faf2447ed10194d1829db5564b0dff9.tar.bz2
ingen-a96166710faf2447ed10194d1829db5564b0dff9.zip
Made engine, serialisation, client library, and GUI all dynamically loaded modules.
Combined all executables into a single "ingen" program which can do everything. git-svn-id: http://svn.drobilla.net/lad/ingen@493 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/libs/engine')
-rw-r--r--src/libs/engine/ClientBroadcaster.h7
-rw-r--r--src/libs/engine/DirectResponder.h10
-rw-r--r--src/libs/engine/Engine.cpp22
-rw-r--r--src/libs/engine/Engine.h6
-rw-r--r--src/libs/engine/Event.h16
-rw-r--r--src/libs/engine/Makefile.am1
-rw-r--r--src/libs/engine/MidiBuffer.cpp2
-rw-r--r--src/libs/engine/OSCClientSender.cpp4
-rw-r--r--src/libs/engine/OSCEngineReceiver.cpp11
-rw-r--r--src/libs/engine/OSCEngineReceiver.h6
-rw-r--r--src/libs/engine/OSCResponder.h10
-rw-r--r--src/libs/engine/Patch.cpp2
-rw-r--r--src/libs/engine/QueuedEngineInterface.cpp7
-rw-r--r--src/libs/engine/QueuedEngineInterface.h8
-rw-r--r--src/libs/engine/QueuedEvent.h13
-rw-r--r--src/libs/engine/Responder.h73
-rw-r--r--src/libs/engine/engine.cpp54
-rw-r--r--src/libs/engine/engine.h13
-rw-r--r--src/libs/engine/events/AddNodeEvent.cpp6
-rw-r--r--src/libs/engine/events/AddNodeEvent.h4
-rw-r--r--src/libs/engine/events/AddPortEvent.cpp4
-rw-r--r--src/libs/engine/events/AddPortEvent.h2
-rw-r--r--src/libs/engine/events/AllNotesOffEvent.cpp6
-rw-r--r--src/libs/engine/events/AllNotesOffEvent.h4
-rw-r--r--src/libs/engine/events/ClearPatchEvent.cpp4
-rw-r--r--src/libs/engine/events/ClearPatchEvent.h2
-rw-r--r--src/libs/engine/events/ConnectionEvent.cpp4
-rw-r--r--src/libs/engine/events/ConnectionEvent.h2
-rw-r--r--src/libs/engine/events/CreatePatchEvent.cpp4
-rw-r--r--src/libs/engine/events/CreatePatchEvent.h2
-rw-r--r--src/libs/engine/events/DSSIConfigureEvent.cpp2
-rw-r--r--src/libs/engine/events/DSSIConfigureEvent.h2
-rw-r--r--src/libs/engine/events/DSSIControlEvent.cpp2
-rw-r--r--src/libs/engine/events/DSSIControlEvent.h2
-rw-r--r--src/libs/engine/events/DSSIProgramEvent.cpp2
-rw-r--r--src/libs/engine/events/DSSIProgramEvent.h2
-rw-r--r--src/libs/engine/events/DSSIUpdateEvent.cpp2
-rw-r--r--src/libs/engine/events/DSSIUpdateEvent.h2
-rw-r--r--src/libs/engine/events/DeactivateEvent.cpp4
-rw-r--r--src/libs/engine/events/DeactivateEvent.h2
-rw-r--r--src/libs/engine/events/DestroyEvent.cpp6
-rw-r--r--src/libs/engine/events/DestroyEvent.h4
-rw-r--r--src/libs/engine/events/DisablePatchEvent.cpp4
-rw-r--r--src/libs/engine/events/DisablePatchEvent.h2
-rw-r--r--src/libs/engine/events/DisconnectNodeEvent.cpp6
-rw-r--r--src/libs/engine/events/DisconnectNodeEvent.h2
-rw-r--r--src/libs/engine/events/DisconnectPortEvent.cpp6
-rw-r--r--src/libs/engine/events/DisconnectPortEvent.h2
-rw-r--r--src/libs/engine/events/DisconnectionEvent.cpp6
-rw-r--r--src/libs/engine/events/DisconnectionEvent.h4
-rw-r--r--src/libs/engine/events/EnablePatchEvent.cpp4
-rw-r--r--src/libs/engine/events/EnablePatchEvent.h2
-rw-r--r--src/libs/engine/events/LashRestoreDoneEvent.h2
-rw-r--r--src/libs/engine/events/LoadPluginsEvent.cpp4
-rw-r--r--src/libs/engine/events/LoadPluginsEvent.h2
-rw-r--r--src/libs/engine/events/MidiLearnEvent.cpp4
-rw-r--r--src/libs/engine/events/MidiLearnEvent.h4
-rw-r--r--src/libs/engine/events/NoteOffEvent.cpp6
-rw-r--r--src/libs/engine/events/NoteOffEvent.h4
-rw-r--r--src/libs/engine/events/NoteOnEvent.cpp6
-rw-r--r--src/libs/engine/events/NoteOnEvent.h4
-rw-r--r--src/libs/engine/events/PingQueuedEvent.h6
-rw-r--r--src/libs/engine/events/RegisterClientEvent.cpp4
-rw-r--r--src/libs/engine/events/RegisterClientEvent.h10
-rw-r--r--src/libs/engine/events/RenameEvent.cpp4
-rw-r--r--src/libs/engine/events/RenameEvent.h2
-rw-r--r--src/libs/engine/events/RequestAllObjectsEvent.cpp4
-rw-r--r--src/libs/engine/events/RequestAllObjectsEvent.h2
-rw-r--r--src/libs/engine/events/RequestMetadataEvent.cpp4
-rw-r--r--src/libs/engine/events/RequestMetadataEvent.h2
-rw-r--r--src/libs/engine/events/RequestObjectEvent.cpp4
-rw-r--r--src/libs/engine/events/RequestObjectEvent.h2
-rw-r--r--src/libs/engine/events/RequestPluginEvent.cpp4
-rw-r--r--src/libs/engine/events/RequestPluginEvent.h2
-rw-r--r--src/libs/engine/events/RequestPluginsEvent.cpp4
-rw-r--r--src/libs/engine/events/RequestPluginsEvent.h4
-rw-r--r--src/libs/engine/events/RequestPortValueEvent.cpp4
-rw-r--r--src/libs/engine/events/RequestPortValueEvent.h2
-rw-r--r--src/libs/engine/events/SetMetadataEvent.cpp4
-rw-r--r--src/libs/engine/events/SetMetadataEvent.h2
-rw-r--r--src/libs/engine/events/SetPortValueEvent.cpp6
-rw-r--r--src/libs/engine/events/SetPortValueEvent.h4
-rw-r--r--src/libs/engine/events/SetPortValueQueuedEvent.cpp6
-rw-r--r--src/libs/engine/events/SetPortValueQueuedEvent.h4
-rw-r--r--src/libs/engine/events/UnregisterClientEvent.cpp6
-rw-r--r--src/libs/engine/events/UnregisterClientEvent.h5
86 files changed, 255 insertions, 261 deletions
diff --git a/src/libs/engine/ClientBroadcaster.h b/src/libs/engine/ClientBroadcaster.h
index 8b6d4616..cef7b397 100644
--- a/src/libs/engine/ClientBroadcaster.h
+++ b/src/libs/engine/ClientBroadcaster.h
@@ -24,9 +24,9 @@
#include <list>
#include <lo/lo.h>
#include <pthread.h>
-#include "types.h"
-#include "interface/ClientInterface.h"
#include <raul/SharedPtr.h>
+#include "interface/ClientInterface.h"
+#include "types.h"
using std::list; using std::string; using std::pair;
@@ -37,8 +37,7 @@ class Port;
class Plugin;
class Patch;
class Connection;
-class Responder;
-namespace Shared { class ClientKey; }
+namespace Shared { class ClientKey; class Responder; }
using Shared::ClientKey;
using Shared::ClientInterface;
diff --git a/src/libs/engine/DirectResponder.h b/src/libs/engine/DirectResponder.h
index c9e50f76..79dc1f81 100644
--- a/src/libs/engine/DirectResponder.h
+++ b/src/libs/engine/DirectResponder.h
@@ -21,17 +21,17 @@
#include <raul/SharedPtr.h>
#include "interface/ClientInterface.h"
-#include "Responder.h"
+#include "interface/Responder.h"
namespace Ingen {
/** Responder for Direct clients (directly calls methods on a ClientInterface).
*/
-class DirectResponder : public Responder
+class DirectResponder : public Shared::Responder
{
public:
- DirectResponder(SharedPtr<ClientInterface> client, int32_t id)
+ DirectResponder(SharedPtr<Shared::ClientInterface> client, int32_t id)
: _client(client), _id(id)
{}
@@ -40,10 +40,10 @@ public:
void respond_ok() { _client->response(_id, true, ""); }
void respond_error(const string& msg) { _client->response(_id, false, msg); }
- SharedPtr<ClientInterface> client() { return _client; }
+ SharedPtr<Shared::ClientInterface> client() { return _client; }
private:
- SharedPtr<ClientInterface> _client;
+ SharedPtr<Shared::ClientInterface> _client;
int32_t _id;
};
diff --git a/src/libs/engine/Engine.cpp b/src/libs/engine/Engine.cpp
index d9481786..1d54aef6 100644
--- a/src/libs/engine/Engine.cpp
+++ b/src/libs/engine/Engine.cpp
@@ -111,12 +111,11 @@ Engine::main()
}
cout << "[Main] Done main loop." << endl;
+ _event_source->deactivate();
+
if (_activated)
deactivate();
- sleep(1);
- cout << "[Main] Exiting..." << endl;
-
return 0;
}
@@ -148,17 +147,24 @@ Engine::start_jack_driver()
void
-Engine::start_osc_driver(const std::string& port)
+Engine::start_osc_driver(int port)
{
_event_source = SharedPtr<EventSource>(new OSCEngineReceiver(
- *this, pre_processor_queue_size, port.c_str()));
+ *this, pre_processor_queue_size, port));
}
-void
-Engine::set_event_source(SharedPtr<EventSource> source)
+SharedPtr<QueuedEngineInterface>
+Engine::new_queued_interface()
{
- _event_source = source;
+ assert(!_event_source);
+
+ SharedPtr<QueuedEngineInterface> result(new QueuedEngineInterface(
+ *this, Ingen::event_queue_size, Ingen::event_queue_size));
+
+ _event_source = result;
+
+ return result;
}
diff --git a/src/libs/engine/Engine.h b/src/libs/engine/Engine.h
index e66e1125..ad4332ee 100644
--- a/src/libs/engine/Engine.h
+++ b/src/libs/engine/Engine.h
@@ -39,6 +39,7 @@ class EventSource;
class PostProcessor;
class Event;
class QueuedEvent;
+class QueuedEngineInterface;
class LashDriver;
class Driver;
@@ -64,8 +65,9 @@ public:
virtual void quit() { _quit_flag = true; }
virtual void start_jack_driver();
- virtual void start_osc_driver(const std::string& port);
- virtual void set_event_source(SharedPtr<EventSource> source);
+ virtual void start_osc_driver(int port);
+
+ virtual SharedPtr<QueuedEngineInterface> new_queued_interface();
virtual bool activate();
virtual void deactivate();
diff --git a/src/libs/engine/Event.h b/src/libs/engine/Event.h
index 9fd398e2..01b14abc 100644
--- a/src/libs/engine/Event.h
+++ b/src/libs/engine/Event.h
@@ -20,14 +20,16 @@
#include <cassert>
#include <raul/SharedPtr.h>
-#include "types.h"
#include <raul/Deletable.h>
-#include "Responder.h"
+#include "interface/Responder.h"
+#include "types.h"
#include "ThreadManager.h"
namespace Raul { class Path; }
using Raul::Path;
+using Ingen::Shared::Responder;
+
namespace Ingen {
class Engine;
@@ -73,17 +75,17 @@ public:
inline SampleCount time() { return _time; }
protected:
- Event(Engine& engine, SharedPtr<Responder> responder, FrameTime time)
+ Event(Engine& engine, SharedPtr<Shared::Responder> responder, FrameTime time)
: _engine(engine)
, _responder(responder)
, _time(time)
, _executed(false)
{}
- Engine& _engine;
- SharedPtr<Responder> _responder;
- FrameTime _time;
- bool _executed;
+ Engine& _engine;
+ SharedPtr<Shared::Responder> _responder;
+ FrameTime _time;
+ bool _executed;
};
diff --git a/src/libs/engine/Makefile.am b/src/libs/engine/Makefile.am
index 5529898d..d11609b9 100644
--- a/src/libs/engine/Makefile.am
+++ b/src/libs/engine/Makefile.am
@@ -31,7 +31,6 @@ libingen_engine_la_SOURCES = \
JackAudioDriver.cpp \
OSCEngineReceiver.h \
OSCEngineReceiver.cpp \
- Responder.h \
DirectResponder.h \
OSCResponder.h \
OSCResponder.cpp \
diff --git a/src/libs/engine/MidiBuffer.cpp b/src/libs/engine/MidiBuffer.cpp
index 9842b28c..41feb3df 100644
--- a/src/libs/engine/MidiBuffer.cpp
+++ b/src/libs/engine/MidiBuffer.cpp
@@ -34,7 +34,7 @@ MidiBuffer::MidiBuffer(size_t capacity)
clear();
assert(_local_state.midi == _buf);
- cerr << "Creating MIDI Buffer " << _buf << ", capacity = " << _buf->capacity << endl;
+ //cerr << "Creating MIDI Buffer " << _buf << ", capacity = " << _buf->capacity << endl;
}
diff --git a/src/libs/engine/OSCClientSender.cpp b/src/libs/engine/OSCClientSender.cpp
index 763574d1..5565505b 100644
--- a/src/libs/engine/OSCClientSender.cpp
+++ b/src/libs/engine/OSCClientSender.cpp
@@ -19,6 +19,7 @@
#include <cassert>
#include <iostream>
#include <unistd.h>
+#include <raul/AtomLiblo.h>
#include "ObjectStore.h"
#include "NodeFactory.h"
#include "util.h"
@@ -29,8 +30,7 @@
#include "Connection.h"
#include "AudioDriver.h"
#include "interface/ClientInterface.h"
-#include "Responder.h"
-#include <raul/AtomLiblo.h>
+#include "interface/Responder.h"
using std::cout; using std::cerr; using std::endl;
namespace Ingen {
diff --git a/src/libs/engine/OSCEngineReceiver.cpp b/src/libs/engine/OSCEngineReceiver.cpp
index 1d835190..260721d4 100644
--- a/src/libs/engine/OSCEngineReceiver.cpp
+++ b/src/libs/engine/OSCEngineReceiver.cpp
@@ -48,14 +48,15 @@ using Shared::ClientKey;
*/
-OSCEngineReceiver::OSCEngineReceiver(Engine& engine, size_t queue_size, const char* const port)
-: EngineInterface(),
- QueuedEngineInterface(engine, queue_size, queue_size), // FIXME
- _port(port),
+OSCEngineReceiver::OSCEngineReceiver(Engine& engine, size_t queue_size, uint16_t port)
+: QueuedEngineInterface(engine, queue_size, queue_size), // FIXME
_server(NULL),
_osc_responder(SharedPtr<OSCResponder>())
{
- _server = lo_server_new(port, error_cb);
+ char port_str[6];
+ snprintf(port_str, 6, "%u", port);
+
+ _server = lo_server_new(port_str, error_cb);
if (_server == NULL) {
cerr << "[OSC] Could not start OSC server. Aborting." << endl;
diff --git a/src/libs/engine/OSCEngineReceiver.h b/src/libs/engine/OSCEngineReceiver.h
index 04448fdf..ba9d2544 100644
--- a/src/libs/engine/OSCEngineReceiver.h
+++ b/src/libs/engine/OSCEngineReceiver.h
@@ -20,6 +20,7 @@
#include "config.h"
#include <string>
+#include <stdint.h>
#include <lo/lo.h>
#include <raul/SharedPtr.h>
#include "QueuedEngineInterface.h"
@@ -61,7 +62,7 @@ inline static int name##_cb(LO_HANDLER_ARGS, void* myself)\
class OSCEngineReceiver : public QueuedEngineInterface
{
public:
- OSCEngineReceiver(Engine& engine, size_t queue_size, const char* const port);
+ OSCEngineReceiver(Engine& engine, size_t queue_size, uint16_t port);
~OSCEngineReceiver();
void activate();
@@ -114,8 +115,7 @@ private:
LO_HANDLER(dssi);
#endif
- const char* const _port;
- lo_server _server;
+ lo_server _server;
/** Cached OSC responder (for most recent incoming message) */
SharedPtr<OSCResponder> _osc_responder;
diff --git a/src/libs/engine/OSCResponder.h b/src/libs/engine/OSCResponder.h
index 11e5901c..41158c14 100644
--- a/src/libs/engine/OSCResponder.h
+++ b/src/libs/engine/OSCResponder.h
@@ -21,7 +21,7 @@
#include <inttypes.h>
#include <memory>
#include <lo/lo.h>
-#include "Responder.h"
+#include "interface/Responder.h"
namespace Ingen {
@@ -38,7 +38,7 @@ class ClientBroadcaster;
* Creation of the lo_address is deferred until needed to avoid bogging down
* the receiving thread as much as possible.
*/
-class OSCResponder : public Responder
+class OSCResponder : public Shared::Responder
{
public:
OSCResponder(ClientBroadcaster* broadcaster, int32_t id, char* url);
@@ -51,10 +51,10 @@ public:
const char* url() const { return _url; }
- ClientKey client_key() { return ClientKey(ClientKey::OSC_URL, _url); }
+ Shared::ClientKey client_key()
+ { return Shared::ClientKey(Shared::ClientKey::OSC_URL, _url); }
- SharedPtr<ClientInterface> client();
-
+ SharedPtr<Shared::ClientInterface> client();
private:
ClientBroadcaster* _broadcaster;
diff --git a/src/libs/engine/Patch.cpp b/src/libs/engine/Patch.cpp
index a81b9ee7..dad3431b 100644
--- a/src/libs/engine/Patch.cpp
+++ b/src/libs/engine/Patch.cpp
@@ -343,7 +343,7 @@ Patch::build_process_order() const
{
assert(ThreadManager::current_thread_id() == THREAD_PRE_PROCESS);
- cerr << "*********** Building process order for " << path() << endl;
+ //cerr << "*********** Building process order for " << path() << endl;
Raul::Array<Node*>* const process_order = new Raul::Array<Node*>(_nodes.size(), NULL);
diff --git a/src/libs/engine/QueuedEngineInterface.cpp b/src/libs/engine/QueuedEngineInterface.cpp
index b38692ea..8ee3851b 100644
--- a/src/libs/engine/QueuedEngineInterface.cpp
+++ b/src/libs/engine/QueuedEngineInterface.cpp
@@ -26,7 +26,7 @@ namespace Ingen {
QueuedEngineInterface::QueuedEngineInterface(Engine& engine, size_t queued_size, size_t stamped_size)
: QueuedEventSource(queued_size, stamped_size)
-, _responder(SharedPtr<Responder>(new Responder())) // NULL responder
+, _responder(SharedPtr<Shared::Responder>(new Shared::Responder())) // NULL responder
, _engine(engine)
{
}
@@ -47,7 +47,7 @@ QueuedEngineInterface::now() const
* Ownership of @a responder is taken.
*/
void
-QueuedEngineInterface::set_responder(SharedPtr<Responder> responder)
+QueuedEngineInterface::set_responder(SharedPtr<Shared::Responder> responder)
{
_responder = responder;
}
@@ -64,7 +64,7 @@ QueuedEngineInterface::set_next_response_id(int32_t id)
void
QueuedEngineInterface::disable_responses()
{
- static SharedPtr<Responder> null_responder(new Responder());
+ static SharedPtr<Shared::Responder> null_responder(new Shared::Responder());
//cerr << "DISABLE\n";
set_responder(null_responder);
}
@@ -93,7 +93,6 @@ void
QueuedEngineInterface::load_plugins()
{
push_queued(new LoadPluginsEvent(_engine, _responder, now()));
-
}
diff --git a/src/libs/engine/QueuedEngineInterface.h b/src/libs/engine/QueuedEngineInterface.h
index ddf293dc..0d2ba5d9 100644
--- a/src/libs/engine/QueuedEngineInterface.h
+++ b/src/libs/engine/QueuedEngineInterface.h
@@ -25,9 +25,9 @@
#include "interface/EngineInterface.h"
#include "interface/ClientInterface.h"
#include "interface/ClientKey.h"
+#include "interface/Responder.h"
#include "QueuedEventSource.h"
#include "Engine.h"
-#include "Responder.h"
using std::string;
namespace Ingen {
@@ -58,7 +58,7 @@ class Engine;
* events and get pushed directly into the realtime event queue. Should that
* be separated into a different interface/client?
*/
-class QueuedEngineInterface : public QueuedEventSource, public virtual EngineInterface
+class QueuedEngineInterface : public QueuedEventSource, public EngineInterface
{
public:
QueuedEngineInterface(Engine& engine, size_t queued_size, size_t stamped_size);
@@ -66,7 +66,7 @@ public:
void set_next_response_id(int32_t id);
- virtual void set_responder(SharedPtr<Responder> responder);
+ virtual void set_responder(SharedPtr<Shared::Responder> responder);
virtual void disable_responses();
// Client registration
@@ -156,7 +156,7 @@ public:
protected:
/** Where responses to current messages will go. */
- SharedPtr<Responder> _responder;
+ SharedPtr<Shared::Responder> _responder;
Engine& _engine;
diff --git a/src/libs/engine/QueuedEvent.h b/src/libs/engine/QueuedEvent.h
index ab987c13..f1b82735 100644
--- a/src/libs/engine/QueuedEvent.h
+++ b/src/libs/engine/QueuedEvent.h
@@ -22,7 +22,6 @@
namespace Ingen {
-class Responder;
class QueuedEventSource;
@@ -71,11 +70,11 @@ public:
bool is_prepared() { return _pre_processed; }
protected:
- QueuedEvent(Engine& engine,
- SharedPtr<Responder> responder,
- FrameTime time,
- bool blocking = false,
- QueuedEventSource* source = NULL)
+ QueuedEvent(Engine& engine,
+ SharedPtr<Shared::Responder> responder,
+ FrameTime time,
+ bool blocking = false,
+ QueuedEventSource* source = NULL)
: Event(engine, responder, time)
, _pre_processed(false), _blocking(blocking), _source(source)
{
@@ -85,7 +84,7 @@ protected:
// NULL event base (for internal events only!)
QueuedEvent(Engine& engine)
- : Event(engine, SharedPtr<Ingen::Responder>(), 0)
+ : Event(engine, SharedPtr<Shared::Responder>(), 0)
, _pre_processed(false), _blocking(false), _source(NULL)
{}
diff --git a/src/libs/engine/Responder.h b/src/libs/engine/Responder.h
deleted file mode 100644
index f111b02a..00000000
--- a/src/libs/engine/Responder.h
+++ /dev/null
@@ -1,73 +0,0 @@
-/* This file is part of Ingen.
- * Copyright (C) 2007 Dave Robillard <http://drobilla.net>
- *
- * Ingen is free software; you can redistribute it and/or modify it under the
- * terms of the GNU General Public License as published by the Free Software
- * Foundation; either version 2 of the License, or (at your option) any later
- * version.
- *
- * Ingen is distributed in the hope that it will be useful, but WITHOUT ANY
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
- * FOR A PARTICULAR PURPOSE. See the GNU General Public License for details.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program; if not, write to the Free Software Foundation, Inc.,
- * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef RESPONDER_H
-#define RESPONDER_H
-
-#include <inttypes.h>
-#include <string>
-#include <raul/SharedPtr.h>
-#include "interface/ClientKey.h"
-#include "interface/ClientInterface.h"
-using std::string;
-
-namespace Ingen {
-
-using Shared::ClientKey;
-using Shared::ClientInterface;
-
-
-/** Class to handle responding to clients.
- *
- * This is an abstract base class to fully abstract the details of client
- * communication from the internals of the engine.
- *
- * Note that this class only handles sending responses to commands from
- * clients, (ie OK or an error), <b>not</b> notifications (ie new node,
- * disconnection) - that's what ClientInterface is for. If a command is
- * a request, the ClientKey of the Responder can be used to find the
- * ClientInterface which should receive the response.
- *
- * ClientInterface and Responder are seperate because responding might not
- * actually get exposed to the client interface (eg in simulated blocking
- * interfaces that wait for responses before returning).
- *
- * Note for messages that have a "response" and some broadcasted effect
- * (eg setting a port value) the "response" MUST be sent first since Responder
- * is responsible for controlling whether the client wishes to receive the
- * notification.
- */
-class Responder
-{
-public:
- Responder() {}
- virtual ~Responder() {}
-
- virtual ClientKey client_key() { return ClientKey(); }
- virtual SharedPtr<ClientInterface> client() { return SharedPtr<ClientInterface>(); }
-
- virtual void set_id(int32_t id) {}
-
- virtual void respond_ok() {}
- virtual void respond_error(const string& msg) {}
-};
-
-
-} // namespace Ingen
-
-#endif // RESPONDER_H
-
diff --git a/src/libs/engine/engine.cpp b/src/libs/engine/engine.cpp
index a2ba26da..bb482e47 100644
--- a/src/libs/engine/engine.cpp
+++ b/src/libs/engine/engine.cpp
@@ -15,28 +15,74 @@
* 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/
+#include <raul/Process.h>
#include "engine.h"
#include "Engine.h"
#include "QueuedEngineInterface.h"
#include "tuning.h"
+#include "util.h"
namespace Ingen {
+/*
+void
+catch_int(int)
+{
+ signal(SIGINT, catch_int);
+ signal(SIGTERM, catch_int);
+
+ std::cout << "[Main] Ingen interrupted." << std::endl;
+ engine->quit();
+}
+*/
Engine*
new_engine()
{
+ set_denormal_flags();
return new Engine();
}
-QueuedEngineInterface*
-new_queued_engine_interface(Engine& engine)
+bool
+launch_osc_engine(int port)
{
- return new QueuedEngineInterface(engine,
- Ingen::event_queue_size, Ingen::event_queue_size);
+ char port_str[6];
+ snprintf(port_str, 6, "%u", port);
+ const string cmd = string("ingen -e --engine-port=").append(port_str);
+
+ if (Raul::Process::launch(cmd)) {
+ return true;
+ //return SharedPtr<EngineInterface>(new OSCEngineSender(
+ // string("osc.udp://localhost:").append(port_str)));
+ } else {
+ cerr << "Failed to launch engine process." << endl;
+ //return SharedPtr<EngineInterface>();
+ return false;
+ }
}
+/*
+void
+run(int port)
+{
+ signal(SIGINT, catch_int);
+ signal(SIGTERM, catch_int);
+
+ set_denormal_flags();
+
+ Engine* engine = new_engine();
+
+ engine->start_jack_driver();
+ engine->start_osc_driver(port);
+
+ engine->activate();
+
+ engine->main();
+
+ delete engine;
+}
+*/
} // namespace Ingen
diff --git a/src/libs/engine/engine.h b/src/libs/engine/engine.h
index aac69661..588ab047 100644
--- a/src/libs/engine/engine.h
+++ b/src/libs/engine/engine.h
@@ -21,13 +21,20 @@
namespace Ingen {
class Engine;
-class QueuedEngineInterface;
+namespace Shared { class EngineInterface; }
extern "C" {
- extern Engine* new_engine();
- extern QueuedEngineInterface* new_queued_interface(Engine& engine);
+ //void run(int argc, char** argv);
+
+ /** Create a new engine in this process */
+ Engine* new_engine();
+
+ /** Launch an OSC engine as a completely separate process
+ * \return true if successful
+ */
+ bool launch_osc_engine(int port);
}
diff --git a/src/libs/engine/events/AddNodeEvent.cpp b/src/libs/engine/events/AddNodeEvent.cpp
index 88efbb45..1ea2b596 100644
--- a/src/libs/engine/events/AddNodeEvent.cpp
+++ b/src/libs/engine/events/AddNodeEvent.cpp
@@ -16,7 +16,7 @@
*/
#include "AddNodeEvent.h"
-#include "Responder.h"
+#include "interface/Responder.h"
#include "Patch.h"
#include "Node.h"
#include "Tree.h"
@@ -34,7 +34,7 @@
namespace Ingen {
-AddNodeEvent::AddNodeEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& path,
+AddNodeEvent::AddNodeEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& path,
const string& plugin_uri, bool poly)
: QueuedEvent(engine, responder, timestamp),
_path(path),
@@ -52,7 +52,7 @@ AddNodeEvent::AddNodeEvent(Engine& engine, SharedPtr<Responder> responder, Sampl
*
* Do not use.
*/
-AddNodeEvent::AddNodeEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& path,
+AddNodeEvent::AddNodeEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& path,
const string& plugin_type, const string& plugin_lib, const string& plugin_label, bool poly)
: QueuedEvent(engine, responder, timestamp),
_path(path),
diff --git a/src/libs/engine/events/AddNodeEvent.h b/src/libs/engine/events/AddNodeEvent.h
index 7a88cd1c..68d518ae 100644
--- a/src/libs/engine/events/AddNodeEvent.h
+++ b/src/libs/engine/events/AddNodeEvent.h
@@ -41,7 +41,7 @@ class AddNodeEvent : public QueuedEvent
{
public:
AddNodeEvent(Engine& engine,
- SharedPtr<Responder> responder,
+ SharedPtr<Shared::Responder> responder,
SampleCount timestamp,
const string& node_path,
const string& plugin_uri,
@@ -49,7 +49,7 @@ public:
// DEPRECATED
AddNodeEvent(Engine& engine,
- SharedPtr<Responder> responder,
+ SharedPtr<Shared::Responder> responder,
SampleCount timestamp,
const string& node_path,
const string& plugin_type,
diff --git a/src/libs/engine/events/AddPortEvent.cpp b/src/libs/engine/events/AddPortEvent.cpp
index 1157d06a..b1925b07 100644
--- a/src/libs/engine/events/AddPortEvent.cpp
+++ b/src/libs/engine/events/AddPortEvent.cpp
@@ -16,7 +16,7 @@
*/
#include "AddPortEvent.h"
-#include "Responder.h"
+#include "interface/Responder.h"
#include "Patch.h"
#include "Tree.h"
#include "Plugin.h"
@@ -40,7 +40,7 @@ namespace Ingen {
AddPortEvent::AddPortEvent(Engine& engine,
- SharedPtr<Responder> responder,
+ SharedPtr<Shared::Responder> responder,
SampleCount timestamp,
const string& path,
const string& type,
diff --git a/src/libs/engine/events/AddPortEvent.h b/src/libs/engine/events/AddPortEvent.h
index 84302029..ed382286 100644
--- a/src/libs/engine/events/AddPortEvent.h
+++ b/src/libs/engine/events/AddPortEvent.h
@@ -42,7 +42,7 @@ class DriverPort;
class AddPortEvent : public QueuedEvent
{
public:
- AddPortEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& path, const string& type, bool is_output, QueuedEventSource* source);
+ AddPortEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& path, const string& type, bool is_output, QueuedEventSource* source);
void pre_process();
void execute(SampleCount nframes, FrameTime start, FrameTime end);
diff --git a/src/libs/engine/events/AllNotesOffEvent.cpp b/src/libs/engine/events/AllNotesOffEvent.cpp
index 6c87e52a..1b7a40e1 100644
--- a/src/libs/engine/events/AllNotesOffEvent.cpp
+++ b/src/libs/engine/events/AllNotesOffEvent.cpp
@@ -16,7 +16,7 @@
*/
#include "AllNotesOffEvent.h"
-#include "Responder.h"
+#include "interface/Responder.h"
#include "Engine.h"
#include "ObjectStore.h"
@@ -25,7 +25,7 @@ namespace Ingen {
/** Note off with patch explicitly passed - triggered by MIDI.
*/
-AllNotesOffEvent::AllNotesOffEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, Patch* patch)
+AllNotesOffEvent::AllNotesOffEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, Patch* patch)
: Event(engine, responder, timestamp),
_patch(patch)
{
@@ -34,7 +34,7 @@ AllNotesOffEvent::AllNotesOffEvent(Engine& engine, SharedPtr<Responder> responde
/** Note off event with lookup - triggered by OSC.
*/
-AllNotesOffEvent::AllNotesOffEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& patch_path)
+AllNotesOffEvent::AllNotesOffEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& patch_path)
: Event(engine, responder, timestamp),
_patch(NULL),
_patch_path(patch_path)
diff --git a/src/libs/engine/events/AllNotesOffEvent.h b/src/libs/engine/events/AllNotesOffEvent.h
index c4a0d3c2..299e9760 100644
--- a/src/libs/engine/events/AllNotesOffEvent.h
+++ b/src/libs/engine/events/AllNotesOffEvent.h
@@ -34,8 +34,8 @@ class Patch;
class AllNotesOffEvent : public Event
{
public:
- AllNotesOffEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, Patch* patch);
- AllNotesOffEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& patch_path);
+ AllNotesOffEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, Patch* patch);
+ AllNotesOffEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& patch_path);
void execute(SampleCount nframes, FrameTime start, FrameTime end);
void post_process();
diff --git a/src/libs/engine/events/ClearPatchEvent.cpp b/src/libs/engine/events/ClearPatchEvent.cpp
index e07ceb5c..44a23267 100644
--- a/src/libs/engine/events/ClearPatchEvent.cpp
+++ b/src/libs/engine/events/ClearPatchEvent.cpp
@@ -16,7 +16,7 @@
*/
#include "ClearPatchEvent.h"
-#include "Responder.h"
+#include "interface/Responder.h"
#include "Engine.h"
#include "Patch.h"
#include "ClientBroadcaster.h"
@@ -31,7 +31,7 @@
namespace Ingen {
-ClearPatchEvent::ClearPatchEvent(Engine& engine, SharedPtr<Responder> responder, FrameTime time, QueuedEventSource* source, const string& patch_path)
+ClearPatchEvent::ClearPatchEvent(Engine& engine, SharedPtr<Shared::Responder> responder, FrameTime time, QueuedEventSource* source, const string& patch_path)
: QueuedEvent(engine, responder, time, true, source),
_patch_path(patch_path),
_patch(NULL),
diff --git a/src/libs/engine/events/ClearPatchEvent.h b/src/libs/engine/events/ClearPatchEvent.h
index c3570518..21b227ca 100644
--- a/src/libs/engine/events/ClearPatchEvent.h
+++ b/src/libs/engine/events/ClearPatchEvent.h
@@ -36,7 +36,7 @@ class Patch;
class ClearPatchEvent : public QueuedEvent
{
public:
- ClearPatchEvent(Engine& engine, SharedPtr<Responder> responder, FrameTime time, QueuedEventSource* source, const string& patch_path);
+ ClearPatchEvent(Engine& engine, SharedPtr<Shared::Responder> responder, FrameTime time, QueuedEventSource* source, const string& patch_path);
void pre_process();
void execute(SampleCount nframes, FrameTime start, FrameTime end);
diff --git a/src/libs/engine/events/ConnectionEvent.cpp b/src/libs/engine/events/ConnectionEvent.cpp
index 7c4b4422..dc4033cc 100644
--- a/src/libs/engine/events/ConnectionEvent.cpp
+++ b/src/libs/engine/events/ConnectionEvent.cpp
@@ -19,7 +19,7 @@
#include <string>
#include <raul/Maid.h>
#include <raul/Path.h>
-#include "Responder.h"
+#include "interface/Responder.h"
#include "types.h"
#include "Engine.h"
#include "Connection.h"
@@ -34,7 +34,7 @@ using std::string;
namespace Ingen {
-ConnectionEvent::ConnectionEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& src_port_path, const string& dst_port_path)
+ConnectionEvent::ConnectionEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& src_port_path, const string& dst_port_path)
: QueuedEvent(engine, responder, timestamp),
_src_port_path(src_port_path),
_dst_port_path(dst_port_path),
diff --git a/src/libs/engine/events/ConnectionEvent.h b/src/libs/engine/events/ConnectionEvent.h
index 9565d79f..d294657b 100644
--- a/src/libs/engine/events/ConnectionEvent.h
+++ b/src/libs/engine/events/ConnectionEvent.h
@@ -48,7 +48,7 @@ class OutputPort;
class ConnectionEvent : public QueuedEvent
{
public:
- ConnectionEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& src_port_path, const string& dst_port_path);
+ ConnectionEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& src_port_path, const string& dst_port_path);
void pre_process();
void execute(SampleCount nframes, FrameTime start, FrameTime end);
diff --git a/src/libs/engine/events/CreatePatchEvent.cpp b/src/libs/engine/events/CreatePatchEvent.cpp
index 81d05368..f42b895e 100644
--- a/src/libs/engine/events/CreatePatchEvent.cpp
+++ b/src/libs/engine/events/CreatePatchEvent.cpp
@@ -16,7 +16,7 @@
*/
#include "CreatePatchEvent.h"
-#include "Responder.h"
+#include "interface/Responder.h"
#include "Patch.h"
#include "Node.h"
#include "Tree.h"
@@ -31,7 +31,7 @@
namespace Ingen {
-CreatePatchEvent::CreatePatchEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& path, int poly)
+CreatePatchEvent::CreatePatchEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& path, int poly)
: QueuedEvent(engine, responder, timestamp),
_path(path),
_patch(NULL),
diff --git a/src/libs/engine/events/CreatePatchEvent.h b/src/libs/engine/events/CreatePatchEvent.h
index dd492a33..c63fd566 100644
--- a/src/libs/engine/events/CreatePatchEvent.h
+++ b/src/libs/engine/events/CreatePatchEvent.h
@@ -41,7 +41,7 @@ class Plugin;
class CreatePatchEvent : public QueuedEvent
{
public:
- CreatePatchEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& path, int poly);
+ CreatePatchEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& path, int poly);
void pre_process();
void execute(SampleCount nframes, FrameTime start, FrameTime end);
diff --git a/src/libs/engine/events/DSSIConfigureEvent.cpp b/src/libs/engine/events/DSSIConfigureEvent.cpp
index d3847eb0..4f388558 100644
--- a/src/libs/engine/events/DSSIConfigureEvent.cpp
+++ b/src/libs/engine/events/DSSIConfigureEvent.cpp
@@ -25,7 +25,7 @@
namespace Ingen {
-DSSIConfigureEvent::DSSIConfigureEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& node_path, const string& key, const string& val)
+DSSIConfigureEvent::DSSIConfigureEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& node_path, const string& key, const string& val)
: QueuedEvent(engine, responder, timestamp),
_node_path(node_path),
_key(key),
diff --git a/src/libs/engine/events/DSSIConfigureEvent.h b/src/libs/engine/events/DSSIConfigureEvent.h
index f19c51b6..944f6239 100644
--- a/src/libs/engine/events/DSSIConfigureEvent.h
+++ b/src/libs/engine/events/DSSIConfigureEvent.h
@@ -31,7 +31,7 @@ namespace Ingen {
class DSSIConfigureEvent : public QueuedEvent
{
public:
- DSSIConfigureEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& node_path, const string& key, const string& val);
+ DSSIConfigureEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& node_path, const string& key, const string& val);
void pre_process();
void execute(SampleCount nframes, FrameTime start, FrameTime end);
diff --git a/src/libs/engine/events/DSSIControlEvent.cpp b/src/libs/engine/events/DSSIControlEvent.cpp
index 2a6caab6..94f504a7 100644
--- a/src/libs/engine/events/DSSIControlEvent.cpp
+++ b/src/libs/engine/events/DSSIControlEvent.cpp
@@ -24,7 +24,7 @@
namespace Ingen {
-DSSIControlEvent::DSSIControlEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& node_path, int port_num, Sample val)
+DSSIControlEvent::DSSIControlEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& node_path, int port_num, Sample val)
: QueuedEvent(engine, responder, timestamp),
_node_path(node_path),
_port_num(port_num),
diff --git a/src/libs/engine/events/DSSIControlEvent.h b/src/libs/engine/events/DSSIControlEvent.h
index 97d1c213..e6800bb2 100644
--- a/src/libs/engine/events/DSSIControlEvent.h
+++ b/src/libs/engine/events/DSSIControlEvent.h
@@ -33,7 +33,7 @@ namespace Ingen {
class DSSIControlEvent : public QueuedEvent
{
public:
- DSSIControlEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& node_path, int port_num, Sample val);
+ DSSIControlEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& node_path, int port_num, Sample val);
void pre_process();
void execute(SampleCount nframes, FrameTime start, FrameTime end);
diff --git a/src/libs/engine/events/DSSIProgramEvent.cpp b/src/libs/engine/events/DSSIProgramEvent.cpp
index 48195cb9..436ab2c6 100644
--- a/src/libs/engine/events/DSSIProgramEvent.cpp
+++ b/src/libs/engine/events/DSSIProgramEvent.cpp
@@ -29,7 +29,7 @@ using std::cout; using std::cerr; using std::endl;
namespace Ingen {
-DSSIProgramEvent::DSSIProgramEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& node_path, int bank, int program)
+DSSIProgramEvent::DSSIProgramEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& node_path, int bank, int program)
: QueuedEvent(engine, responder, timestamp),
_node_path(node_path),
_bank(bank),
diff --git a/src/libs/engine/events/DSSIProgramEvent.h b/src/libs/engine/events/DSSIProgramEvent.h
index 91946173..8acdea81 100644
--- a/src/libs/engine/events/DSSIProgramEvent.h
+++ b/src/libs/engine/events/DSSIProgramEvent.h
@@ -31,7 +31,7 @@ namespace Ingen {
class DSSIProgramEvent : public QueuedEvent
{
public:
- DSSIProgramEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& node_path, int bank, int program);
+ DSSIProgramEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& node_path, int bank, int program);
void pre_process();
void execute(SampleCount nframes, FrameTime start, FrameTime end);
diff --git a/src/libs/engine/events/DSSIUpdateEvent.cpp b/src/libs/engine/events/DSSIUpdateEvent.cpp
index e3a73260..5851e065 100644
--- a/src/libs/engine/events/DSSIUpdateEvent.cpp
+++ b/src/libs/engine/events/DSSIUpdateEvent.cpp
@@ -28,7 +28,7 @@ using std::cerr; using std::endl;
namespace Ingen {
-DSSIUpdateEvent::DSSIUpdateEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& path, const string& url)
+DSSIUpdateEvent::DSSIUpdateEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& path, const string& url)
: QueuedEvent(engine, responder, timestamp),
_path(path),
_url(url),
diff --git a/src/libs/engine/events/DSSIUpdateEvent.h b/src/libs/engine/events/DSSIUpdateEvent.h
index 3db562cb..8274bb71 100644
--- a/src/libs/engine/events/DSSIUpdateEvent.h
+++ b/src/libs/engine/events/DSSIUpdateEvent.h
@@ -37,7 +37,7 @@ class DSSINode;
class DSSIUpdateEvent : public QueuedEvent
{
public:
- DSSIUpdateEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& path, const string& url);
+ DSSIUpdateEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& path, const string& url);
void pre_process();
void execute(SampleCount nframes, FrameTime start, FrameTime end);
diff --git a/src/libs/engine/events/DeactivateEvent.cpp b/src/libs/engine/events/DeactivateEvent.cpp
index e93ec800..e6440570 100644
--- a/src/libs/engine/events/DeactivateEvent.cpp
+++ b/src/libs/engine/events/DeactivateEvent.cpp
@@ -16,13 +16,13 @@
*/
#include "DeactivateEvent.h"
-#include "Responder.h"
+#include "interface/Responder.h"
#include "Engine.h"
namespace Ingen {
-DeactivateEvent::DeactivateEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp)
+DeactivateEvent::DeactivateEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp)
: QueuedEvent(engine, responder, timestamp)
{
}
diff --git a/src/libs/engine/events/DeactivateEvent.h b/src/libs/engine/events/DeactivateEvent.h
index 82990b54..92276918 100644
--- a/src/libs/engine/events/DeactivateEvent.h
+++ b/src/libs/engine/events/DeactivateEvent.h
@@ -30,7 +30,7 @@ namespace Ingen {
class DeactivateEvent : public QueuedEvent
{
public:
- DeactivateEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp);
+ DeactivateEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp);
void pre_process();
void execute(SampleCount nframes, FrameTime start, FrameTime end);
diff --git a/src/libs/engine/events/DestroyEvent.cpp b/src/libs/engine/events/DestroyEvent.cpp
index c00306d8..ecccaa8a 100644
--- a/src/libs/engine/events/DestroyEvent.cpp
+++ b/src/libs/engine/events/DestroyEvent.cpp
@@ -16,7 +16,7 @@
*/
#include "DestroyEvent.h"
-#include "Responder.h"
+#include "interface/Responder.h"
#include "Engine.h"
#include "Patch.h"
#include "Tree.h"
@@ -37,7 +37,7 @@
namespace Ingen {
-DestroyEvent::DestroyEvent(Engine& engine, SharedPtr<Responder> responder, FrameTime time, QueuedEventSource* source, const string& path, bool block)
+DestroyEvent::DestroyEvent(Engine& engine, SharedPtr<Shared::Responder> responder, FrameTime time, QueuedEventSource* source, const string& path, bool block)
: QueuedEvent(engine, responder, time, source, source),
_path(path),
_object(NULL),
@@ -56,7 +56,7 @@ DestroyEvent::DestroyEvent(Engine& engine, SharedPtr<Responder> responder, Frame
}
-DestroyEvent::DestroyEvent(Engine& engine, SharedPtr<Responder> responder, FrameTime time, QueuedEventSource* source, Node* node, bool block)
+DestroyEvent::DestroyEvent(Engine& engine, SharedPtr<Shared::Responder> responder, FrameTime time, QueuedEventSource* source, Node* node, bool block)
: QueuedEvent(engine, responder, block, source),
_path(node->path()),
_object(node),
diff --git a/src/libs/engine/events/DestroyEvent.h b/src/libs/engine/events/DestroyEvent.h
index 435736aa..421a2dcd 100644
--- a/src/libs/engine/events/DestroyEvent.h
+++ b/src/libs/engine/events/DestroyEvent.h
@@ -50,8 +50,8 @@ class DisconnectPortEvent;
class DestroyEvent : public QueuedEvent
{
public:
- DestroyEvent(Engine& engine, SharedPtr<Responder> responder, FrameTime timestamp, QueuedEventSource* source, const string& path, bool block = true);
- DestroyEvent(Engine& engine, SharedPtr<Responder> responder, FrameTime timestamp, QueuedEventSource* source, Node* node, bool block = true);
+ DestroyEvent(Engine& engine, SharedPtr<Shared::Responder> responder, FrameTime timestamp, QueuedEventSource* source, const string& path, bool block = true);
+ DestroyEvent(Engine& engine, SharedPtr<Shared::Responder> responder, FrameTime timestamp, QueuedEventSource* source, Node* node, bool block = true);
~DestroyEvent();
void pre_process();
diff --git a/src/libs/engine/events/DisablePatchEvent.cpp b/src/libs/engine/events/DisablePatchEvent.cpp
index fa032528..ce78cf7e 100644
--- a/src/libs/engine/events/DisablePatchEvent.cpp
+++ b/src/libs/engine/events/DisablePatchEvent.cpp
@@ -16,7 +16,7 @@
*/
#include "DisablePatchEvent.h"
-#include "Responder.h"
+#include "interface/Responder.h"
#include "Engine.h"
#include "Patch.h"
#include "ClientBroadcaster.h"
@@ -27,7 +27,7 @@
namespace Ingen {
-DisablePatchEvent::DisablePatchEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& patch_path)
+DisablePatchEvent::DisablePatchEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& patch_path)
: QueuedEvent(engine, responder, timestamp),
_patch_path(patch_path),
_patch(NULL)
diff --git a/src/libs/engine/events/DisablePatchEvent.h b/src/libs/engine/events/DisablePatchEvent.h
index 8e6be5ea..1999ece0 100644
--- a/src/libs/engine/events/DisablePatchEvent.h
+++ b/src/libs/engine/events/DisablePatchEvent.h
@@ -35,7 +35,7 @@ class Patch;
class DisablePatchEvent : public QueuedEvent
{
public:
- DisablePatchEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& patch_path);
+ DisablePatchEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& patch_path);
void pre_process();
void execute(SampleCount nframes, FrameTime start, FrameTime end);
diff --git a/src/libs/engine/events/DisconnectNodeEvent.cpp b/src/libs/engine/events/DisconnectNodeEvent.cpp
index f304f0b1..bc97dff4 100644
--- a/src/libs/engine/events/DisconnectNodeEvent.cpp
+++ b/src/libs/engine/events/DisconnectNodeEvent.cpp
@@ -20,7 +20,7 @@
#include <raul/List.h>
#include <raul/Array.h>
#include <raul/Maid.h>
-#include "Responder.h"
+#include "interface/Responder.h"
#include "Engine.h"
#include "Node.h"
#include "Connection.h"
@@ -39,7 +39,7 @@ using std::cerr; using std::endl;
namespace Ingen {
-DisconnectNodeEvent::DisconnectNodeEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& node_path)
+DisconnectNodeEvent::DisconnectNodeEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& node_path)
: QueuedEvent(engine, responder, timestamp),
_node_path(node_path),
_patch(NULL),
@@ -99,7 +99,7 @@ DisconnectNodeEvent::pre_process()
for (ConnectionListIterator i = _patch->connections().begin(); i != _patch->connections().end(); ++i) {
c = (*i);
if ((c->src_port()->parent_node() == _node || c->dst_port()->parent_node() == _node) && !c->pending_disconnection()) {
- DisconnectionEvent* ev = new DisconnectionEvent(_engine, SharedPtr<Responder>(new Responder()), _time,
+ DisconnectionEvent* ev = new DisconnectionEvent(_engine, SharedPtr<Shared::Responder>(new Responder()), _time,
c->src_port(), c->dst_port());
ev->pre_process();
_disconnection_events.push_back(new Raul::ListNode<DisconnectionEvent*>(ev));
diff --git a/src/libs/engine/events/DisconnectNodeEvent.h b/src/libs/engine/events/DisconnectNodeEvent.h
index 270fa960..a70f9e8c 100644
--- a/src/libs/engine/events/DisconnectNodeEvent.h
+++ b/src/libs/engine/events/DisconnectNodeEvent.h
@@ -43,7 +43,7 @@ class OutputPort;
class DisconnectNodeEvent : public QueuedEvent
{
public:
- DisconnectNodeEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& node_path);
+ DisconnectNodeEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& node_path);
DisconnectNodeEvent(Engine& engine, Node* node);
~DisconnectNodeEvent();
diff --git a/src/libs/engine/events/DisconnectPortEvent.cpp b/src/libs/engine/events/DisconnectPortEvent.cpp
index 08266de6..1373d9b8 100644
--- a/src/libs/engine/events/DisconnectPortEvent.cpp
+++ b/src/libs/engine/events/DisconnectPortEvent.cpp
@@ -20,7 +20,7 @@
#include <raul/List.h>
#include <raul/Path.h>
#include <raul/Array.h>
-#include "Responder.h"
+#include "interface/Responder.h"
#include "Engine.h"
#include "Node.h"
#include "Connection.h"
@@ -39,7 +39,7 @@ using std::cerr; using std::endl;
namespace Ingen {
-DisconnectPortEvent::DisconnectPortEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& port_path)
+DisconnectPortEvent::DisconnectPortEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& port_path)
: QueuedEvent(engine, responder, timestamp),
_port_path(port_path),
_patch(NULL),
@@ -104,7 +104,7 @@ DisconnectPortEvent::pre_process()
for (Raul::List<Connection*>::const_iterator i = _patch->connections().begin(); i != _patch->connections().end(); ++i) {
c = (*i);
if ((c->src_port() == _port || c->dst_port() == _port) && !c->pending_disconnection()) {
- DisconnectionEvent* ev = new DisconnectionEvent(_engine, SharedPtr<Responder>(new Responder()), _time,
+ DisconnectionEvent* ev = new DisconnectionEvent(_engine, SharedPtr<Shared::Responder>(new Responder()), _time,
c->src_port(), c->dst_port());
ev->pre_process();
_disconnection_events.push_back(new Raul::ListNode<DisconnectionEvent*>(ev));
diff --git a/src/libs/engine/events/DisconnectPortEvent.h b/src/libs/engine/events/DisconnectPortEvent.h
index 089508ea..647ee1da 100644
--- a/src/libs/engine/events/DisconnectPortEvent.h
+++ b/src/libs/engine/events/DisconnectPortEvent.h
@@ -44,7 +44,7 @@ using std::string;
class DisconnectPortEvent : public QueuedEvent
{
public:
- DisconnectPortEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& port_path);
+ DisconnectPortEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& port_path);
DisconnectPortEvent(Engine& engine, Port* port);
~DisconnectPortEvent();
diff --git a/src/libs/engine/events/DisconnectionEvent.cpp b/src/libs/engine/events/DisconnectionEvent.cpp
index 7ac7e236..2fafb98e 100644
--- a/src/libs/engine/events/DisconnectionEvent.cpp
+++ b/src/libs/engine/events/DisconnectionEvent.cpp
@@ -19,7 +19,7 @@
#include <string>
#include <raul/Maid.h>
#include <raul/Path.h>
-#include "Responder.h"
+#include "interface/Responder.h"
#include "Engine.h"
#include "Connection.h"
#include "InputPort.h"
@@ -36,7 +36,7 @@ namespace Ingen {
//// DisconnectionEvent ////
-DisconnectionEvent::DisconnectionEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& src_port_path, const string& dst_port_path)
+DisconnectionEvent::DisconnectionEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& src_port_path, const string& dst_port_path)
: QueuedEvent(engine, responder, timestamp),
_src_port_path(src_port_path),
_dst_port_path(dst_port_path),
@@ -50,7 +50,7 @@ DisconnectionEvent::DisconnectionEvent(Engine& engine, SharedPtr<Responder> resp
}
-DisconnectionEvent::DisconnectionEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, Port* const src_port, Port* const dst_port)
+DisconnectionEvent::DisconnectionEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, Port* const src_port, Port* const dst_port)
: QueuedEvent(engine, responder, timestamp),
_src_port_path(src_port->path()),
_dst_port_path(dst_port->path()),
diff --git a/src/libs/engine/events/DisconnectionEvent.h b/src/libs/engine/events/DisconnectionEvent.h
index 3faeb23e..23f1526e 100644
--- a/src/libs/engine/events/DisconnectionEvent.h
+++ b/src/libs/engine/events/DisconnectionEvent.h
@@ -48,8 +48,8 @@ class OutputPort;
class DisconnectionEvent : public QueuedEvent
{
public:
- DisconnectionEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& src_port_path, const string& dst_port_path);
- DisconnectionEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, Port* const src_port, Port* const dst_port);
+ DisconnectionEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& src_port_path, const string& dst_port_path);
+ DisconnectionEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, Port* const src_port, Port* const dst_port);
void pre_process();
void execute(SampleCount nframes, FrameTime start, FrameTime end);
diff --git a/src/libs/engine/events/EnablePatchEvent.cpp b/src/libs/engine/events/EnablePatchEvent.cpp
index f1970f4d..74d4a52b 100644
--- a/src/libs/engine/events/EnablePatchEvent.cpp
+++ b/src/libs/engine/events/EnablePatchEvent.cpp
@@ -16,7 +16,7 @@
*/
#include "EnablePatchEvent.h"
-#include "Responder.h"
+#include "interface/Responder.h"
#include "Engine.h"
#include "Patch.h"
#include "util.h"
@@ -26,7 +26,7 @@
namespace Ingen {
-EnablePatchEvent::EnablePatchEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& patch_path)
+EnablePatchEvent::EnablePatchEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& patch_path)
: QueuedEvent(engine, responder, timestamp),
_patch_path(patch_path),
_patch(NULL),
diff --git a/src/libs/engine/events/EnablePatchEvent.h b/src/libs/engine/events/EnablePatchEvent.h
index 350c9f3e..c63c9db3 100644
--- a/src/libs/engine/events/EnablePatchEvent.h
+++ b/src/libs/engine/events/EnablePatchEvent.h
@@ -38,7 +38,7 @@ class Node;
class EnablePatchEvent : public QueuedEvent
{
public:
- EnablePatchEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& patch_path);
+ EnablePatchEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& patch_path);
void pre_process();
void execute(SampleCount nframes, FrameTime start, FrameTime end);
diff --git a/src/libs/engine/events/LashRestoreDoneEvent.h b/src/libs/engine/events/LashRestoreDoneEvent.h
index 8e45cb6b..fd33d813 100644
--- a/src/libs/engine/events/LashRestoreDoneEvent.h
+++ b/src/libs/engine/events/LashRestoreDoneEvent.h
@@ -40,7 +40,7 @@ class Port;
class LashRestoreDoneEvent : public QueuedEvent
{
public:
- LashRestoreDoneEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp) : QueuedEvent(engine, responder, timestamp) {}
+ LashRestoreDoneEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp) : QueuedEvent(engine, responder, timestamp) {}
void post_process()
{
diff --git a/src/libs/engine/events/LoadPluginsEvent.cpp b/src/libs/engine/events/LoadPluginsEvent.cpp
index 78461ff5..a126e3b2 100644
--- a/src/libs/engine/events/LoadPluginsEvent.cpp
+++ b/src/libs/engine/events/LoadPluginsEvent.cpp
@@ -16,7 +16,7 @@
*/
#include "LoadPluginsEvent.h"
-#include "Responder.h"
+#include "interface/Responder.h"
#include "Engine.h"
#include "NodeFactory.h"
#include "ClientBroadcaster.h"
@@ -27,7 +27,7 @@ using std::cerr;
namespace Ingen {
-LoadPluginsEvent::LoadPluginsEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp)
+LoadPluginsEvent::LoadPluginsEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp)
: QueuedEvent(engine, responder, timestamp)
{
}
diff --git a/src/libs/engine/events/LoadPluginsEvent.h b/src/libs/engine/events/LoadPluginsEvent.h
index 296904e6..b6de5e5c 100644
--- a/src/libs/engine/events/LoadPluginsEvent.h
+++ b/src/libs/engine/events/LoadPluginsEvent.h
@@ -33,7 +33,7 @@ class Plugin;
class LoadPluginsEvent : public QueuedEvent
{
public:
- LoadPluginsEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp);
+ LoadPluginsEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp);
void pre_process();
void post_process();
diff --git a/src/libs/engine/events/MidiLearnEvent.cpp b/src/libs/engine/events/MidiLearnEvent.cpp
index d00a0a9f..6204ed4a 100644
--- a/src/libs/engine/events/MidiLearnEvent.cpp
+++ b/src/libs/engine/events/MidiLearnEvent.cpp
@@ -16,7 +16,7 @@
*/
#include "MidiLearnEvent.h"
-#include "Responder.h"
+#include "interface/Responder.h"
#include "Engine.h"
#include "ObjectStore.h"
#include "Node.h"
@@ -38,7 +38,7 @@ MidiLearnResponseEvent::post_process()
// MidiLearnEvent
-MidiLearnEvent::MidiLearnEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& node_path)
+MidiLearnEvent::MidiLearnEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& node_path)
: QueuedEvent(engine, responder, timestamp),
_node_path(node_path),
_node(NULL),
diff --git a/src/libs/engine/events/MidiLearnEvent.h b/src/libs/engine/events/MidiLearnEvent.h
index ba11aadb..d28413c7 100644
--- a/src/libs/engine/events/MidiLearnEvent.h
+++ b/src/libs/engine/events/MidiLearnEvent.h
@@ -39,7 +39,7 @@ class MidiLearnResponseEvent : public Event
{
public:
MidiLearnResponseEvent(Engine& engine, const string& port_path, SampleCount timestamp)
- : Event(engine, SharedPtr<Responder>(), timestamp),
+ : Event(engine, SharedPtr<Shared::Responder>(), timestamp),
_port_path(port_path),
_value(0.0f)
{}
@@ -65,7 +65,7 @@ private:
class MidiLearnEvent : public QueuedEvent
{
public:
- MidiLearnEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& node_path);
+ MidiLearnEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& node_path);
void pre_process();
void execute(SampleCount nframes, FrameTime start, FrameTime end);
diff --git a/src/libs/engine/events/NoteOffEvent.cpp b/src/libs/engine/events/NoteOffEvent.cpp
index cd780bb2..cb081534 100644
--- a/src/libs/engine/events/NoteOffEvent.cpp
+++ b/src/libs/engine/events/NoteOffEvent.cpp
@@ -16,7 +16,7 @@
*/
#include "NoteOffEvent.h"
-#include "Responder.h"
+#include "interface/Responder.h"
#include "Engine.h"
#include "ObjectStore.h"
#include "Node.h"
@@ -28,7 +28,7 @@ namespace Ingen {
/** Note off with patch explicitly passed - triggered by MIDI.
*/
-NoteOffEvent::NoteOffEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, Node* node, uchar note_num)
+NoteOffEvent::NoteOffEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, Node* node, uchar note_num)
: Event(engine, responder, timestamp),
_node(node),
_note_num(note_num)
@@ -38,7 +38,7 @@ NoteOffEvent::NoteOffEvent(Engine& engine, SharedPtr<Responder> responder, Sampl
/** Note off event with lookup - triggered by OSC.
*/
-NoteOffEvent::NoteOffEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& node_path, uchar note_num)
+NoteOffEvent::NoteOffEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& node_path, uchar note_num)
: Event(engine, responder, timestamp),
_node(NULL),
_node_path(node_path),
diff --git a/src/libs/engine/events/NoteOffEvent.h b/src/libs/engine/events/NoteOffEvent.h
index a8a85c29..423ddcdc 100644
--- a/src/libs/engine/events/NoteOffEvent.h
+++ b/src/libs/engine/events/NoteOffEvent.h
@@ -35,8 +35,8 @@ class Node;
class NoteOffEvent : public Event
{
public:
- NoteOffEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, Node* node, uchar note_num);
- NoteOffEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& node_path, uchar note_num);
+ NoteOffEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, Node* node, uchar note_num);
+ NoteOffEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& node_path, uchar note_num);
void execute(SampleCount nframes, FrameTime start, FrameTime end);
void post_process();
diff --git a/src/libs/engine/events/NoteOnEvent.cpp b/src/libs/engine/events/NoteOnEvent.cpp
index 84482c0f..313dbccd 100644
--- a/src/libs/engine/events/NoteOnEvent.cpp
+++ b/src/libs/engine/events/NoteOnEvent.cpp
@@ -16,7 +16,7 @@
*/
#include "NoteOnEvent.h"
-#include "Responder.h"
+#include "interface/Responder.h"
#include "Engine.h"
#include "ObjectStore.h"
#include "Node.h"
@@ -31,7 +31,7 @@ namespace Ingen {
*
* Used to be triggered by MIDI. Not used anymore.
*/
-NoteOnEvent::NoteOnEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, Node* patch, uchar note_num, uchar velocity)
+NoteOnEvent::NoteOnEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, Node* patch, uchar note_num, uchar velocity)
: Event(engine, responder, timestamp),
_node(patch),
_note_num(note_num),
@@ -45,7 +45,7 @@ NoteOnEvent::NoteOnEvent(Engine& engine, SharedPtr<Responder> responder, SampleC
*
* Triggered by OSC.
*/
-NoteOnEvent::NoteOnEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& node_path, uchar note_num, uchar velocity)
+NoteOnEvent::NoteOnEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& node_path, uchar note_num, uchar velocity)
: Event(engine, responder, timestamp),
_node(NULL),
_node_path(node_path),
diff --git a/src/libs/engine/events/NoteOnEvent.h b/src/libs/engine/events/NoteOnEvent.h
index 12aea963..a3ee4210 100644
--- a/src/libs/engine/events/NoteOnEvent.h
+++ b/src/libs/engine/events/NoteOnEvent.h
@@ -35,8 +35,8 @@ class Node;
class NoteOnEvent : public Event
{
public:
- NoteOnEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, Node* patch, uchar note_num, uchar velocity);
- NoteOnEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& node_path, uchar note_num, uchar velocity);
+ NoteOnEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, Node* patch, uchar note_num, uchar velocity);
+ NoteOnEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& node_path, uchar note_num, uchar velocity);
void execute(SampleCount nframes, FrameTime start, FrameTime end);
void post_process();
diff --git a/src/libs/engine/events/PingQueuedEvent.h b/src/libs/engine/events/PingQueuedEvent.h
index 621fea27..3d331ccf 100644
--- a/src/libs/engine/events/PingQueuedEvent.h
+++ b/src/libs/engine/events/PingQueuedEvent.h
@@ -20,7 +20,7 @@
#include "QueuedEvent.h"
#include "types.h"
-#include "Responder.h"
+#include "interface/Responder.h"
namespace Ingen {
@@ -35,7 +35,9 @@ class Port;
class PingQueuedEvent : public QueuedEvent
{
public:
- PingQueuedEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp) : QueuedEvent(engine, responder, timestamp) {}
+ PingQueuedEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp)
+ : QueuedEvent(engine, responder, timestamp)
+ {}
void post_process() { _responder->respond_ok(); }
};
diff --git a/src/libs/engine/events/RegisterClientEvent.cpp b/src/libs/engine/events/RegisterClientEvent.cpp
index 0144ed97..3ba36cc7 100644
--- a/src/libs/engine/events/RegisterClientEvent.cpp
+++ b/src/libs/engine/events/RegisterClientEvent.cpp
@@ -15,15 +15,15 @@
* 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/
+#include "interface/Responder.h"
#include "RegisterClientEvent.h"
-#include "Responder.h"
#include "Engine.h"
#include "ClientBroadcaster.h"
namespace Ingen {
-RegisterClientEvent::RegisterClientEvent(Engine& engine, SharedPtr<Responder> responder,
+RegisterClientEvent::RegisterClientEvent(Engine& engine, SharedPtr<Shared::Responder> responder,
SampleCount timestamp,
ClientKey key,
SharedPtr<ClientInterface> client)
diff --git a/src/libs/engine/events/RegisterClientEvent.h b/src/libs/engine/events/RegisterClientEvent.h
index b1dabf2a..f32093a4 100644
--- a/src/libs/engine/events/RegisterClientEvent.h
+++ b/src/libs/engine/events/RegisterClientEvent.h
@@ -25,6 +25,7 @@
using std::string;
using Ingen::Shared::ClientInterface;
using Ingen::Shared::ClientKey;
+using Ingen::Shared::Responder;
namespace Ingen {
@@ -36,10 +37,11 @@ namespace Ingen {
class RegisterClientEvent : public QueuedEvent
{
public:
- RegisterClientEvent(Engine& engine, SharedPtr<Responder> responder,
- SampleCount timestamp,
- ClientKey key,
- SharedPtr<ClientInterface> client);
+ RegisterClientEvent(Engine& engine,
+ SharedPtr<Shared::Responder> responder,
+ SampleCount timestamp,
+ ClientKey key,
+ SharedPtr<ClientInterface> client);
void pre_process();
void post_process();
diff --git a/src/libs/engine/events/RenameEvent.cpp b/src/libs/engine/events/RenameEvent.cpp
index a833c42e..ac9082e6 100644
--- a/src/libs/engine/events/RenameEvent.cpp
+++ b/src/libs/engine/events/RenameEvent.cpp
@@ -16,7 +16,7 @@
*/
#include "RenameEvent.h"
-#include "Responder.h"
+#include "interface/Responder.h"
#include "Patch.h"
#include "Node.h"
#include "Tree.h"
@@ -28,7 +28,7 @@
namespace Ingen {
-RenameEvent::RenameEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& path, const string& name)
+RenameEvent::RenameEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& path, const string& name)
: QueuedEvent(engine, responder, timestamp),
_old_path(path),
_name(name),
diff --git a/src/libs/engine/events/RenameEvent.h b/src/libs/engine/events/RenameEvent.h
index 9cba840d..c0d1e538 100644
--- a/src/libs/engine/events/RenameEvent.h
+++ b/src/libs/engine/events/RenameEvent.h
@@ -44,7 +44,7 @@ class DisconnectPortEvent;
class RenameEvent : public QueuedEvent
{
public:
- RenameEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& path, const string& name);
+ RenameEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& path, const string& name);
~RenameEvent();
void pre_process();
diff --git a/src/libs/engine/events/RequestAllObjectsEvent.cpp b/src/libs/engine/events/RequestAllObjectsEvent.cpp
index 1a2a1243..ccf5a6a1 100644
--- a/src/libs/engine/events/RequestAllObjectsEvent.cpp
+++ b/src/libs/engine/events/RequestAllObjectsEvent.cpp
@@ -16,7 +16,7 @@
*/
#include "RequestAllObjectsEvent.h"
-#include "Responder.h"
+#include "interface/Responder.h"
#include "Engine.h"
#include "ObjectSender.h"
#include "ClientBroadcaster.h"
@@ -25,7 +25,7 @@
namespace Ingen {
-RequestAllObjectsEvent::RequestAllObjectsEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp)
+RequestAllObjectsEvent::RequestAllObjectsEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp)
: QueuedEvent(engine, responder, timestamp)
{
}
diff --git a/src/libs/engine/events/RequestAllObjectsEvent.h b/src/libs/engine/events/RequestAllObjectsEvent.h
index cb5eb60d..a0d10c49 100644
--- a/src/libs/engine/events/RequestAllObjectsEvent.h
+++ b/src/libs/engine/events/RequestAllObjectsEvent.h
@@ -36,7 +36,7 @@ namespace Shared {
class RequestAllObjectsEvent : public QueuedEvent
{
public:
- RequestAllObjectsEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp);
+ RequestAllObjectsEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp);
void pre_process();
void post_process();
diff --git a/src/libs/engine/events/RequestMetadataEvent.cpp b/src/libs/engine/events/RequestMetadataEvent.cpp
index 0722a19f..b2f189f6 100644
--- a/src/libs/engine/events/RequestMetadataEvent.cpp
+++ b/src/libs/engine/events/RequestMetadataEvent.cpp
@@ -17,7 +17,7 @@
#include "RequestMetadataEvent.h"
#include <string>
-#include "Responder.h"
+#include "interface/Responder.h"
#include "Engine.h"
#include "GraphObject.h"
#include "ObjectStore.h"
@@ -28,7 +28,7 @@ using std::string;
namespace Ingen {
-RequestMetadataEvent::RequestMetadataEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& node_path, const string& key)
+RequestMetadataEvent::RequestMetadataEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& node_path, const string& key)
: QueuedEvent(engine, responder, timestamp),
_path(node_path),
_key(key),
diff --git a/src/libs/engine/events/RequestMetadataEvent.h b/src/libs/engine/events/RequestMetadataEvent.h
index 497a94bf..45592e88 100644
--- a/src/libs/engine/events/RequestMetadataEvent.h
+++ b/src/libs/engine/events/RequestMetadataEvent.h
@@ -38,7 +38,7 @@ namespace Shared {
class RequestMetadataEvent : public QueuedEvent
{
public:
- RequestMetadataEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& path, const string& key);
+ RequestMetadataEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& path, const string& key);
void pre_process();
void post_process();
diff --git a/src/libs/engine/events/RequestObjectEvent.cpp b/src/libs/engine/events/RequestObjectEvent.cpp
index bd25f514..30ef6f85 100644
--- a/src/libs/engine/events/RequestObjectEvent.cpp
+++ b/src/libs/engine/events/RequestObjectEvent.cpp
@@ -18,7 +18,7 @@
#include "RequestObjectEvent.h"
#include <string>
#include "interface/ClientInterface.h"
-#include "Responder.h"
+#include "interface/Responder.h"
#include "Engine.h"
#include "ObjectStore.h"
#include "ClientBroadcaster.h"
@@ -32,7 +32,7 @@ using std::string;
namespace Ingen {
-RequestObjectEvent::RequestObjectEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& path)
+RequestObjectEvent::RequestObjectEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& path)
: QueuedEvent(engine, responder, timestamp),
_path(path),
_object(NULL)
diff --git a/src/libs/engine/events/RequestObjectEvent.h b/src/libs/engine/events/RequestObjectEvent.h
index 56b11cb5..b769aee3 100644
--- a/src/libs/engine/events/RequestObjectEvent.h
+++ b/src/libs/engine/events/RequestObjectEvent.h
@@ -38,7 +38,7 @@ using Shared::ClientInterface;
class RequestObjectEvent : public QueuedEvent
{
public:
- RequestObjectEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& port_path);
+ RequestObjectEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& port_path);
void pre_process();
void execute(SampleCount nframes, FrameTime start, FrameTime end);
diff --git a/src/libs/engine/events/RequestPluginEvent.cpp b/src/libs/engine/events/RequestPluginEvent.cpp
index 64a63aea..da70cd8c 100644
--- a/src/libs/engine/events/RequestPluginEvent.cpp
+++ b/src/libs/engine/events/RequestPluginEvent.cpp
@@ -18,7 +18,7 @@
#include "RequestPluginEvent.h"
#include <string>
#include "interface/ClientInterface.h"
-#include "Responder.h"
+#include "interface/Responder.h"
#include "Engine.h"
#include "Port.h"
#include "ObjectStore.h"
@@ -31,7 +31,7 @@ using std::string;
namespace Ingen {
-RequestPluginEvent::RequestPluginEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& uri)
+RequestPluginEvent::RequestPluginEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& uri)
: QueuedEvent(engine, responder, timestamp),
_uri(uri),
_plugin(NULL)
diff --git a/src/libs/engine/events/RequestPluginEvent.h b/src/libs/engine/events/RequestPluginEvent.h
index 17f1fd92..7047e2fa 100644
--- a/src/libs/engine/events/RequestPluginEvent.h
+++ b/src/libs/engine/events/RequestPluginEvent.h
@@ -38,7 +38,7 @@ using Shared::ClientInterface;
class RequestPluginEvent : public QueuedEvent
{
public:
- RequestPluginEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& uri);
+ RequestPluginEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& uri);
void pre_process();
void execute(SampleCount nframes, FrameTime start, FrameTime end);
diff --git a/src/libs/engine/events/RequestPluginsEvent.cpp b/src/libs/engine/events/RequestPluginsEvent.cpp
index a6e470b5..1d71b6fa 100644
--- a/src/libs/engine/events/RequestPluginsEvent.cpp
+++ b/src/libs/engine/events/RequestPluginsEvent.cpp
@@ -16,7 +16,7 @@
*/
#include "RequestPluginsEvent.h"
-#include "Responder.h"
+#include "interface/Responder.h"
#include "Engine.h"
#include "ClientBroadcaster.h"
#include "NodeFactory.h"
@@ -24,7 +24,7 @@
namespace Ingen {
-RequestPluginsEvent::RequestPluginsEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp)
+RequestPluginsEvent::RequestPluginsEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp)
: QueuedEvent(engine, responder, timestamp)
{
}
diff --git a/src/libs/engine/events/RequestPluginsEvent.h b/src/libs/engine/events/RequestPluginsEvent.h
index f43acbf5..3d795081 100644
--- a/src/libs/engine/events/RequestPluginsEvent.h
+++ b/src/libs/engine/events/RequestPluginsEvent.h
@@ -26,7 +26,7 @@ using std::string;
namespace Ingen {
class Plugin;
-class Responder;
+class Shared::Responder;
namespace Shared {
class ClientInterface;
} using Shared::ClientInterface;
@@ -39,7 +39,7 @@ namespace Shared {
class RequestPluginsEvent : public QueuedEvent
{
public:
- RequestPluginsEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp);
+ RequestPluginsEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp);
void pre_process();
void post_process();
diff --git a/src/libs/engine/events/RequestPortValueEvent.cpp b/src/libs/engine/events/RequestPortValueEvent.cpp
index 533cac38..79a7093a 100644
--- a/src/libs/engine/events/RequestPortValueEvent.cpp
+++ b/src/libs/engine/events/RequestPortValueEvent.cpp
@@ -18,7 +18,7 @@
#include "RequestPortValueEvent.h"
#include <string>
#include "interface/ClientInterface.h"
-#include "Responder.h"
+#include "interface/Responder.h"
#include "Engine.h"
#include "Port.h"
#include "ObjectStore.h"
@@ -30,7 +30,7 @@ using std::string;
namespace Ingen {
-RequestPortValueEvent::RequestPortValueEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& port_path)
+RequestPortValueEvent::RequestPortValueEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& port_path)
: QueuedEvent(engine, responder, timestamp),
_port_path(port_path),
_port(NULL),
diff --git a/src/libs/engine/events/RequestPortValueEvent.h b/src/libs/engine/events/RequestPortValueEvent.h
index 32b56691..87a6373c 100644
--- a/src/libs/engine/events/RequestPortValueEvent.h
+++ b/src/libs/engine/events/RequestPortValueEvent.h
@@ -38,7 +38,7 @@ using Shared::ClientInterface;
class RequestPortValueEvent : public QueuedEvent
{
public:
- RequestPortValueEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& port_path);
+ RequestPortValueEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& port_path);
void pre_process();
void execute(SampleCount nframes, FrameTime start, FrameTime end);
diff --git a/src/libs/engine/events/SetMetadataEvent.cpp b/src/libs/engine/events/SetMetadataEvent.cpp
index 63f28eb7..6d303915 100644
--- a/src/libs/engine/events/SetMetadataEvent.cpp
+++ b/src/libs/engine/events/SetMetadataEvent.cpp
@@ -17,7 +17,7 @@
#include "SetMetadataEvent.h"
#include <string>
-#include "Responder.h"
+#include "interface/Responder.h"
#include "Engine.h"
#include "ClientBroadcaster.h"
#include "GraphObject.h"
@@ -28,7 +28,7 @@ using std::string;
namespace Ingen {
-SetMetadataEvent::SetMetadataEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& path, const string& key, const Atom& value)
+SetMetadataEvent::SetMetadataEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& path, const string& key, const Atom& value)
: QueuedEvent(engine, responder, timestamp),
_path(path),
_key(key),
diff --git a/src/libs/engine/events/SetMetadataEvent.h b/src/libs/engine/events/SetMetadataEvent.h
index fae167a4..63a73a6d 100644
--- a/src/libs/engine/events/SetMetadataEvent.h
+++ b/src/libs/engine/events/SetMetadataEvent.h
@@ -36,7 +36,7 @@ class GraphObject;
class SetMetadataEvent : public QueuedEvent
{
public:
- SetMetadataEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& path, const string& key, const Raul::Atom& value);
+ SetMetadataEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& path, const string& key, const Raul::Atom& value);
void pre_process();
void execute(SampleCount nframes, FrameTime start, FrameTime end);
diff --git a/src/libs/engine/events/SetPortValueEvent.cpp b/src/libs/engine/events/SetPortValueEvent.cpp
index 5d8127e6..f78dca7f 100644
--- a/src/libs/engine/events/SetPortValueEvent.cpp
+++ b/src/libs/engine/events/SetPortValueEvent.cpp
@@ -15,8 +15,8 @@
* 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/
+#include "interface/Responder.h"
#include "SetPortValueEvent.h"
-#include "Responder.h"
#include "Engine.h"
#include "Port.h"
#include "ClientBroadcaster.h"
@@ -29,7 +29,7 @@ namespace Ingen {
/** Voice-specific control setting
*/
-SetPortValueEvent::SetPortValueEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, size_t voice_num, const string& port_path, Sample val)
+SetPortValueEvent::SetPortValueEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, size_t voice_num, const string& port_path, Sample val)
: Event(engine, responder, timestamp),
_voice_num(voice_num),
_port_path(port_path),
@@ -40,7 +40,7 @@ SetPortValueEvent::SetPortValueEvent(Engine& engine, SharedPtr<Responder> respon
}
-SetPortValueEvent::SetPortValueEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& port_path, Sample val)
+SetPortValueEvent::SetPortValueEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& port_path, Sample val)
: Event(engine, responder, timestamp),
_voice_num(-1),
_port_path(port_path),
diff --git a/src/libs/engine/events/SetPortValueEvent.h b/src/libs/engine/events/SetPortValueEvent.h
index 7425b71f..d5f5735f 100644
--- a/src/libs/engine/events/SetPortValueEvent.h
+++ b/src/libs/engine/events/SetPortValueEvent.h
@@ -35,8 +35,8 @@ class Port;
class SetPortValueEvent : public Event
{
public:
- SetPortValueEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& port_path, Sample val);
- SetPortValueEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, size_t voice_num, const string& port_path, Sample val);
+ SetPortValueEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& port_path, Sample val);
+ SetPortValueEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, size_t voice_num, const string& port_path, Sample val);
void execute(SampleCount nframes, FrameTime start, FrameTime end);
void post_process();
diff --git a/src/libs/engine/events/SetPortValueQueuedEvent.cpp b/src/libs/engine/events/SetPortValueQueuedEvent.cpp
index 1eaa33cb..d713ae8a 100644
--- a/src/libs/engine/events/SetPortValueQueuedEvent.cpp
+++ b/src/libs/engine/events/SetPortValueQueuedEvent.cpp
@@ -16,7 +16,7 @@
*/
#include "SetPortValueQueuedEvent.h"
-#include "Responder.h"
+#include "interface/Responder.h"
#include "Engine.h"
#include "Port.h"
#include "ClientBroadcaster.h"
@@ -30,7 +30,7 @@ namespace Ingen {
/** Voice-specific control setting
*/
-SetPortValueQueuedEvent::SetPortValueQueuedEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, size_t voice_num, const string& port_path, Sample val)
+SetPortValueQueuedEvent::SetPortValueQueuedEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, size_t voice_num, const string& port_path, Sample val)
: QueuedEvent(engine, responder, timestamp),
_voice_num(voice_num),
_port_path(port_path),
@@ -41,7 +41,7 @@ SetPortValueQueuedEvent::SetPortValueQueuedEvent(Engine& engine, SharedPtr<Respo
}
-SetPortValueQueuedEvent::SetPortValueQueuedEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& port_path, Sample val)
+SetPortValueQueuedEvent::SetPortValueQueuedEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& port_path, Sample val)
: QueuedEvent(engine, responder, timestamp),
_voice_num(-1),
_port_path(port_path),
diff --git a/src/libs/engine/events/SetPortValueQueuedEvent.h b/src/libs/engine/events/SetPortValueQueuedEvent.h
index 734bb00f..4cbebe0e 100644
--- a/src/libs/engine/events/SetPortValueQueuedEvent.h
+++ b/src/libs/engine/events/SetPortValueQueuedEvent.h
@@ -35,8 +35,8 @@ class Port;
class SetPortValueQueuedEvent : public QueuedEvent
{
public:
- SetPortValueQueuedEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& port_path, Sample val);
- SetPortValueQueuedEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, size_t voice_num, const string& port_path, Sample val);
+ SetPortValueQueuedEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, const string& port_path, Sample val);
+ SetPortValueQueuedEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, size_t voice_num, const string& port_path, Sample val);
void pre_process();
void execute(SampleCount nframes, FrameTime start, FrameTime end);
diff --git a/src/libs/engine/events/UnregisterClientEvent.cpp b/src/libs/engine/events/UnregisterClientEvent.cpp
index 216f63f8..4248fdcb 100644
--- a/src/libs/engine/events/UnregisterClientEvent.cpp
+++ b/src/libs/engine/events/UnregisterClientEvent.cpp
@@ -15,16 +15,16 @@
* 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/
+#include "interface/ClientInterface.h"
+#include "interface/Responder.h"
#include "UnregisterClientEvent.h"
-#include "Responder.h"
#include "Engine.h"
#include "ClientBroadcaster.h"
-#include "interface/ClientInterface.h"
namespace Ingen {
-UnregisterClientEvent::UnregisterClientEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, ClientKey key)
+UnregisterClientEvent::UnregisterClientEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp, ClientKey key)
: QueuedEvent(engine, responder, timestamp)
, _key(key)
{
diff --git a/src/libs/engine/events/UnregisterClientEvent.h b/src/libs/engine/events/UnregisterClientEvent.h
index cc3c0991..159bd160 100644
--- a/src/libs/engine/events/UnregisterClientEvent.h
+++ b/src/libs/engine/events/UnregisterClientEvent.h
@@ -40,7 +40,10 @@ using Shared::ClientKey;
class UnregisterClientEvent : public QueuedEvent
{
public:
- UnregisterClientEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, ClientKey key);
+ UnregisterClientEvent(Engine& engine,
+ SharedPtr<Shared::Responder> responder,
+ SampleCount timestamp,
+ ClientKey key);
void post_process();