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

#include <Banks/BankAddresses.hpp>

Detailed Description

Definition at line 55 of file BankAddresses.hpp.

Inheritance diagram for DualAddresses:
Collaboration diagram for DualAddresses:

Public Member Functions

 DualAddresses (BaseOutputBankConfig config, const Array< MIDIAddress, 2 > &addresses)
MIDIAddress getFirstBaseAddress () const
MIDIAddress getSecondBaseAddress () const
MIDIAddress getFirstActiveAddress () const
MIDIAddress getSecondActiveAddress () 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 OutputBankbank

Private Attributes

MIDIAddress first
MIDIAddress second
const BankType type
setting_t lockedSetting = Unlocked

Static Private Attributes

static constexpr setting_t Unlocked = NoSetting

Constructor & Destructor Documentation

◆ DualAddresses()

DualAddresses ( BaseOutputBankConfig config,
const Array< MIDIAddress, 2 > & addresses )
inline

Definition at line 57 of file BankAddresses.hpp.

Member Function Documentation

◆ getFirstBaseAddress()

MIDIAddress getFirstBaseAddress ( ) const
inline

Definition at line 62 of file BankAddresses.hpp.

◆ getSecondBaseAddress()

MIDIAddress getSecondBaseAddress ( ) const
inline

Definition at line 63 of file BankAddresses.hpp.

◆ getFirstActiveAddress()

MIDIAddress getFirstActiveAddress ( ) const
inline

Definition at line 65 of file BankAddresses.hpp.

◆ getSecondActiveAddress()

MIDIAddress getSecondActiveAddress ( ) const
inline

Definition at line 68 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

◆ first

MIDIAddress first
private

Definition at line 73 of file BankAddresses.hpp.

◆ second

MIDIAddress second
private

Definition at line 73 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: