diff options
author | David Robillard <d@drobilla.net> | 2008-08-17 01:34:53 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2008-08-17 01:34:53 +0000 |
commit | 694b31089c8060fc6b908b146b12c0e340d004c7 (patch) | |
tree | 48b0e0195de5e7b297e65be15eda35639585ef8a /src/libs/client/SigClientInterface.hpp | |
parent | 3dc90cc95df35e5c786857336f22856c6373b00f (diff) | |
download | ingen-694b31089c8060fc6b908b146b12c0e340d004c7.tar.gz ingen-694b31089c8060fc6b908b146b12c0e340d004c7.tar.bz2 ingen-694b31089c8060fc6b908b146b12c0e340d004c7.zip |
Cloooser...
Bundling of OSC communication both ways (previous was just engine->client).
Factor out common OSC*Sender functionality (bundling stuff).
Fully type-safe and polyphony-aware port value setting/getting, from RDF through OSC through engine and back again.
git-svn-id: http://svn.drobilla.net/lad/ingen@1409 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/libs/client/SigClientInterface.hpp')
-rw-r--r-- | src/libs/client/SigClientInterface.hpp | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/src/libs/client/SigClientInterface.hpp b/src/libs/client/SigClientInterface.hpp index d1ea30f2..6463bf3a 100644 --- a/src/libs/client/SigClientInterface.hpp +++ b/src/libs/client/SigClientInterface.hpp @@ -42,6 +42,8 @@ class SigClientInterface : virtual public Ingen::Shared::ClientInterface, public public: SigClientInterface() : _enabled(true) {} + std::string uri() const { return "(internal)"; } + // Signal parameters match up directly with ClientInterface calls sigc::signal<void, int32_t> signal_response_ok; @@ -64,7 +66,8 @@ public: sigc::signal<void, string, string> signal_connection; sigc::signal<void, string, string> signal_disconnection; sigc::signal<void, string, string, Raul::Atom> signal_variable_change; - sigc::signal<void, string, float> signal_control_change; + sigc::signal<void, string, Raul::Atom> signal_port_value; + sigc::signal<void, string, uint32_t, Raul::Atom> signal_voice_value; sigc::signal<void, string> signal_port_activity; sigc::signal<void, string, uint32_t, uint32_t, string> signal_program_add; sigc::signal<void, string, uint32_t, uint32_t> signal_program_remove; @@ -143,8 +146,11 @@ protected: void set_variable(const string& path, const string& key, const Raul::Atom& value) { if (_enabled) signal_variable_change.emit(path, key, value); } - void control_change(const string& port_path, float value) - { if (_enabled) signal_control_change.emit(port_path, value); } + void set_port_value(const string& port_path, const Raul::Atom& value) + { if (_enabled) signal_port_value.emit(port_path, value); } + + void set_voice_value(const string& port_path, uint32_t voice, const Raul::Atom& value) + { if (_enabled) signal_voice_value.emit(port_path, voice, value); } void port_activity(const string& port_path) { if (_enabled) signal_port_activity.emit(port_path); } |