Control Surface main
MIDI Control Surface library for Arduino
Loading...
Searching...
No Matches
ManyAddresses/NoteButton.hpp
Go to the documentation of this file.
1#pragma once
2
6
8namespace Bankable {
9namespace ManyAddresses {
10
26template <setting_t NumBanks>
28 : public Bankable::MIDIButton<ManyAddresses<NumBanks>, DigitalNoteSender> {
29 public:
47 const Array<MIDIAddress, NumBanks> &addresses,
48 uint8_t velocity = 0x7F)
50 {bank, addresses}, pin, {velocity}} {}
51
53 void setVelocity(uint8_t velocity) { this->sender.setVelocity(velocity); }
55 uint8_t getVelocity() const { return this->sender.getVelocity(); }
56};
57
58} // namespace ManyAddresses
59} // namespace Bankable
60
#define END_CS_NAMESPACE
#define BEGIN_CS_NAMESPACE
A class that groups Bankable MIDI Output Elements and Bankable MIDI Input Elements,...
Definition Bank.hpp:94
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,...
void setVelocity(uint8_t velocity)
Set the velocity of the MIDI Note events.
uint8_t getVelocity() const
Get the velocity of the MIDI Note events.
NoteButton(const Bank< NumBanks > &bank, pin_t pin, const Array< MIDIAddress, NumBanks > &addresses, uint8_t velocity=0x7F)
Create a new Bankable NoteButton object with the given bank configuration, button pin,...
Class that sends MIDI note on and off messages.
void setVelocity(uint8_t velocity)
uint8_t getVelocity() const
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:32
Type for storing pin numbers of Extended Input/Output elements.