summaryrefslogtreecommitdiffstats
path: root/src/serialisation/Serialiser.hpp
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2008-11-30 19:56:36 +0000
committerDavid Robillard <d@drobilla.net>2008-11-30 19:56:36 +0000
commit684a8fd8fd54a391662e72b1113ddbda14e66612 (patch)
treec1f8896711e45e4102f1968fde465199e7373fd1 /src/serialisation/Serialiser.hpp
parent56a392e69a378f28d25b6b66feb62e36125da20c (diff)
downloadingen-684a8fd8fd54a391662e72b1113ddbda14e66612.tar.gz
ingen-684a8fd8fd54a391662e72b1113ddbda14e66612.tar.bz2
ingen-684a8fd8fd54a391662e72b1113ddbda14e66612.zip
Some support for bundle saving.
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@1831 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/serialisation/Serialiser.hpp')
-rw-r--r--src/serialisation/Serialiser.hpp18
1 files changed, 17 insertions, 1 deletions
diff --git a/src/serialisation/Serialiser.hpp b/src/serialisation/Serialiser.hpp
index 4d33d771..6151bae2 100644
--- a/src/serialisation/Serialiser.hpp
+++ b/src/serialisation/Serialiser.hpp
@@ -58,7 +58,23 @@ class Serialiser
public:
Serialiser(Shared::World& world, SharedPtr<Shared::Store> store);
- void to_file(SharedPtr<GraphObject> object, const std::string& filename);
+ struct Record {
+ Record(SharedPtr<GraphObject> o, const std::string& u)
+ : object(o), uri(u)
+ {}
+
+ const SharedPtr<GraphObject> object;
+ const std::string uri;
+ };
+
+ typedef std::list<Record> Records;
+
+ void to_file(const Record& record);
+
+ void write_bundle(const Record& record);
+
+ void write_manifest(const std::string& bundle_uri,
+ const Records& records);
std::string to_string(SharedPtr<GraphObject> object,
const std::string& base_uri,