9template <setting_t N,
class Callback = EmptySelectorCallback>
30 uint8_t program = match.
value;
34 DEBUGFN(F(
"Warning: Received Program Change to program 0x")
35 << hex << program << dec
36 << F(
", which is not smaller than the number of settings (")
#define BEGIN_CS_NAMESPACE
MatchingMIDIInputElement< MIDIMessageType::ProgramChange, Matcher > Parent
GenericProgramChangeSelector(Selectable< N > &selectable, const Callback &callback, MIDIChannelCable address)
void begin() override
Initialize this updatable.
void handleUpdate(typename Matcher::Result match) override
void reset() override
Reset the input element to its initial state.
void set(setting_t newSetting)
Select the given selection.
Selectable< N > & selectable
void begin() override
Initialize this updatable.
void reset()
Reset the selection to the initial selection.
A class for saving a MIDI channel and cable number.
Selector that listens for MIDI Program Change events on a given MIDI Channel, and uses the program nu...
ProgramChangeSelector(Selectable< N > &selectable, MIDIChannelCable address)
#define DEBUGFN(x)
Print an expression and its function (function name and line number) to the debug output if debugging...
Matcher for MIDI messages with 1 data byte, such as Channel Pressure and Program Change.