summaryrefslogtreecommitdiffstats
path: root/src/client/OSCEngineSender.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/client/OSCEngineSender.cpp')
-rw-r--r--src/client/OSCEngineSender.cpp13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/client/OSCEngineSender.cpp b/src/client/OSCEngineSender.cpp
index 3bc872f7..775dd047 100644
--- a/src/client/OSCEngineSender.cpp
+++ b/src/client/OSCEngineSender.cpp
@@ -80,14 +80,13 @@ OSCEngineSender::attach(int32_t ping_id, bool block)
/** Register with the engine via OSC.
*
- * Note that this does not actually use 'key', since the engine creates
+ * Note that this does not actually use 'client', since the engine creates
* it's own key for OSC clients (namely the incoming URL), for NAT
* traversal. It is a parameter to remain compatible with EngineInterface.
*/
void
OSCEngineSender::register_client(Shared::ClientInterface* client)
{
- // FIXME: use parameters.. er, somehow.
send("/ingen/register_client", "i", next_id(), LO_ARGS_END, LO_ARGS_END);
}
@@ -136,7 +135,15 @@ void
OSCEngineSender::put(const Raul::URI& path,
const Shared::Resource::Properties& properties)
{
- cerr << "OSC ENGINE PUT " << path << endl;
+ typedef Shared::Resource::Properties::const_iterator iterator;
+ lo_message m = lo_message_new();
+ lo_message_add_int32(m, next_id());
+ lo_message_add_string(m, path.c_str());
+ for (iterator i = properties.begin(); i != properties.end(); ++i) {
+ lo_message_add_string(m, i->first.c_str());
+ Raul::AtomLiblo::lo_message_add_atom(m, i->second);
+ }
+ send_message("/ingen/put", m);
}