summaryrefslogtreecommitdiffstats
path: root/src/engine/HTTPClientSender.cpp
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2008-11-16 05:34:01 +0000
committerDavid Robillard <d@drobilla.net>2008-11-16 05:34:01 +0000
commit0fd3c583e032a3cd5af877902d4561a45179a232 (patch)
treee6bc62875842fda0908f1aea3a51b67740825d71 /src/engine/HTTPClientSender.cpp
parent24d998447070dbfef3eaf7762dce7e97c3903801 (diff)
downloadingen-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.cpp20
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"));
}