Control Surface main
MIDI Control Surface library for Arduino
Loading...
Searching...
No Matches
ManyAddresses/CCAbsoluteEncoder.hpp
Go to the documentation of this file.
1#pragma once
2
6
8
9namespace Bankable {
10namespace ManyAddresses {
11
25template <size_t NumBanks>
27 : public MIDIAbsoluteEncoder<NumBanks, ManyAddresses<NumBanks>,
28 ContinuousCCSender> {
29 public:
61 const Array<MIDIAddress, NumBanks> &addresses,
62 int16_t speedMultiply = 1, uint8_t pulsesPerStep = 4)
63 : MIDIAbsoluteEncoder<NumBanks, ManyAddresses<NumBanks>,
65 {bank, addresses}, std::move(encoder), speedMultiply,
66 pulsesPerStep, {}) {}
67};
68
69} // namespace ManyAddresses
70} // namespace Bankable
71
#define END_CS_NAMESPACE
#define BEGIN_CS_NAMESPACE
Class for reading quadrature encoders, heavily influenced by http://www.pjrc.com/teensy/td_libs_Encod...
Definition AHEncoder.hpp:24
A class that groups Bankable MIDI Output Elements and Bankable MIDI Input Elements,...
Definition Bank.hpp:94
An abstract class for rotary encoders that send absolute MIDI events.
A class of MIDIOutputElements that read the input of a quadrature (rotary) encoder and send out absol...
CCAbsoluteEncoder(const Bank< NumBanks > &bank, AHEncoder &&encoder, const Array< MIDIAddress, NumBanks > &addresses, int16_t speedMultiply=1, uint8_t pulsesPerStep=4)
Construct a new Bankable CCAbsoluteEncoder object with the given pins, controller,...
Class that sends continuous MIDI control change messages with a resolution of 7 bits.
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