summaryrefslogtreecommitdiffstats
path: root/src/Driver.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/Driver.hpp')
-rw-r--r--src/Driver.hpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/Driver.hpp b/src/Driver.hpp
index d40f7b5..d85e5bc 100644
--- a/src/Driver.hpp
+++ b/src/Driver.hpp
@@ -22,6 +22,7 @@
#include <sigc++/sigc++.h>
#include <functional>
+#include <utility>
class Patchage;
@@ -31,7 +32,9 @@ class Driver
public:
using EventSink = std::function<void(const PatchageEvent&)>;
- Driver() = default;
+ explicit Driver(EventSink emit_event)
+ : _emit_event{std::move(emit_event)}
+ {}
Driver(const Driver&) = delete;
Driver& operator=(const Driver&) = delete;
@@ -41,8 +44,6 @@ public:
virtual ~Driver() = default;
- virtual void process_events(Patchage* app) = 0;
-
virtual void attach(bool launch_daemon) = 0;
virtual void detach() = 0;
virtual bool is_attached() const = 0;
@@ -54,6 +55,9 @@ public:
sigc::signal<void> signal_attached;
sigc::signal<void> signal_detached;
+
+protected:
+ EventSink _emit_event;
};
#endif // PATCHAGE_DRIVER_HPP