Control Surface
1.2.0
MIDI Control Surface library for Arduino
src
MIDI_Outputs
Bankable
Bankable/CCRotaryEncoder.hpp
Go to the documentation of this file.
1
#pragma once
2
3
#include <
Banks/BankAddresses.hpp
>
4
#include <
MIDI_Outputs/Bankable/Abstract/MIDIRotaryEncoder.hpp
>
5
#include <
MIDI_Senders/RelativeCCSender.hpp
>
6
7
BEGIN_CS_NAMESPACE
8
9
namespace
Bankable
{
10
24
class
CCRotaryEncoder
25
:
public
MIDIRotaryEncoder
<SingleAddress, RelativeCCSender> {
26
public
:
57
CCRotaryEncoder
(
OutputBankConfig<>
config,
EncoderPinList
pins,
58
MIDIAddress
address
, int8_t
speedMultiply
= 1,
59
uint8_t
pulsesPerStep
= 4)
60
:
MIDIRotaryEncoder
({config,
address
}, pins,
speedMultiply
,
61
pulsesPerStep
, {}) {}
62
63
// For tests only (PJRC Encoder library's copy constructor doesn't work)
64
#ifndef ARDUINO
65
CCRotaryEncoder
(
OutputBankConfig<>
config,
const
Encoder &
encoder
,
66
MIDIAddress
address
, int8_t
speedMultiply
= 1,
67
uint8_t
pulsesPerStep
= 4)
68
:
MIDIRotaryEncoder
({config,
address
},
encoder
,
speedMultiply
,
69
pulsesPerStep
, {}) {}
70
#endif
71
};
72
73
}
// namespace Bankable
74
75
END_CS_NAMESPACE
MIDIAddress
A type-safe utility class for saving a MIDI address consisting of a 7-bit address,...
Definition:
MIDIAddress.hpp:91
MIDIRotaryEncoder
An abstract class for rotary encoders that send MIDI events.
Definition:
Abstract/MIDIRotaryEncoder.hpp:19
MIDIRotaryEncoder.hpp
Bankable
A namespace for MIDI elements that can be added to a Bank, to change their address or channel.
Definition:
BankAddresses.hpp:7
Bankable::MIDIRotaryEncoder< SingleAddress, RelativeCCSender >::speedMultiply
const uint8_t speedMultiply
Definition:
Bankable/Abstract/MIDIRotaryEncoder.hpp:63
Bankable::MIDIRotaryEncoder< SingleAddress, RelativeCCSender >::encoder
Encoder encoder
Definition:
Bankable/Abstract/MIDIRotaryEncoder.hpp:62
BEGIN_CS_NAMESPACE
#define BEGIN_CS_NAMESPACE
Definition:
Settings/NamespaceSettings.hpp:9
BankAddresses.hpp
END_CS_NAMESPACE
#define END_CS_NAMESPACE
Definition:
Settings/NamespaceSettings.hpp:10
Bankable::MIDIRotaryEncoder< SingleAddress, RelativeCCSender >::pulsesPerStep
const uint8_t pulsesPerStep
Definition:
Bankable/Abstract/MIDIRotaryEncoder.hpp:64
Bankable::MIDIRotaryEncoder
An abstract class for rotary encoders that send MIDI events and that can be added to a Bank.
Definition:
Bankable/Abstract/MIDIRotaryEncoder.hpp:23
EncoderPinList
A struct for the pins of a rotary (quadrature) encoder without a switch.
Definition:
Def.hpp:44
RelativeCCSender.hpp
Bankable::MIDIRotaryEncoder< SingleAddress, RelativeCCSender >::address
SingleAddress address
Definition:
Bankable/Abstract/MIDIRotaryEncoder.hpp:61
Bankable::CCRotaryEncoder
A class of MIDIOutputElements that read the input of a quadrature (rotary) encoder and send out relat...
Definition:
Bankable/CCRotaryEncoder.hpp:25
OutputBankConfig
A struct for selecting the bank of BankableMIDIOutputs and the bank type.
Definition:
BankConfig.hpp:76
Bankable::CCRotaryEncoder::CCRotaryEncoder
CCRotaryEncoder(OutputBankConfig<> config, EncoderPinList pins, MIDIAddress address, int8_t speedMultiply=1, uint8_t pulsesPerStep=4)
Construct a new Bankable CCRotaryEncoder object with the given pins, controller, channel,...
Definition:
Bankable/CCRotaryEncoder.hpp:57
Generated by
1.8.19