diff options
author | David Robillard <d@drobilla.net> | 2008-11-16 05:34:01 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2008-11-16 05:34:01 +0000 |
commit | 0fd3c583e032a3cd5af877902d4561a45179a232 (patch) | |
tree | e6bc62875842fda0908f1aea3a51b67740825d71 /src/engine/HTTPClientSender.cpp | |
parent | 24d998447070dbfef3eaf7762dce7e97c3903801 (diff) | |
download | ingen-0fd3c583e032a3cd5af877902d4561a45179a232.tar.gz ingen-0fd3c583e032a3cd5af877902d4561a45179a232.tar.bz2 ingen-0fd3c583e032a3cd5af877902d4561a45179a232.zip |
Follow new object creation via HTTP (serialising/parsing RDF to communicate between client and engine).
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@1722 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/engine/HTTPClientSender.cpp')
-rw-r--r-- | src/engine/HTTPClientSender.cpp | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/src/engine/HTTPClientSender.cpp b/src/engine/HTTPClientSender.cpp index ec60cb44..413dfe7f 100644 --- a/src/engine/HTTPClientSender.cpp +++ b/src/engine/HTTPClientSender.cpp @@ -17,7 +17,10 @@ #include <string> #include "raul/Atom.hpp" +#include "serialisation/Serialiser.hpp" +#include "module/World.hpp" #include "HTTPClientSender.hpp" +#include "Engine.hpp" using namespace std; using namespace Raul; @@ -74,6 +77,7 @@ HTTPClientSender::destroy(const std::string& path) void HTTPClientSender::patch_cleared(const std::string& patch_path) { + send_chunk(string("<").append(patch_path).append("> ingen:empty true .")); //send("/ingen/patch_cleared", "s", patch_path.c_str(), LO_ARGS_END); } @@ -140,6 +144,20 @@ HTTPClientSender::activity(const std::string& path) //lo_send(_address, "/ingen/activity", "s", port_path.c_str(), LO_ARGS_END); } +static void null_deleter(const Shared::GraphObject*) {} + +void +HTTPClientSender::new_object(const Shared::GraphObject* object) +{ + SharedPtr<Serialisation::Serialiser> serialiser = _engine.world()->serialiser; + serialiser->start_to_string("/", ""); + // FIXME + boost::shared_ptr<Shared::GraphObject> obj((Shared::GraphObject*)object, null_deleter); + serialiser->serialise(obj); + string str = serialiser->finish(); + send_chunk(str); +} + void HTTPClientSender::new_plugin(const std::string& uri, @@ -159,7 +177,7 @@ HTTPClientSender::new_plugin(const std::string& uri, void HTTPClientSender::new_patch(const std::string& path, uint32_t poly) { - send_chunk(string("<").append(path).append("> a ingen:Patch")); + //send_chunk(string("<").append(path).append("> a ingen:Patch")); } |