summaryrefslogtreecommitdiffstats
path: root/src/server/PreProcessor.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/PreProcessor.hpp
parente74c6a3b388ded66fcc4cfb1fa5bece881b63113 (diff)
downloadingen-c8ae7295e911c62cf9dedf90187656937cc18cbb.tar.gz
ingen-c8ae7295e911c62cf9dedf90187656937cc18cbb.tar.bz2
ingen-c8ae7295e911c62cf9dedf90187656937cc18cbb.zip
Add undo support
Diffstat (limited to 'src/server/PreProcessor.hpp')
-rw-r--r--src/server/PreProcessor.hpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/server/PreProcessor.hpp b/src/server/PreProcessor.hpp
index 586d6dd8..9ef75473 100644
--- a/src/server/PreProcessor.hpp
+++ b/src/server/PreProcessor.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
@@ -26,6 +26,7 @@
namespace Ingen {
namespace Server {
+class Engine;
class Event;
class PostProcessor;
class ProcessContext;
@@ -33,7 +34,7 @@ class ProcessContext;
class PreProcessor
{
public:
- explicit PreProcessor();
+ explicit PreProcessor(Engine& engine);
~PreProcessor();
@@ -43,7 +44,7 @@ public:
/** Enqueue an event.
* This is safe to call from any non-realtime thread (it locks).
*/
- void event(Event* ev);
+ void event(Event* ev, Event::Mode mode);
/** Process events for a cycle.
* @return The number of events processed.
@@ -56,6 +57,7 @@ protected:
void run();
private:
+ Engine& _engine;
std::mutex _mutex;
Raul::Semaphore _sem;
std::atomic<Event*> _head;