summaryrefslogtreecommitdiffstats
path: root/src/server/EventWriter.hpp
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2016-07-30 13:10:13 -0400
committerDavid Robillard <d@drobilla.net>2016-07-30 15:32:49 -0400
commitc8ae7295e911c62cf9dedf90187656937cc18cbb (patch)
tree0ba1207bf2c63278e9932eed2d04f961144a02db /src/server/EventWriter.hpp
parente74c6a3b388ded66fcc4cfb1fa5bece881b63113 (diff)
downloadingen-c8ae7295e911c62cf9dedf90187656937cc18cbb.tar.gz
ingen-c8ae7295e911c62cf9dedf90187656937cc18cbb.tar.bz2
ingen-c8ae7295e911c62cf9dedf90187656937cc18cbb.zip
Add undo support
Diffstat (limited to 'src/server/EventWriter.hpp')
-rw-r--r--src/server/EventWriter.hpp14
1 files changed, 11 insertions, 3 deletions
diff --git a/src/server/EventWriter.hpp b/src/server/EventWriter.hpp
index 15a144ef..7b9b920b 100644
--- a/src/server/EventWriter.hpp
+++ b/src/server/EventWriter.hpp
@@ -1,6 +1,6 @@
/*
This file is part of Ingen.
- Copyright 2007-2015 David Robillard <http://drobilla.net/>
+ Copyright 2007-2016 David Robillard <http://drobilla.net/>
Ingen is free software: you can redistribute it and/or modify it under the
terms of the GNU Affero General Public License as published by the Free
@@ -25,6 +25,7 @@
#include "ingen/Resource.hpp"
#include "ingen/types.hpp"
+#include "Event.hpp"
#include "types.hpp"
namespace Ingen {
@@ -52,9 +53,9 @@ public:
virtual void set_response_id(int32_t id);
- virtual void bundle_begin() {}
+ virtual void bundle_begin();
- virtual void bundle_end() {}
+ virtual void bundle_end();
virtual void put(const Raul::URI& path,
const Resource::Properties& properties,
@@ -85,16 +86,23 @@ public:
virtual void disconnect_all(const Raul::Path& graph,
const Raul::Path& path);
+ virtual void undo();
+
+ virtual void redo();
+
virtual void get(const Raul::URI& uri);
virtual void response(int32_t id, Status status, const std::string& subject) {} ///< N/A
virtual void error(const std::string& msg) {} ///< N/A
+ void set_event_mode(Event::Mode mode) { _event_mode = mode; }
+
protected:
Engine& _engine;
SPtr<Interface> _respondee;
int32_t _request_id;
+ Event::Mode _event_mode;
private:
SampleCount now() const;