Control Surface
main
MIDI Control Surface library for Arduino
Loading...
Searching...
No Matches
src
Control_Surface.h
Go to the documentation of this file.
1
9
#pragma once
10
11
#include <
AH/Arduino-Wrapper.h
>
// For VSCode errors in examples
12
13
#include <
AH/Teensy/TeensyUSBTypes.hpp
>
14
15
// ------------------------------- Main Logic ------------------------------- //
16
#include <
Control_Surface/Control_Surface_Class.hpp
>
17
18
// -------------------------------- Display --------------------------------- //
19
#include <
AH/Hardware/LEDs/MAX7219SevenSegmentDisplay.hpp
>
20
#include <
Display/BitmapDisplay.hpp
>
21
#include <
Display/Bitmaps/XBitmaps.hpp
>
22
#include <
Display/MCU/LCDDisplay.hpp
>
23
#include <
Display/MCU/TimeDisplayDisplay.hpp
>
24
#include <
Display/MCU/VPotDisplay.hpp
>
25
#include <
Display/MCU/VUDisplay.hpp
>
26
#include <
Display/SelectorDisplay.hpp
>
27
28
// ------------------------------ MIDI Outputs ------------------------------ //
29
#include <
MIDI_Outputs/CCButton.hpp
>
30
#include <
MIDI_Outputs/CCButtonLatched.hpp
>
31
#include <
MIDI_Outputs/CCButtonLatching.hpp
>
32
#include <
MIDI_Outputs/CCButtonMatrix.hpp
>
33
#include <
MIDI_Outputs/CCButtons.hpp
>
34
#include <
MIDI_Outputs/CCIncrementDecrementButtons.hpp
>
35
36
#include <
MIDI_Outputs/CCPotentiometer.hpp
>
37
38
#include <
MIDI_Outputs/NoteButton.hpp
>
39
#include <
MIDI_Outputs/NoteButtonLatched.hpp
>
40
#include <
MIDI_Outputs/NoteButtonLatching.hpp
>
41
#include <
MIDI_Outputs/NoteButtonMatrix.hpp
>
42
#include <
MIDI_Outputs/NoteButtons.hpp
>
43
#include <
MIDI_Outputs/NoteChordButton.hpp
>
44
45
#include <
MIDI_Outputs/PBPotentiometer.hpp
>
46
#include <
MIDI_Outputs/PCButton.hpp
>
47
48
#include <
MIDI_Outputs/CCAbsoluteEncoder.hpp
>
49
#include <
MIDI_Outputs/CCRotaryEncoder.hpp
>
50
#include <
MIDI_Outputs/PBAbsoluteEncoder.hpp
>
51
52
#include <
MIDI_Outputs/ProgramChanger.hpp
>
53
54
#include <
MIDI_Outputs/Bankable/CCButton.hpp
>
55
#include <
MIDI_Outputs/Bankable/CCButtonLatched.hpp
>
56
#include <
MIDI_Outputs/Bankable/CCButtonLatching.hpp
>
57
#include <
MIDI_Outputs/Bankable/CCButtonMatrix.hpp
>
58
#include <
MIDI_Outputs/Bankable/CCButtons.hpp
>
59
#include <
MIDI_Outputs/ManyAddresses/CCButton.hpp
>
60
61
#include <
MIDI_Outputs/Bankable/CCIncrementDecrementButtons.hpp
>
62
#include <
MIDI_Outputs/Bankable/CCPotentiometer.hpp
>
63
#include <
MIDI_Outputs/Bankable/CCSmartPotentiometer.hpp
>
64
#include <
MIDI_Outputs/ManyAddresses/CCButtonMatrix.hpp
>
65
#include <
MIDI_Outputs/ManyAddresses/CCIncrementDecrementButtons.hpp
>
66
#include <
MIDI_Outputs/ManyAddresses/CCPotentiometer.hpp
>
67
68
#include <
MIDI_Outputs/Bankable/NoteButton.hpp
>
69
#include <
MIDI_Outputs/Bankable/NoteButtonLatched.hpp
>
70
#include <
MIDI_Outputs/Bankable/NoteButtonLatching.hpp
>
71
#include <
MIDI_Outputs/Bankable/NoteButtonMatrix.hpp
>
72
#include <
MIDI_Outputs/Bankable/NoteButtons.hpp
>
73
#include <
MIDI_Outputs/Bankable/NoteChordButton.hpp
>
74
#include <
MIDI_Outputs/ManyAddresses/NoteButton.hpp
>
75
#include <
MIDI_Outputs/ManyAddresses/NoteButtonMatrix.hpp
>
76
77
#include <
MIDI_Outputs/Bankable/PBPotentiometer.hpp
>
78
#include <
MIDI_Outputs/Bankable/PBSmartPotentiometer.hpp
>
79
#include <
MIDI_Outputs/Bankable/PCButton.hpp
>
80
#include <
MIDI_Outputs/ManyAddresses/PBPotentiometer.hpp
>
81
#include <
MIDI_Outputs/ManyAddresses/PCButton.hpp
>
82
83
#include <
MIDI_Outputs/Bankable/CCAbsoluteEncoder.hpp
>
84
#include <
MIDI_Outputs/Bankable/CCRotaryEncoder.hpp
>
85
#include <
MIDI_Outputs/Bankable/PBAbsoluteEncoder.hpp
>
86
#include <
MIDI_Outputs/ManyAddresses/CCAbsoluteEncoder.hpp
>
87
#include <
MIDI_Outputs/ManyAddresses/CCRotaryEncoder.hpp
>
88
#include <
MIDI_Outputs/ManyAddresses/PBAbsoluteEncoder.hpp
>
89
90
#include <
MIDI_Outputs/Bankable/ProgramChanger.hpp
>
91
92
// ------------------------------ MIDI Inputs ------------------------------- //
93
#include <
MIDI_Inputs/MCU/AssignmentDisplay.hpp
>
94
#include <
MIDI_Inputs/MCU/LCD.hpp
>
95
#include <
MIDI_Inputs/MCU/SevenSegmentDisplay.hpp
>
96
#include <
MIDI_Inputs/MCU/TimeDisplay.hpp
>
97
#include <
MIDI_Inputs/MCU/VPotRing.hpp
>
98
#include <
MIDI_Inputs/MCU/VU.hpp
>
99
#include <
MIDI_Inputs/NoteCCKPRange.hpp
>
100
#include <
MIDI_Inputs/NoteCCKPValue.hpp
>
101
#include <
MIDI_Inputs/PBValue.hpp
>
102
103
#include <
MIDI_Inputs/LEDs/MCU/VPotRingLEDs.hpp
>
104
#include <
MIDI_Inputs/LEDs/MCU/VULEDs.hpp
>
105
#include <
MIDI_Inputs/LEDs/NoteCCKPLED.hpp
>
106
#include <
MIDI_Inputs/LEDs/NoteCCKPLEDBar.hpp
>
107
#include <
MIDI_Inputs/LEDs/NoteCCKPLEDPWM.hpp
>
108
#include <
MIDI_Inputs/LEDs/NoteCCKPRangeLEDs.hpp
>
109
110
#ifdef FASTLED_VERSION
111
#include <
MIDI_Inputs/LEDs/NoteCCKPRangeFastLED.hpp
>
112
#endif
113
114
// ------------------------------- Selectors -------------------------------- //
115
#include <
Selectors/EncoderSelector.hpp
>
116
#include <
Selectors/IncrementDecrementSelector.hpp
>
117
#include <
Selectors/IncrementSelector.hpp
>
118
#include <
Selectors/ManyButtonsSelector.hpp
>
119
#include <
Selectors/ProgramChangeSelector.hpp
>
120
#include <
Selectors/SwitchSelector.hpp
>
121
122
#include <
Selectors/LEDs/SelectorLEDs.hpp
>
123
124
#include <
Banks/Transposer.hpp
>
125
126
// ---------------------------- MIDI Interfaces ----------------------------- //
127
#include <
MIDI_Interfaces/DebugMIDI_Interface.hpp
>
128
#include <
MIDI_Interfaces/SerialMIDI_Interface.hpp
>
129
#include <
MIDI_Interfaces/USBMIDI_Interface.hpp
>
130
#ifdef ESP32
131
#include <
MIDI_Interfaces/BluetoothMIDI_Interface.hpp
>
132
#endif
133
#include <
MIDI_Interfaces/MIDI_Callbacks.hpp
>
134
135
// ------------------------- Extended Input Output -------------------------- //
136
#include <
AH/Hardware/ExtendedInputOutput/AnalogMultiplex.hpp
>
137
#include <
AH/Hardware/ExtendedInputOutput/ExtendedInputOutput.hpp
>
138
#include <
AH/Hardware/ExtendedInputOutput/MAX7219.hpp
>
139
#include <
AH/Hardware/ExtendedInputOutput/SPIShiftRegisterOut.hpp
>
140
#include <
AH/Hardware/ExtendedInputOutput/ShiftRegisterOut.hpp
>
141
142
// ----------------------------- MIDI Constants ----------------------------- //
143
#include <
MIDI_Constants/Chords/Chords.hpp
>
144
#include <
MIDI_Constants/Control_Change.hpp
>
145
#include <
MIDI_Constants/MCU.hpp
>
146
#include <
MIDI_Constants/Notes.hpp
>
147
#include <
MIDI_Constants/Program_Change.hpp
>
148
149
// ----------------------------- Array Helpers ------------------------------ //
150
#include <
AH/Containers/ArrayHelpers.hpp
>
151
152
// --------------------------------- Audio ---------------------------------- //
153
#ifdef TEENSY_AUDIOUSB_ENABLED
154
#include <
Audio/AudioVU.hpp
>
155
#include <
Audio/AudioVULEDs.hpp
>
156
#include <
Audio/VolumeControl.hpp
>
157
#endif
158
159
BEGIN_CS_NAMESPACE
160
#ifndef NO_USING_NAMESPACE_AH
161
USING_AH_NAMESPACE
;
162
#endif
163
END_CS_NAMESPACE
164
165
#ifndef NO_USING_NAMESPACE_CS
166
USING_CS_NAMESPACE
;
167
#endif
168
169
#define CONTROL_SURFACE_VERSION 20000
USING_AH_NAMESPACE
#define USING_AH_NAMESPACE
Definition
AH/Settings/NamespaceSettings.hpp:17
AnalogMultiplex.hpp
Arduino-Wrapper.h
ArrayHelpers.hpp
AssignmentDisplay.hpp
AudioVULEDs.hpp
AudioVU.hpp
CCAbsoluteEncoder.hpp
CCButtonLatched.hpp
CCButtonLatching.hpp
CCButtonMatrix.hpp
CCButton.hpp
CCButtons.hpp
CCIncrementDecrementButtons.hpp
CCPotentiometer.hpp
CCRotaryEncoder.hpp
NoteButtonLatched.hpp
NoteButtonLatching.hpp
NoteButtonMatrix.hpp
NoteButton.hpp
NoteButtons.hpp
NoteChordButton.hpp
PBAbsoluteEncoder.hpp
PBPotentiometer.hpp
PCButton.hpp
ProgramChanger.hpp
BitmapDisplay.hpp
BluetoothMIDI_Interface.hpp
CCAbsoluteEncoder.hpp
CCButtonLatched.hpp
CCButtonLatching.hpp
CCButtonMatrix.hpp
CCButton.hpp
CCButtons.hpp
CCIncrementDecrementButtons.hpp
CCPotentiometer.hpp
CCRotaryEncoder.hpp
CCSmartPotentiometer.hpp
Chords.hpp
Control_Change.hpp
Control_Surface_Class.hpp
DebugMIDI_Interface.hpp
EncoderSelector.hpp
ExtendedInputOutput.hpp
IncrementDecrementSelector.hpp
IncrementSelector.hpp
LCDDisplay.hpp
LCD.hpp
MAX7219SevenSegmentDisplay.hpp
MAX7219.hpp
MCU.hpp
MIDI_Callbacks.hpp
CCAbsoluteEncoder.hpp
CCButtonMatrix.hpp
CCButton.hpp
CCIncrementDecrementButtons.hpp
CCPotentiometer.hpp
CCRotaryEncoder.hpp
NoteButtonMatrix.hpp
NoteButton.hpp
PBAbsoluteEncoder.hpp
PBPotentiometer.hpp
PCButton.hpp
ManyButtonsSelector.hpp
NoteButtonLatched.hpp
NoteButtonLatching.hpp
NoteButtonMatrix.hpp
NoteButton.hpp
NoteButtons.hpp
NoteCCKPLEDBar.hpp
NoteCCKPLEDPWM.hpp
NoteCCKPLED.hpp
NoteCCKPRangeFastLED.hpp
NoteCCKPRangeLEDs.hpp
NoteCCKPRange.hpp
NoteCCKPValue.hpp
NoteChordButton.hpp
Notes.hpp
PBAbsoluteEncoder.hpp
PBPotentiometer.hpp
PBSmartPotentiometer.hpp
PBValue.hpp
PCButton.hpp
ProgramChangeSelector.hpp
ProgramChanger.hpp
Program_Change.hpp
SPIShiftRegisterOut.hpp
SelectorDisplay.hpp
SelectorLEDs.hpp
SerialMIDI_Interface.hpp
USING_CS_NAMESPACE
#define USING_CS_NAMESPACE
Definition
Settings/NamespaceSettings.hpp:17
END_CS_NAMESPACE
#define END_CS_NAMESPACE
Definition
Settings/NamespaceSettings.hpp:14
BEGIN_CS_NAMESPACE
#define BEGIN_CS_NAMESPACE
Definition
Settings/NamespaceSettings.hpp:11
SevenSegmentDisplay.hpp
ShiftRegisterOut.hpp
SwitchSelector.hpp
TeensyUSBTypes.hpp
TimeDisplayDisplay.hpp
TimeDisplay.hpp
Transposer.hpp
USBMIDI_Interface.hpp
VPotDisplay.hpp
VPotRingLEDs.hpp
VPotRing.hpp
VUDisplay.hpp
VULEDs.hpp
VU.hpp
VolumeControl.hpp
XBitmaps.hpp
Generated by
1.10.0