Control Surface
main
MIDI Control Surface library for Arduino
|
►NAH | PrintStream library |
►NBankable | A namespace for MIDI elements that can be added to a Bank, to change their address or channel |
►Nble_backend | |
►Ncompat | |
►Ncs | |
►NInterfaces | |
►NMCU | |
►NMIDI_Notes | MIDI note names |
CAdafruit_TinyUSB_USBDeviceMIDIBackend | |
CAHEncoder | Class for reading quadrature encoders, heavily influenced by http://www.pjrc.com/teensy/td_libs_Encoder.html |
►CAnyMIDIMessage | MIDI message variant type (with timestamp) |
CArduino_mbed_USBDeviceMIDIBackend | |
CArduinoBLEBackend | ArduinoBLE backend intended to be plugged into GenericBLEMIDI_Interface |
CAtomicPosition | |
►CAudioVU | A VU meter that reads from an Audio stream using the Analyzer class |
CAudioVULEDs | A VU meter that reads from an Audio stream using the AudioAnalyzePeak class, and displays it on an LED bar graph |
CBank | A class that groups Bankable MIDI Output Elements and Bankable MIDI Input Elements, and allows the user to change the addresses of these elements |
CBankableMatchingMIDIInputElement | Similar to MatchingMIDIInputElement, but for Bankable MIDI Input Elements |
CBankableMIDIInput | |
►CBankableOneByteMIDIMatcher | Matcher for MIDI messages with 1 data byte, such as Channel Pressure and Program Change |
►CBankablePitchBendMIDIMatcher | Matcher for MIDI Pitch Bend messages |
►CBankableTwoByteMIDIMatcher | Matcher for MIDI messages with 2 data bytes, such as Note On/Off, Control Change, Key Pressure |
►CBankableTwoByteRangeMIDIMatcher | Matcher for MIDI messages with 2 data bytes, such as Note On/Off, Control Change, Key Pressure |
CBankConfig | |
CBankDisplay | A class for displaying the setting of a Bank object |
CBankSettingChangeCallback | Callback class for Bankable objects that need to be notified when the active setting of their Bank changes |
CBaseBankConfig | A struct for selecting the bank of BankableMIDIInputs and the bank type |
CBaseOutputBankConfig | A struct for selecting the bank of BankableMIDIOutputs and the bank type |
CBitmapDisplay | A class that displays a bitmap depending on the state of a MIDINote or any other object that has a getValue() method that returns true (or anything that evaluates to true) when the bitmap has to be displayed, as wel as a pair of getDirty() /clearDirty() methods to determine whether the display has to be updated |
CBLECharacteristicHandle | Represents a handle to a local GATT characteristic |
CBLEConnectionHandle | Represents a handle to the connection to another device |
►CBLEDataGenerator | Callable that returns the next chunk of data from a BLE packet when called |
CBLEDataView | Non-owning, std::span-style read-only view of BLE data |
CBLEMIDIBackend | Default backend for the BluetoothMIDI_Interface class |
CBLEMIDIPacketBuilder | Class for building MIDI over Bluetooth Low Energy packets |
CBLEMIDIParser | Class for parsing BLE-MIDI packets |
►CBLERingBuf | Circular FIFO buffer for buffering BLE packet data |
CBLESettings | Configuration options for the low-level BLE code |
CBluetoothMIDI_Interface | A class for MIDI interfaces sending MIDI messages over a Bluetooth Low Energy (BLE) connection |
CBorrowedCCRotaryEncoder | A class of MIDIOutputElements that read the input of a quadrature (rotary) encoder and send out relative MIDI Control Change events |
►CBresenhamLine | Line rasterization algorithm for drawing lines to the display |
►CBTstackBackgroundBackend | Raspberry Pi Pico BTstack background backend intended to be plugged into GenericBLEMIDI_Interface |
CBufferedBLEMIDIParser | FIFO buffer that you can push BLE packets into, and pop MIDI messages out of |
CBufferPuller_ | Helper to pull bytes or other objects out of a buffer |
►CBulkRX | Receives Bulk packets (OUT for device mode, IN for host mode) |
►CBulkTX | Sends Bulk packets (IN for device mode, OUT for host mode) |
CCable | A type-safe class for MIDI USB Cable numbers |
CCCAbsoluteEncoder | A class of MIDIOutputElements that read the input of a quadrature (rotary) encoder and send out absolute MIDI Control Change events |
CCCButton | A class of MIDIOutputElements that read the input of a momentary push button or switch, and send out MIDI Control Change events |
CCCButtonLatched | A class of MIDIOutputElements that read the input of a momentary push button or switch, and send out MIDI Controller Change events |
CCCButtonLatching | A class of MIDIOutputElements that read the input of a latching push button or toggle switch, and send out MIDI Control Change events |
CCCButtonMatrix | A class of MIDIOutputElements that read the input from a matrix of momentary push buttons or switches, and send out MIDI Control Change events |
CCCButtons | A class of MIDIOutputElements that read the input of a collection of momentary push buttons or switches, and send out MIDI Control Change events |
CCCIncrementDecrementButtons | A class of MIDIOutputElements that read the input of two momentary push buttons to increment or decrement a relative setting using relative MIDI Control Change events |
CCCPotentiometer | A class of MIDIOutputElements that read the analog input from a potentiometer or fader, and send out 7-bit MIDI Control Change events |
CCCRotaryEncoder | A class of MIDIOutputElements that read the input of a quadrature (rotary) encoder and send out relative MIDI Control Change events |
CChannel | A type-safe class for MIDI channels |
CChannelMessage | |
CChord | |
CColor | A structure for RGB colors |
CContinuousCCSender | Class that sends continuous MIDI control change messages with a resolution of 7 bits |
CContinuousCCSender14 | Class that sends continuous MIDI control change messages with a resolution of 14 bits |
CControl_Surface_ | This class ensures initialization, updating, and interaction between all other classes, it's the glue that holds everything together |
CDefaultColorMapper | The default mapping from a 7-bit MIDI value to an RGB color, using the Novation Launchpad mapping |
CDigitalCCSender | Class that sends MIDI control change messages signifying either "on" or "off" |
CDigitalNoteSender | Class that sends MIDI note on and off messages |
CDirectPinRead | |
CDirectPinReadReg | |
CDisplay | |
CDisplayElement | An interface for elements that draw to a display |
CDisplayInterface | An interface for displays |
CDoublyLinkable | A class that can be inherited from to allow inserting into a DoublyLinkedList |
►CDoublyLinkedList | A class for doubly linked lists |
CEmptySelectorCallback | A callback for the GenericSelector class that does nothing |
CEncoderPinList | A struct for the pins of a rotary (quadrature) encoder without a switch |
CEncoderSelector | Selector that reads from a rotary encoder |
CEncoderSelectorLEDs | Selector that reads from a rotary encoder. This version displays the setting using LEDs |
CEncoderState | Class to keep track of relative position changes of rotary encoders |
CEncoderSwitchPinList | A struct for the pins of a rotary (quadrature) encoder with a switch |
CESP32_USBDeviceMIDIBackend | |
►CESP32BLEBackend | ESP32 backend intended to be plugged into GenericBLEMIDI_Interface |
CFineGrainedMIDI_Callbacks | |
CFortySevenEffectsMIDI_Interface | Class that wraps the FortySevenEffects MIDI library |
CFortySevenEffectsMIDI_Parser | Wrapper class for the FortySevenEffects MIDI parser |
CGenericBLEMIDI_Interface | Bluetooth Low Energy MIDI Interface |
CGenericEncoderSelector | |
CGenericIncrementDecrementSelector | |
CGenericIncrementSelector | |
CGenericManyButtonsSelector | |
CGenericMIDIAbsoluteEncoder | An abstract class for rotary encoders that send absolute MIDI events |
CGenericMIDIRotaryEncoder | An abstract class for rotary encoders that send MIDI events |
CGenericProgramChangeSelector | |
CGenericSelector | |
CGenericSwitchSelector | |
►CGenericUSBMIDI_Interface | A class for MIDI interfaces sending MIDI messages over a USB MIDI connection |
CHairlessMIDI_Interface | A class for MIDI Interfaces sending and receiving data over the USB Serial CDC connection for the use with the Hairless MIDI<->Serial Bridge |
CHardwareSerialDebugMIDI_Interface | A class for debug MIDI interfaces sending and receiving human-readable MIDI messages over a HardwareSerial port |
CHardwareSerialDebugMIDI_Output | A class for debug MIDI outputs sending human-readable MIDI messages over a HardwareSerial port |
CHardwareSerialMIDI_Interface | A class for MIDI interfaces sending and receiving MIDI messages over a Hardware Serial port |
Chas_method_begin | |
Chas_method_begin< T, void_t< decltype(std::declval< T >().begin())> > | |
CHexPuller | Class that parses hexadecimal ASCII text to bytes |
CIChord | |
CIncrementDecrementSelector | Selector with two buttons (one to increment, one to decrement) |
CIncrementDecrementSelectorLEDs | Selector with two buttons (one to increment, one to decrement). This version displays the setting using LEDs |
CIncrementSelector | Selector with one button that increments the selection |
CIncrementSelectorLEDs | Selector with one button that increments the selection. This version displays the setting using LEDs |
Cinterrupt_atomic | Wrapper that provides atomic access to variables shared between the main program and interrupt handlers, by inserting the appropriate compile-time fences |
CLambdaPuller_ | Helper to turn a lambda function into a puller |
CManyAddresses_Base | A base class for all MIDIOutputElements that can have one of many addresses |
CManyButtonsSelector | Selector that reads from \( N \) buttons |
CManyButtonsSelectorLEDs | Selector that reads from \( N \) buttons. This version displays the setting using LEDs |
CMatchingMIDIInputElement | The MIDIInputElement base class is very general: you give it a MIDI message, and it calls the updateWith() method with that message |
CMIDI_Callbacks | A class for callbacks from MIDI input |
CMIDI_Interface | An abstract class for MIDI interfaces |
CMIDI_Parser | Base class for MIDI parsers |
CMIDI_Pipe | Class that routes MIDI messages from a MIDI_Source to a MIDI_Sink |
CMIDI_PipeFactory | Class that produces multiple MIDI_Pipes |
CMIDI_Sender | Statically polymorphic template for classes that send MIDI messages |
CMIDI_Sink | Receives MIDI messages from a MIDI pipe |
CMIDI_Source | Class that can send MIDI messages to a MIDI pipe |
CMIDIAddress | A type-safe utility class for saving a MIDI address consisting of a 7-bit address, a 4-bit channel, and a 4-bit cable number |
CMIDIBLEInstance | Defines the interface for callback functions registered by the low-level BLE code |
CMIDIButton | An abstract class for momentary push buttons that send MIDI events |
CMIDIButtonLatched | A class for momentary buttons and switches that send MIDI events |
CMIDIButtonLatching | A class for latching buttons and switches that send MIDI events |
CMIDIButtonMatrix | MIDIButtonMatrix |
CMIDIButtons | An abstract class for momentary push buttons that send MIDI events |
CMIDIChannelCable | A class for saving a MIDI channel and cable number |
CMIDIChordButton | An abstract class for momentary push buttons that send multiple MIDI events |
CMIDIFilteredAnalog | A class for potentiometers and faders that send MIDI events |
CMIDIIncrementDecrementButtons | An abstract class for two buttons that send incremental MIDI events |
CMIDIInputElement | A class for objects that listen for incoming MIDI events |
CMIDIMessage | |
CMIDIOutputOnly | |
CMIDIStaller | Struct that can cause a MIDI_Pipe to be stalled |
CMIDIUSB_USBDeviceMIDIBackend | |
CMotorFader | |
CMovingCoilBallistics | |
CNonatomicBLERingBufSize | |
CNoteButton | A class of MIDIOutputElements that read the input of a momentary push button or switch, and send out MIDI Note events |
CNoteButtonLatched | A class of MIDIOutputElements that read the input of a momentary push button or switch, and send out MIDI Note events |
CNoteButtonLatching | A class of MIDIOutputElements that read the input of a latching push button or toggle switch, and send out MIDI Note events |
CNoteButtonMatrix | A class of MIDIOutputElements that read the input from a matrix of momentary push buttons or switches, and send out MIDI Note events |
CNoteButtons | A class of MIDIOutputElements that read the input of a collection of momentary push buttons or switches, and send out MIDI Note events |
CNoteCCKPLED | Generic base class for classes that listen for MIDI Note, Control Change and Key Pressure events on a single address and turns on an LED when the value is higher than a threshold |
CNoteCCKPLEDBar | Class that turns on a different number of LEDs depending on the received MIDI velocity, key pressure or Control Change value |
CNoteCCKPLEDBarDriver | Callback class that drives a LED dot/bar display based on a note or control change value |
CNoteCCKPLEDPWM | Generic base class for classes that listen for MIDI Note, Control Change and Key Pressure events on a single address and turn on an LED with a brightness/duty cycle proportional to the MIDI value |
CNoteCCKPRange | Generic base class for classes that listen for MIDI Note, Control Change and Key Pressure events on a range of addresses and save their values |
CNoteCCKPRangeFastLED | Generic base class for classes that listen for MIDI Note, Control Change and Key Pressure events on a range of addresses and turns on the corresponding LED in a FastLED strip with a color that depends both on the index in the range and the value of the incoming MIDI message |
CNoteCCKPRangeLEDs | Generic base class for classes that listen for MIDI Note, Control Change and Key Pressure events on a range of addresses and turn on the corresponding LED when the value is higher than a threshold |
CNoteCCKPValue | Generic base class for classes that listen for MIDI Note, Control Change and Key Pressure events on a single address and save their value |
CNoteChordButton | A class of MIDIOutputElements that read the input of a momentary push button or switch, and send out MIDI Note events |
►COneByteMIDIMatcher | Matcher for MIDI messages with 1 data byte, such as Channel Pressure and Program Change |
COutputBank | A class for changing the address of BankableMIDIOutputs |
COutputBankableMIDIAddress | A base class for all MIDIOutputElements that can be banked |
COutputBankableMIDIAddress_Base | Class for keeping track of the active bank, and allows locking of the bank setting |
COutputBankConfig | |
CPBAbsoluteEncoder | A class of MIDIOutputElements that read the input of a quadrature (rotary) encoder and send out absolute MIDI Pitch Bend events |
CPBPotentiometer | A class of MIDIOutputElements that read the analog input from a potentiometer or fader, and send out 14-bit MIDI Pitch Bend events |
CPBValue | Class that listens for MIDI Pitch Bend events on a single address and saves their value |
CPCButton | A class of MIDIOutputElements that read the input of a momentary push button or switch, and send out MIDI Program Change events |
►CPitchBendMIDIMatcher | Matcher for MIDI Pitch Bend messages. Matches a single address |
CPitchBendSender | Class that sends continuous MIDI pitch bend messages with a resolution of 14 bits |
CPixelLocation | A simple struct representing a pixel with integer coordinates |
CPluggableUSBMIDI | |
►CPollingBLEMIDISender | Class that buffers MIDI BLE packets |
CPotentiometer | |
CPrintDebugMIDI_Base | A class that implements MIDI debug send functions |
CProgramChanger | |
CProgramChangeSelector | Selector that listens for MIDI Program Change events on a given MIDI Channel, and uses the program number as its selection |
CProgramChangeSelectorLEDs | Selector that listens for MIDI Program Change events on a given MIDI Channel, and uses the program number as its selection. This version displays the setting using LEDs |
CProgramChangeSender | Class that sends MIDI program change messages |
CRealTimeMessage | |
CRelativeCCSender | Class that sends relative/incremental MIDI control change messages |
CRelativeMIDIAddress | A class for saving an offset to a MIDI address |
CScopedThreadConfig | |
CSelectable | |
CSelector | A Selector with an empty callback |
CSelectorBase | Base class for all Selectors exposing the get method, so it can be used by display elements etc, without having to provide the full generic type |
CSelectorDisplay | A class for displaying the setting of a Selector object |
CSelectorLEDsCallback | |
CSelectorSingleLEDCallback | |
CSerialDebugMIDI_Interface | A wrapper class for debug MIDI interfaces sending and receiving human-readable MIDI messages over a Serial port of class T |
CSerialDebugMIDI_Output | A wrapper class for debug MIDI outputs sending human-readable MIDI messages over a Serial port of class T |
CSerialMIDI_Interface | A wrapper class for MIDI interfaces sending and receiving MIDI messages over a Serial port of generic class S |
CSerialMIDI_Parser | Parser for Serial MIDI streams (and BLE-MIDI) |
CSoftwareSerialDebugMIDI_Interface | A class for debug MIDI interfaces sending and receiving human-readable MIDI messages over a SoftwareSerial interface |
CSoftwareSerialDebugMIDI_Output | A class for debug MIDI outputs sending human-readable MIDI messages over a SoftwareSerial interface |
CSoftwareSerialMIDI_Interface | A class for MIDI interfaces sending and receiving MIDI messages over a SoftwareSerial interface |
CSSD1306_DisplayInterface | This class creates a mapping between the Adafruit_SSD1306 display driver and the general display interface used by the Control Surface library |
CStreamDebugMIDI_Interface | A class for MIDI interfaces sending and receiving human-readable MIDI messages over a Stream |
CStreamDebugMIDI_Output | A class for MIDI outputs sending human-readable MIDI messages over a Stream |
CStreamMIDI_Interface | A class for MIDI interfaces sending and receiving MIDI messages over a Stream |
CStreamPuller | Helper that pulls bytes out of an Arduino stream |
CSwitchSelector | Selector that selects one of two settings, based on the state of a toggle or momentary switch |
CSwitchSelectorLED | Selector that selects one of two settings, based on the state of a toggle or momentary switch. This version displays the setting using LEDs |
CSysCommonMessage | |
CSysExBuffer | Helper for storing the System Exclusive messages being received by a MIDI parser |
CSysExMessage | |
CTeensy2_USBDeviceMIDIBackend | |
CTeensy3_USBDeviceMIDIBackend | |
CTeensyHostMIDI | Teensy USB Host MIDI driver |
►CThreadedBLEMIDISender | Class that manages a background thread that sends BLE packets asynchronously |
CTransposer | Class for transposing the address of NoteButton and other MIDI elements |
CTrueMIDI_SinkSource | A struct that is both a TrueMIDI_Sink and a TrueMIDI_Source |
►CTwoByteMIDIMatcher | Matcher for MIDI messages with 2 data bytes, such as Note On/Off, Control Change, Key Pressure (but not Pitch Bend) |
►CTwoByteRangeMIDIMatcher | Matcher for MIDI messages with 2 data bytes, such as Note On/Off, Control Change, Key Pressure (but not Pitch Bend) |
CUSBDebugMIDI_Interface | A class for debug MIDI interfaces sending and receiving human-readable MIDI messages over the USB CDC connection |
CUSBDebugMIDI_Output | A class for debug MIDI outputs sending human-readable MIDI messages over the USB CDC connection |
CUSBDeviceMIDIBackend | |
CUSBHostMIDI_Interface | A class for MIDI interfaces sending MIDI messages to a MIDI USB device connected to a Teensy's USB host port |
CUSBHostMIDI_Interface_BigBuffer | A class for MIDI interfaces sending MIDI messages to a MIDI USB device connected to a Teensy's USB host port |
CUSBHostMIDIBackend | MIDI over USB backend for the Teensy USBHost_t36 library |
CUSBMIDI_Interface | A class for MIDI interfaces sending MIDI messages over a USB MIDI connection |
CUSBMIDI_Parser | Parser for MIDI over USB packets |
CUSBMIDI_Sender | A class for sending MIDI USB messages |
CUSBSerialMIDI_Interface | A class for MIDI interfaces sending and receiving MIDI messages over the Serial port of the USB connection |
CVolumeControl | A class for controlling the volume of AudioMixer4 objects using a potentiometer |
CXBitmap | A struct containing X Bitmap width, height and data |