diff options
Diffstat (limited to 'src/server/Event.hpp')
-rw-r--r-- | src/server/Event.hpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/server/Event.hpp b/src/server/Event.hpp index 11bffeb3..8ed25c0f 100644 --- a/src/server/Event.hpp +++ b/src/server/Event.hpp @@ -56,6 +56,9 @@ public: /** Event mode to distinguish normal events from undo events. */ enum class Mode { NORMAL, UNDO, REDO }; + /** Execution mode for events that block and unblock preprocessing. */ + enum class Execution { NORMAL, BLOCK, UNBLOCK }; + /** Pre-process event before execution (non-realtime). */ virtual bool pre_process() = 0; @@ -86,6 +89,9 @@ public: /** Return the status (success or error code) of this event. */ Status status() const { return _status; } + /** Return the blocking behaviour of this event (after pre_process()) */ + virtual Execution get_execution() const { return Execution::NORMAL; } + /** Return undo mode of this event. */ Mode get_mode() const { return _mode; } |