--- a/DJMFix.h Fri Dec 18 21:35:36 2020 +0100
+++ b/DJMFix.h Fri Dec 18 23:19:32 2020 +0100
@@ -17,21 +17,26 @@
#pragma once
#include <vector>
-#include <functional>
namespace djmfix {
using MidiMessage = std::vector<uint8_t>;
-using MidiSender = std::function<void(MidiMessage) >;
+
+class MidiSender {
+public:
+ virtual ~MidiSender() = default;
+ virtual void send(MidiMessage midiMessage) = 0;
+};
class DJMFix {
public:
virtual ~DJMFix() = default;
+ virtual void setMidiSender(MidiSender* midiSender) = 0;
virtual void receive(MidiMessage midiMessage) = 0;
virtual void start() = 0;
virtual void stop() = 0;
};
-DJMFix* create(MidiSender midiSender);
+DJMFix* create();
}