summaryrefslogtreecommitdiffstats
path: root/src/Driver.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/Driver.hpp')
-rw-r--r--src/Driver.hpp12
1 files changed, 4 insertions, 8 deletions
diff --git a/src/Driver.hpp b/src/Driver.hpp
index 116b29f..d40f7b5 100644
--- a/src/Driver.hpp
+++ b/src/Driver.hpp
@@ -21,16 +21,16 @@
#include <sigc++/sigc++.h>
-#include <string>
+#include <functional>
class Patchage;
-class PatchagePort;
-class PatchageCanvas;
/// Base class for drivers that handle system clients and ports
class Driver
{
public:
+ using EventSink = std::function<void(const PatchageEvent&)>;
+
Driver() = default;
Driver(const Driver&) = delete;
@@ -47,11 +47,7 @@ public:
virtual void detach() = 0;
virtual bool is_attached() const = 0;
- virtual void refresh() = 0;
- virtual void destroy_all() = 0;
-
- virtual PatchagePort*
- create_port_view(Patchage* patchage, const PortID& id) = 0;
+ virtual void refresh(const EventSink& sink) = 0;
virtual bool connect(PortID tail_id, PortID head_id) = 0;
virtual bool disconnect(PortID tail_id, PortID head_id) = 0;