Control Surface master
MIDI Control Surface library for Arduino
ManyAddresses/PCButton.hpp
Go to the documentation of this file.
1#pragma once
2
6
8
9namespace Bankable {
10namespace ManyAddresses {
11
27template <setting_t NumBanks>
28class PCButton : public Bankable::MIDIButton<ManyAddresses<NumBanks>,
29 ProgramChangeSender> {
30 public:
45 PCButton(const Bank<NumBanks> &bank, pin_t pin,
46 const Array<MIDIAddress, NumBanks> &addresses)
48 {bank, addresses}, pin, {}} {}
49};
50
51} // namespace ManyAddresses
52} // namespace Bankable
53
#define END_CS_NAMESPACE
#define BEGIN_CS_NAMESPACE
A class that groups Bankable MIDI Output Elements and Bankable MIDI Input Elements,...
Definition: Bank.hpp:91
An abstract class for momentary push buttons that send MIDI events.
A class of MIDIOutputElements that read the input of a momentary push button or switch,...
PCButton(const Bank< NumBanks > &bank, pin_t pin, const Array< MIDIAddress, NumBanks > &addresses)
Create a new PCButton object with the given pin, program number and channel.
Class that sends MIDI program change messages.
uint16_t pin_t
The type for Arduino pins (and ExtendedIOElement pins).
A namespace for MIDI elements that can be added to a Bank, to change their address or channel.
An array wrapper for easy copying, comparing, and iterating.
Definition: Array.hpp:36