27#ifndef JACK_MIDI_DRIVER_H
28#define JACK_MIDI_DRIVER_H
33#if defined(H2CORE_HAVE_JACK) || _DOXYGEN_
38#include <jack/midiport.h>
39#include <jack/ringbuffer.h>
44#define JACK_MIDI_BUFFER_MAX 64
57 virtual void open()
override;
58 virtual void close()
override;
62 void getPortInfo(
const QString& sPortName,
int& nClient,
int& nPort );
#define JACK_MIDI_BUFFER_MAX
virtual ~JackMidiDriver()
void JackMidiOutEvent(uint8_t *buf, uint8_t len)
jack_port_t * output_port
void getPortInfo(const QString &sPortName, int &nClient, int &nPort)
virtual void open() override
void JackMidiWrite(jack_nframes_t nframes)
void JackMidiRead(jack_nframes_t nframes)
uint8_t jack_buffer[JACK_MIDI_BUFFER_MAX *4]
virtual std::vector< QString > getInputPortList() override
virtual void close() override
virtual void handleQueueNoteOff(int channel, int key, int velocity) override
virtual std::vector< QString > getOutputPortList() override
virtual void handleQueueAllNoteOff() override
virtual void handleOutgoingControlChange(int param, int value, int channel) override
jack_client_t * jack_client
virtual void handleQueueNote(Note *pNote) override
A note plays an associated instrument with a velocity left and right pan.