Control Surface  1.2.0
MIDI Control Surface library for Arduino
Bankable/CCButtonMatrix.hpp
Go to the documentation of this file.
1 #pragma once
2 
6 
8 
9 namespace Bankable {
10 
28 template <uint8_t nb_rows, uint8_t nb_cols>
30  : public MIDIButtonMatrix<MatrixAddress<nb_rows, nb_cols>, DigitalCCSender,
31  nb_rows, nb_cols> {
32  public:
59  CCButtonMatrix(OutputBankConfig<> config, const PinList<nb_rows> &rowPins,
60  const PinList<nb_cols> &colPins,
61  const AddressMatrix<nb_rows, nb_cols> &controllers,
62  MIDIChannelCN channelCN, const DigitalCCSender &sender = {})
64  nb_rows, nb_cols>{
65  {config, controllers, channelCN}, rowPins, colPins, sender} {}
66 };
67 
68 } // namespace Bankable
69 
Bankable
A namespace for MIDI elements that can be added to a Bank, to change their address or channel.
Definition: BankAddresses.hpp:7
DigitalCCSender.hpp
MIDIChannelCN
A class for saving a MIDI channel and cable number.
Definition: MIDIAddress.hpp:19
BEGIN_CS_NAMESPACE
#define BEGIN_CS_NAMESPACE
Definition: Settings/NamespaceSettings.hpp:9
BankAddresses.hpp
AH::ButtonMatrix::colPins
const PinList< nb_cols > colPins
Definition: ButtonMatrix.hpp:86
DigitalCCSender
Class that sends MIDI control change messages signifying either "on" or "off".
Definition: DigitalCCSender.hpp:13
END_CS_NAMESPACE
#define END_CS_NAMESPACE
Definition: Settings/NamespaceSettings.hpp:10
Bankable::CCButtonMatrix::CCButtonMatrix
CCButtonMatrix(OutputBankConfig<> config, const PinList< nb_rows > &rowPins, const PinList< nb_cols > &colPins, const AddressMatrix< nb_rows, nb_cols > &controllers, MIDIChannelCN channelCN, const DigitalCCSender &sender={})
Create a new Bankable CCButtonMatrix object with the given pins, controller numbers and channel.
Definition: Bankable/CCButtonMatrix.hpp:59
MIDIButtonMatrix.hpp
Bankable::CCButtonMatrix
A class of MIDIOutputElements that read the input from a matrix of momentary push buttons or switches...
Definition: Bankable/CCButtonMatrix.hpp:31
AddressMatrix
Array2D< uint8_t, nb_rows, nb_cols > AddressMatrix
Definition: Def.hpp:27
OutputBankConfig
A struct for selecting the bank of BankableMIDIOutputs and the bank type.
Definition: BankConfig.hpp:76
AH::ButtonMatrix::rowPins
const PinList< nb_rows > rowPins
Definition: ButtonMatrix.hpp:85
Bankable::MIDIButtonMatrix
MIDIButtonMatrix.
Definition: Bankable/Abstract/MIDIButtonMatrix.hpp:30
Bankable::MatrixAddress
Definition: BankAddresses.hpp:77
Bankable::MIDIButtonMatrix< MatrixAddress< nb_rows, nb_cols >, DigitalCCSender, nb_rows, nb_cols >::sender
DigitalCCSender sender
Definition: Bankable/Abstract/MIDIButtonMatrix.hpp:80