Control Surface main
MIDI Control Surface library for Arduino
ManyAddresses/PBPotentiometer.hpp
Go to the documentation of this file.
1#pragma once
2
5
6#include <AH/Containers/ArrayHelpers.hpp>
10
12
13namespace Bankable {
14namespace ManyAddresses {
15
34template <setting_t NumBanks>
36 : public Bankable::MIDIFilteredAnalog<ManyAddresses<NumBanks>,
37 PitchBendSender<10>> {
38 public:
51 PBPotentiometer(const Bank<NumBanks> &bank, pin_t analogPin,
52 const Array<MIDIChannelCable, NumBanks> &addresses)
54 {bank, AH::copyAs<MIDIAddress>(addresses)}, analogPin, {}} {}
55};
56
57} // namespace ManyAddresses
58} // namespace Bankable
59
61
#define END_CS_NAMESPACE
#define BEGIN_CS_NAMESPACE
#define AH_DIAGNOSTIC_POP()
Definition: Warnings.hpp:37
#define AH_DIAGNOSTIC_WERROR()
Definition: Warnings.hpp:36
A class that groups Bankable MIDI Output Elements and Bankable MIDI Input Elements,...
Definition: Bank.hpp:91
A class for potentiometers and faders that send MIDI events and can be added to a Bank.
A class of MIDIOutputElements that read the analog input from a potentiometer or fader,...
PBPotentiometer(const Bank< NumBanks > &bank, pin_t analogPin, const Array< MIDIChannelCable, NumBanks > &addresses)
Create a new Bankable PBPotentiometer object with the given analog pin and channel.
Class that sends continuous MIDI pitch bend messages with a resolution of 14 bits.
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