Control Surface main
MIDI Control Surface library for Arduino
Loading...
Searching...
No Matches
SingleAddress Class Reference

#include <Banks/BankAddresses.hpp>

Detailed Description

Examples
Custom-MIDI-Output-Element-Bankable.ino.

Definition at line 9 of file BankAddresses.hpp.

Inheritance diagram for SingleAddress:
Collaboration diagram for SingleAddress:

Public Member Functions

 SingleAddress (BaseOutputBankConfig config, MIDIAddress address)
MIDIAddress getBaseAddress () const
MIDIAddress getActiveAddress () const
RelativeMIDIAddress getAddressOffset (setting_t bankindex) const
 Get the offset relative to the base address.
RelativeMIDIAddress getAddressOffset () const
 Get the offset relative to the base address for the active bank.
setting_t getRawBankSetting () const
 Get the actual bank setting (no matter whether the element is locked or not).
setting_t getSelection () const
 Get the bank setting.
void lock ()
 Lock the bank setting.
void unlock ()
 Unlock the bank setting.

Protected Attributes

const OutputBank & bank

Private Attributes

MIDIAddress address
const BankType type
setting_t lockedSetting = Unlocked

Static Private Attributes

static constexpr setting_t Unlocked = NoSetting

Constructor & Destructor Documentation

◆ SingleAddress()

SingleAddress ( BaseOutputBankConfig config,
MIDIAddress address )
inline

Definition at line 11 of file BankAddresses.hpp.

Member Function Documentation

◆ getBaseAddress()

MIDIAddress getBaseAddress ( ) const
inline

Definition at line 14 of file BankAddresses.hpp.

◆ getActiveAddress()

MIDIAddress getActiveAddress ( ) const
inline

Definition at line 16 of file BankAddresses.hpp.

◆ getAddressOffset() [1/2]

RelativeMIDIAddress getAddressOffset ( setting_t bankindex) const
inlineinherited

Get the offset relative to the base address.

Definition at line 112 of file BankableAddresses.hpp.

◆ getAddressOffset() [2/2]

RelativeMIDIAddress getAddressOffset ( ) const
inlineinherited

Get the offset relative to the base address for the active bank.

Definition at line 124 of file BankableAddresses.hpp.

◆ getRawBankSetting()

setting_t getRawBankSetting ( ) const
inlineinherited

Get the actual bank setting (no matter whether the element is locked or not).

Definition at line 30 of file BankableAddresses.hpp.

◆ getSelection()

setting_t getSelection ( ) const
inlineinherited

Get the bank setting.

If the element is locked, the bank setting from the moment it was locked is returned.

Definition at line 38 of file BankableAddresses.hpp.

◆ lock()

void lock ( )
inlineinherited

Lock the bank setting.

As long as it's locked, getSelection will return the current setting, independent from the actual bank setting.

Definition at line 48 of file BankableAddresses.hpp.

◆ unlock()

void unlock ( )
inlineinherited

Unlock the bank setting.

After unlocking, getSelection will return the actual bank setting again.

Definition at line 59 of file BankableAddresses.hpp.

Member Data Documentation

◆ address

MIDIAddress address
private

Definition at line 21 of file BankAddresses.hpp.

◆ type

const BankType type
privateinherited

Definition at line 129 of file BankableAddresses.hpp.

◆ bank

const OutputBank& bank
protectedinherited

Definition at line 62 of file BankableAddresses.hpp.

◆ Unlocked

setting_t Unlocked = NoSetting
staticconstexprprivateinherited

Definition at line 65 of file BankableAddresses.hpp.

◆ lockedSetting

setting_t lockedSetting = Unlocked
privateinherited

Definition at line 66 of file BankableAddresses.hpp.


The documentation for this class was generated from the following file: