summaryrefslogtreecommitdiffstats
path: root/src/progs/ingenuity/Loader.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/progs/ingenuity/Loader.h')
-rw-r--r--src/progs/ingenuity/Loader.h19
1 files changed, 12 insertions, 7 deletions
diff --git a/src/progs/ingenuity/Loader.h b/src/progs/ingenuity/Loader.h
index 65d1fcfe..05f97dbb 100644
--- a/src/progs/ingenuity/Loader.h
+++ b/src/progs/ingenuity/Loader.h
@@ -20,6 +20,7 @@
#include <string>
#include <list>
#include <cassert>
+#include <boost/optional/optional.hpp>
#include "raul/Thread.h"
#include "raul/Slave.h"
#include "raul/Mutex.h"
@@ -28,6 +29,7 @@
#include "ObjectModel.h"
using std::string;
using std::list;
+using boost::optional;
namespace Ingen { namespace Client {
class Serializer;
@@ -57,16 +59,19 @@ public:
Serializer& serializer() const { return *_serializer; }
- void load_patch(const string& filename,
- const string& parent_path,
- const string& name,
- size_t poly,
- const MetadataMap& initial_data,
- bool merge = false);
+ // FIXME: there's a pattern here....
+ // (same core interface as Serializer)
+
+ void load_patch(bool merge,
+ const string& data_base_uri,
+ const Path& data_path,
+ MetadataMap engine_data,
+ optional<const Path&> engine_parent = optional<const Path&>(),
+ optional<const string&> engine_name = optional<const string&>(),
+ optional<size_t> engine_poly = optional<size_t>());
void save_patch(SharedPtr<PatchModel> model, const string& filename, bool recursive);
-
private:
void save_patch_event(SharedPtr<PatchModel> model, const string& filename, bool recursive);