#include <MIDI_Parsers/USBMIDI_Parser.hpp>
Parser for MIDI over USB packets.
Definition at line 28 of file USBMIDI_Parser.hpp.
Public Types | |
using | MIDIUSBPacket_t = AH::Array<uint8_t, 4> |
Public Member Functions | |
template<class BytePuller > | |
MIDIReadEvent | pull (BytePuller &&puller) |
Parse one incoming MIDI message. | |
SysExMessage | getSysExMessage () const |
Get the latest SysEx message. | |
ChannelMessage | getChannelMessage () const |
Get the latest MIDI channel voice message. | |
SysCommonMessage | getSysCommonMessage () const |
Get the latest MIDI system common message. | |
RealTimeMessage | getRealTimeMessage () const |
Get the latest MIDI real-time message. | |
Static Public Member Functions | |
static bool | isStatus (uint8_t data) |
Check if the given byte is a MIDI header/status byte. | |
static bool | isData (uint8_t data) |
Check if the given byte is a MIDI data byte. | |
Protected Attributes | |
Cable | activeCable = Cable_1 |
MIDIMessage | midimsg = {0x00, 0x00, 0x00} |
RealTimeMessage | rtmsg = {0x00} |
Private Attributes | |
SysExBuffer | sysexbuffers [16] = {} |
MIDIUSBPacket_t | storedPacket = {{ 0x00 }} |
using MIDIUSBPacket_t = AH::Array<uint8_t, 4> |
Definition at line 30 of file USBMIDI_Parser.hpp.
|
inline |
Parse one incoming MIDI message.
puller | The source of MIDI USB packets. |
MIDIReadEvent::NO_MESSAGE
if puller
ran out of packets before a complete message was parsed. Definition at line 107 of file USBMIDI_Parser.hpp.
|
protected |
Feed a new packet to the parser.
Definition at line 139 of file USBMIDI_Parser.cpp.
|
protected |
Resume the parser with the previously stored and unhandled packet.
Definition at line 175 of file USBMIDI_Parser.cpp.
|
inline |
Get the latest SysEx message.
Definition at line 52 of file USBMIDI_Parser.hpp.
|
protected |
Definition at line 6 of file USBMIDI_Parser.cpp.
|
protected |
Definition at line 131 of file USBMIDI_Parser.cpp.
|
protected |
Definition at line 15 of file USBMIDI_Parser.cpp.
|
protected |
Definition at line 46 of file USBMIDI_Parser.cpp.
|
protected |
Definition at line 121 of file USBMIDI_Parser.cpp.
|
inlineprotected |
Definition at line 71 of file USBMIDI_Parser.hpp.
|
inlineprotected |
Definition at line 72 of file USBMIDI_Parser.hpp.
|
inlineprotected |
Definition at line 76 of file USBMIDI_Parser.hpp.
|
inlineprotected |
Definition at line 77 of file USBMIDI_Parser.hpp.
|
inlineprotected |
Definition at line 80 of file USBMIDI_Parser.hpp.
|
inlineprotected |
Definition at line 83 of file USBMIDI_Parser.hpp.
|
inlineprotected |
Definition at line 86 of file USBMIDI_Parser.hpp.
|
inlineprotected |
Definition at line 90 of file USBMIDI_Parser.hpp.
|
inlineprotected |
Definition at line 91 of file USBMIDI_Parser.hpp.
|
inlineprotected |
Definition at line 92 of file USBMIDI_Parser.hpp.
|
protected |
Definition at line 83 of file USBMIDI_Parser.cpp.
|
inlineinherited |
Get the latest MIDI channel voice message.
Definition at line 19 of file MIDI_Parser.hpp.
|
inlineinherited |
Get the latest MIDI system common message.
Definition at line 21 of file MIDI_Parser.hpp.
|
inlineinherited |
Get the latest MIDI real-time message.
Definition at line 25 of file MIDI_Parser.hpp.
|
inlinestaticinherited |
Check if the given byte is a MIDI header/status byte.
Definition at line 37 of file MIDI_Parser.hpp.
|
inlinestaticinherited |
Check if the given byte is a MIDI data byte.
Definition at line 39 of file MIDI_Parser.hpp.
Definition at line 98 of file USBMIDI_Parser.hpp.
|
private |
Definition at line 101 of file USBMIDI_Parser.hpp.
|
private |
Definition at line 102 of file USBMIDI_Parser.hpp.
|
protectedinherited |
Definition at line 32 of file MIDI_Parser.hpp.
|
protectedinherited |
Definition at line 33 of file MIDI_Parser.hpp.