18template <MIDIMessageType Type>
89template <MIDIMessageType Type, u
int8_t BankSize>
91 Type, BankableTwoByteMIDIMatcher<BankSize>>,
143template <u
int8_t BankSize>
149template <u
int8_t BankSize>
155template <u
int8_t BankSize>
#define BEGIN_CS_NAMESPACE
A class for serial-in/parallel-out shift registers, like the 74HC595 that are connected to the SPI bu...
Generic base class for classes that listen for MIDI Note, Control Change and Key Pressure events on a...
void onBankSettingChange() override
A function to be executed each time the bank setting changes.
bool handleUpdateImpl(typename Matcher::Result match)
AH::Array< uint8_t, BankSize > values
NoteCCKPValue(BankConfig< BankSize > config, MIDIAddress address)
uint8_t getValue() const override
Get the most recent MIDI value that was received for the active bank.
void handleUpdate(typename Matcher::Result match) override
void reset() override
Reset all values to zero.
uint8_t getValue(uint8_t bank) const
Get the most recent MIDI value that was received for the given bank.
Abstract interface for MIDI input elements that receive and store a 7-bit value.
A type-safe utility class for saving a MIDI address consisting of a 7-bit address,...
Generic base class for classes that listen for MIDI Note, Control Change and Key Pressure events on a...
NoteCCKPValue(MIDIAddress address)
bool handleUpdateImpl(typename Matcher::Result match)
uint8_t getValue() const override
Get the most recent MIDI value that was received.
void handleUpdate(typename Matcher::Result match) override
void reset() override
Reset all values to zero.
A namespace for MIDI elements that can be added to a Bank, to change their address or channel.
Matcher for MIDI messages with 2 data bytes, such as Note On/Off, Control Change, Key Pressure.
Matcher for MIDI messages with 2 data bytes, such as Note On/Off, Control Change, Key Pressure (but n...