diff options
Diffstat (limited to 'src/libs/client')
-rw-r--r-- | src/libs/client/OSCEngineSender.cpp | 15 | ||||
-rw-r--r-- | src/libs/client/OSCEngineSender.hpp | 7 |
2 files changed, 16 insertions, 6 deletions
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 <iostream> #include "OSCEngineSender.hpp" -#include "interface/ClientKey.hpp" #include <raul/AtomLiblo.hpp> 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<ClientInterface> client) +OSCEngineSender::register_client(const string& uri, SharedPtr<ClientInterface> client) { // FIXME: use parameters.. er, somehow. assert(_engine_addr); @@ -117,7 +116,7 @@ OSCEngineSender::register_client(ClientKey key, SharedPtr<ClientInterface> 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<ClientInterface> client); - void unregister_client(ClientKey key); + void register_client(const string& uri, SharedPtr<ClientInterface> 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(); |