4#include <Settings/SettingsWrapper.hpp>
89 send(cn, CIN::SystemCommon2B, msg.
header, msg.
data1, 0);
92 send(cn, CIN::SystemCommon1B, msg.
header, 0, 0);
107 size_t length = msg.
length;
108 const uint8_t *data = msg.
data;
111 send(cn, CIN::SysExStartCont, data[0], data[1], data[2]);
116 case 3: send(cn, CIN::SysExEnd3B, data[0], data[1], data[2]);
break;
117 case 2: send(cn, CIN::SysExEnd2B, data[0], data[1], 0);
break;
118 case 1: send(cn, CIN::SysExEnd1B, data[0], 0, 0);
break;
128 send(cable, CIN::SysExStartCont, data[0], data[1], data[2]);
133 Cable cable, Send &send) {
143 Cable cn, Send &send) {
145 case 3: send(cn, CIN::SysExEnd3B, data[0], data[1], data[2]);
break;
146 case 2: send(cn, CIN::SysExEnd2B, data[0], data[1], 0);
break;
147 case 1: send(cn, CIN::SysExEnd1B, data[0], 0, 0);
break;
159 uint8_t c = cable.
getRaw();
160 uint16_t length = msg.
length;
161 const uint8_t *data = msg.
data;
209 else if (length == 3) {
MIDICodeIndexNumber
MIDI USB Code Index Numbers.
#define BEGIN_CS_NAMESPACE
A type-safe class for MIDI USB Cable numbers.
constexpr uint8_t getRaw() const
Get the cable as an integer.
A class for sending MIDI USB messages.
void sendChannelMessage(ChannelMessage, Send &&send)
Send a MIDI Channel message using the given sender.
void sendSysEx(SysExMessage, Send &&send)
Send a MIDI System Exclusive message using the given sender.
void sendSysExEnd(const uint8_t *data, uint16_t length, Cable cable, Send &send)
Send a SysExEnd USB packet.
void sendFullSysEx(SysExMessage, Send &&send)
Send a MIDI System Exclusive message using the given sender.
void sendSysExStartCont1(const uint8_t *data, Cable cable, Send &send)
Send a single SysEx starts or continues USB packet.
void sendSysCommonMessage(SysCommonMessage, Send &&send)
Send a MIDI System Common message using the given sender.
void sendSysExStartCont(const uint8_t *&data, uint16_t &length, Cable cable, Send &send)
Send as many SysEx starts or continues USB packets, such that the remaining length is 3,...
uint8_t storedSysExLength[16]
Number of remaining SysEx bytes stored.
void sendRealTimeMessage(RealTimeMessage, Send &&send)
Send a MIDI Real-Time message using the given sender.
uint8_t storedSysExData[16][3]
Stores remainder of outgoing SysEx chunks.
uint8_t data2
First MIDI data byte.
uint8_t header
MIDI status byte (message type and channel).
uint8_t data1
First MIDI data byte.
Cable cable
USB MIDI cable number;.
uint8_t getNumberOfDataBytes() const
Get the number of data bytes of this type of System Common message.
bool isFirstChunk() const