From bac31a50f17608c514afce5ad014316cccde3d5a Mon Sep 17 00:00:00 2001 From: David Robillard Date: Tue, 24 Jul 2007 21:23:22 +0000 Subject: Scrapped ClientKey in favour of a URI string (towards a simpler closer-to-straight-C engine interface). Fixed client deregistration. Added metadata value requesting. git-svn-id: http://svn.drobilla.net/lad/ingen@614 a436a847-0d15-0410-975c-d299462d15a1 --- src/libs/client/OSCEngineSender.cpp | 15 ++++++++++++--- src/libs/client/OSCEngineSender.hpp | 7 ++++--- 2 files changed, 16 insertions(+), 6 deletions(-) (limited to 'src/libs/client') diff --git a/src/libs/client/OSCEngineSender.cpp b/src/libs/client/OSCEngineSender.cpp index 2e49eac3..988f2c5e 100644 --- a/src/libs/client/OSCEngineSender.cpp +++ b/src/libs/client/OSCEngineSender.cpp @@ -17,7 +17,6 @@ #include #include "OSCEngineSender.hpp" -#include "interface/ClientKey.hpp" #include using std::cout; using std::cerr; using std::endl; @@ -108,7 +107,7 @@ OSCEngineSender::attach(int32_t ping_id, bool block) * traversal. It is a parameter to remain compatible with EngineInterface. */ void -OSCEngineSender::register_client(ClientKey key, SharedPtr client) +OSCEngineSender::register_client(const string& uri, SharedPtr client) { // FIXME: use parameters.. er, somehow. assert(_engine_addr); @@ -117,7 +116,7 @@ OSCEngineSender::register_client(ClientKey key, SharedPtr clien void -OSCEngineSender::unregister_client(ClientKey key) +OSCEngineSender::unregister_client(const string& uri) { assert(_engine_addr); lo_send(_engine_addr, "/ingen/unregister_client", "i", next_id()); @@ -426,6 +425,16 @@ OSCEngineSender::request_port_value(const string& port_path) port_path.c_str()); } +void +OSCEngineSender::request_metadata(const string& object_path, const string& key) +{ + assert(_engine_addr); + lo_send(_engine_addr, "/ingen/request_metadata", "iss", + next_id(), + object_path.c_str(), + key.c_str()); +} + void OSCEngineSender::request_plugins() diff --git a/src/libs/client/OSCEngineSender.hpp b/src/libs/client/OSCEngineSender.hpp index c9b37ec8..ea804d59 100644 --- a/src/libs/client/OSCEngineSender.hpp +++ b/src/libs/client/OSCEngineSender.hpp @@ -26,7 +26,6 @@ using std::string; using Ingen::Shared::EngineInterface; using Ingen::Shared::ClientInterface; -using Ingen::Shared::ClientKey; using Ingen::Shared::Responder; namespace Ingen { @@ -62,8 +61,8 @@ public: /* *** EngineInterface implementation below here *** */ // Client registration - void register_client(ClientKey key, SharedPtr client); - void unregister_client(ClientKey key); + void register_client(const string& uri, SharedPtr client); + void unregister_client(const string& uri); // Engine commands @@ -140,6 +139,8 @@ public: void request_object(const string& path); void request_port_value(const string& port_path); + + void request_metadata(const string& path, const string& key); void request_plugins(); -- cgit v1.2.1