MIDI Control Surface library for Arduino
|
Go to the documentation of this file.
12 template <setting_t N>
34 FATAL_ERROR(
F(
"A Bank must have a non-zero number of tracks."),
76 template <setting_t N>
149 template <setting_t N>
151 inputBankables.append(bankable);
154 template <setting_t N>
156 inputBankables.remove(bankable);
159 template <setting_t N>
161 bankSetting = this->validateSetting(bankSetting);
164 e.onBankSettingChange();
uint8_t getTracksPerBank() const
Get the number of tracks per bank.
A class for changing the address of BankableMIDIOutputs.
A class that groups Bankable BankableMIDIOutputs and BankableMIDIInputs, and allows the user to chang...
void select(setting_t setting)
Select the given bank setting.
void select(setting_t bankSetting) override
Select the given bank setting.
#define BEGIN_CS_NAMESPACE
void remove(BankableMIDIInput< N > *bankable)
Remove a BankableMIDIInput from the bank.
Bank(uint8_t tracksPerBank=1, setting_t initialSelection=0)
Construct a new Bank object.
#define FATAL_ERROR(msg, errc)
Print the error message and error code, and stop the execution.
DoublyLinkedList< BankableMIDIInput< N > > inputBankables
A linked list of all BankableMIDIInput elements that have been added to this bank,...
constexpr static uint8_t getNumberOfBanks()
Get the number of Banks.
virtual setting_t getSelection() const
Get the current bank setting.
setting_t initialSelection
A class for doubly linked lists.
uint8_t setting_t
The type used for Selectors.
uint8_t getOffset() const
Get the offset (number of banks times the index of the selected bank)
void add(BankableMIDIInput< N > *bankable)
Add a BankableMIDIInput to the bank.
A base class for all MIDIOutputElements that can be banked.
OutputBank(uint8_t tracksPerBank=1, setting_t initialSelection=0)
Create a new OutputBank object.