Control Surface
main
MIDI Control Surface library for Arduino
Toggle main menu visibility
Loading...
Searching...
No Matches
src
MIDI_Outputs
ManyAddresses
ManyAddresses/CCButton.hpp
Go to the documentation of this file.
1
#pragma once
2
3
#include <
Banks/BankAddresses.hpp
>
4
#include <
MIDI_Outputs/Bankable/Abstract/MIDIButton.hpp
>
5
#include <
MIDI_Senders/DigitalCCSender.hpp
>
6
7
BEGIN_CS_NAMESPACE
8
namespace
Bankable
{
9
namespace
ManyAddresses
{
10
27
template
<setting_t NumBanks>
28
class
CCButton
29
:
public
Bankable::MIDIButton
<ManyAddresses<NumBanks>, DigitalCCSender> {
30
public
:
47
CCButton
(
const
Bank<NumBanks>
&bank,
pin_t
pin,
48
const
Array<MIDIAddress, NumBanks>
&addresses,
49
const
DigitalCCSender
&
sender
= {})
50
:
MIDIButton
<
ManyAddresses
<NumBanks>,
DigitalCCSender
> {
51
{bank, addresses}, pin,
sender
} {}
52
};
53
54
}
// namespace ManyAddresses
55
}
// namespace Bankable
56
57
END_CS_NAMESPACE
BankAddresses.hpp
MIDIButton.hpp
DigitalCCSender.hpp
END_CS_NAMESPACE
#define END_CS_NAMESPACE
Definition
Settings/NamespaceSettings.hpp:14
BEGIN_CS_NAMESPACE
#define BEGIN_CS_NAMESPACE
Definition
Settings/NamespaceSettings.hpp:11
Bank
A class that groups Bankable MIDI Output Elements and Bankable MIDI Input Elements,...
Definition
Bank.hpp:94
Bankable::MIDIButton
An abstract class for momentary push buttons that send MIDI events.
Definition
Bankable/Abstract/MIDIButton.hpp:20
Bankable::MIDIButton< ManyAddresses< NumBanks >, DigitalCCSender >::sender
DigitalCCSender sender
Definition
Bankable/Abstract/MIDIButton.hpp:58
Bankable::ManyAddresses::CCButton::CCButton
CCButton(const Bank< NumBanks > &bank, pin_t pin, const Array< MIDIAddress, NumBanks > &addresses, const DigitalCCSender &sender={})
Create a new Bankable CCButton object with the given bank configuration, button pin,...
Definition
ManyAddresses/CCButton.hpp:47
Bankable::ManyAddresses::ManyAddresses
Definition
BankAddresses.hpp:106
DigitalCCSender
Class that sends MIDI control change messages signifying either "on" or "off".
Definition
DigitalCCSender.hpp:13
Bankable::ManyAddresses
Definition
BankAddresses.hpp:99
Bankable
A namespace for MIDI elements that can be added to a Bank, to change their address or channel.
Definition
BankAddresses.hpp:7
AH::Array
An array wrapper for easy copying, comparing, and iterating.
Definition
Array.hpp:32
AH::ExtIO::pin_t
Type for storing pin numbers of Extended Input/Output elements.
Definition
Hardware-Types.hpp:25
Generated by
1.17.0