1.1 --- a/DJMFix.h Fri Dec 18 20:13:05 2020 +0100
1.2 +++ b/DJMFix.h Fri Dec 18 21:35:36 2020 +0100
1.3 @@ -14,3 +14,24 @@
1.4 * You should have received a copy of the GNU General Public License
1.5 * along with this program. If not, see <http://www.gnu.org/licenses/>.
1.6 */
1.7 +#pragma once
1.8 +
1.9 +#include <vector>
1.10 +#include <functional>
1.11 +
1.12 +namespace djmfix {
1.13 +
1.14 +using MidiMessage = std::vector<uint8_t>;
1.15 +using MidiSender = std::function<void(MidiMessage) >;
1.16 +
1.17 +class DJMFix {
1.18 +public:
1.19 + virtual ~DJMFix() = default;
1.20 + virtual void receive(MidiMessage midiMessage) = 0;
1.21 + virtual void start() = 0;
1.22 + virtual void stop() = 0;
1.23 +};
1.24 +
1.25 +DJMFix* create(MidiSender midiSender);
1.26 +
1.27 +}