Control Surface
1.1.0
MIDI Control Surface library for Arduino
src
MIDI_Outputs
CCPotentiometer.hpp
Go to the documentation of this file.
1
#pragma once
2
3
#include <
MIDI_Outputs/Abstract/MIDIFilteredAnalog.hpp
>
4
#include <
MIDI_Senders/ContinuousCCSender.hpp
>
5
6
BEGIN_CS_NAMESPACE
7
8
/**
9
* @brief A class of MIDIOutputElement%s that read the analog input from a
10
* **potentiometer or fader**, and send out 7-bit MIDI
11
* **Control Change** events.
12
*
13
* The analog input is filtered and hysteresis is applied for maximum
14
* stability.
15
* This version cannot be banked.
16
*
17
* @ingroup MIDIOutputElements
18
*/
19
class
CCPotentiometer
20
:
public
MIDIFilteredAnalogAddressable
<ContinuousCCSender> {
21
public
:
22
/**
23
* @brief Create a new CCPotentiometer object with the given analog pin,
24
* controller number and channel.
25
*
26
* @param analogPin
27
* The analog input pin to read from.
28
* @param address
29
* The MIDI address containing the controller number [0, 119],
30
* channel [CHANNEL_1, CHANNEL_16], and optional cable number
31
* [0, 15].
32
* @param sender
33
* The MIDI sender to use.
34
*/
35
CCPotentiometer
(
pin_t
analogPin,
const
MIDICNChannelAddress
&
address
,
36
const
ContinuousCCSender
&
sender
= {})
37
:
MIDIFilteredAnalogAddressable
(analogPin,
address
,
sender
) {}
38
};
39
40
END_CS_NAMESPACE
MIDIFilteredAnalogAddressable< ContinuousCCSender >::address
const MIDICNChannelAddress address
Definition:
Abstract/MIDIFilteredAnalog.hpp:73
MIDIFilteredAnalog.hpp
BEGIN_CS_NAMESPACE
#define BEGIN_CS_NAMESPACE
Definition:
Settings/NamespaceSettings.hpp:9
END_CS_NAMESPACE
#define END_CS_NAMESPACE
Definition:
Settings/NamespaceSettings.hpp:10
MIDICNChannelAddress
A type-safe utility class for saving a MIDI address consisting of a 7-bit address,...
Definition:
MIDICNChannelAddress.hpp:82
CCPotentiometer::CCPotentiometer
CCPotentiometer(pin_t analogPin, const MIDICNChannelAddress &address, const ContinuousCCSender &sender={})
Create a new CCPotentiometer object with the given analog pin, controller number and channel.
Definition:
CCPotentiometer.hpp:35
MIDIFilteredAnalogAddressable
A class for potentiometers and faders that send MIDI events.
Definition:
Abstract/MIDIFilteredAnalog.hpp:17
MIDIFilteredAnalogAddressable< ContinuousCCSender >::MIDIFilteredAnalogAddressable
MIDIFilteredAnalogAddressable(pin_t analogPin, const MIDICNChannelAddress &address, const ContinuousCCSender &sender)
Construct a new MIDIFilteredAnalog.
Definition:
Abstract/MIDIFilteredAnalog.hpp:30
AH::pin_t
uint16_t pin_t
The type for Arduino pins (and ExtendedIOElement pins).
Definition:
Hardware-Types.hpp:17
CCPotentiometer
A class of MIDIOutputElements that read the analog input from a potentiometer or fader,...
Definition:
CCPotentiometer.hpp:19
ContinuousCCSender.hpp
ContinuousCCSender
Definition:
ContinuousCCSender.hpp:7
MIDIFilteredAnalogAddressable< ContinuousCCSender >::sender
ContinuousCCSender sender
Definition:
Abstract/MIDIFilteredAnalog.hpp:76
Generated by
1.8.16