Control Surface main MIDI Control Surface library for Arduino
MIDI Input Elements LEDs

## Detailed Description

All MIDIInputElements that visualize their state using LEDs.

Collaboration diagram for MIDI Input Elements LEDs:

## Modules

Bankable MIDI Input Elements LEDs
All Bankable MIDIInputElements that visualize their state using LEDs.

## Classes

class  VPotRingLEDs
A MIDI input element that represents a Mackie Control Universal VPot ring and displays it using LEDs. More...

class  VULEDs< NumLEDs >
A MIDI input element that represents a Mackie Control Universal VU meter and displays its value using LEDs. More...

## Typedefs

using NoteLED = NoteCCKPLED< MIDIMessageType::NOTE_ON >
Class that listens for MIDI Note events on a single address and turns on an LED when the value is higher than a threshold. More...

using CCLED = NoteCCKPLED< MIDIMessageType::CONTROL_CHANGE >
Class that listens for MIDI Control Change events on a single address and turns on an LED when the value is higher than a threshold. More...

using KPLED = NoteCCKPLED< MIDIMessageType::KEY_PRESSURE >
Class that listens for MIDI Key Pressure events on a single address and turns on an LED when the value is higher than a threshold. More...

template<uint8_t NumLEDs>
using NoteLEDBar = NoteCCKPLEDBar< MIDIMessageType::NOTE_ON, NumLEDs >
Class that listens for Note events and displays the velocity on an LED Bar Graph, turning on a different number of LEDs depending on the velocity. More...

template<uint8_t NumLEDs>
using CCLEDBar = NoteCCKPLEDBar< MIDIMessageType::CONTROL_CHANGE, NumLEDs >
Class that listens for Control Change events and displays the value on an LED Bar Graph, turning on a different number of LEDs depending on the value. More...

template<uint8_t NumLEDs>
using KPLEDBar = NoteCCKPLEDBar< MIDIMessageType::KEY_PRESSURE, NumLEDs >
Class that listens for Key Pressure events and displays the pressure on an LED Bar Graph, turning on a different number of LEDs depending on the value. More...

using NoteLEDPWM = NoteCCKPLEDPWM< MIDIMessageType::NOTE_ON >
Class that listens for MIDI Note events on a single address and turns on an LED with a brightness/duty cycle proportional to the velocity. More...

using CCLEDPWM = NoteCCKPLEDPWM< MIDIMessageType::CONTROL_CHANGE >
Class that listens for MIDI Control Change events on a single address and turns on an LED with a brightness/duty cycle proportional to the value. More...

using KPLEDPWM = NoteCCKPLEDPWM< MIDIMessageType::KEY_PRESSURE >
Class that listens for MIDI Key Pressure events on a single address and turns on an LED with a brightness/duty cycle proportional to the pressure. More...

template<uint8_t RangeLen, class ColorMapper = DefaultColorMapper>
using NoteRangeFastLED = NoteCCKPRangeFastLED< MIDIMessageType::NOTE_ON, RangeLen, ColorMapper >
MIDI Input Element that listens for MIDI Note messages in a given range, and displays their values using a FastLED LED strip. More...

template<class ColorMapper = DefaultColorMapper>
using NoteValueFastLED = NoteCCKPRangeFastLED< MIDIMessageType::NOTE_ON, 1, ColorMapper >
MIDI Input Element that listens for MIDI Note messages on a specific note, and displays its value using a FastLED LED strip. More...

template<uint8_t RangeLen, class ColorMapper = DefaultColorMapper>
using CCRangeFastLED = NoteCCKPRangeFastLED< MIDIMessageType::CONTROL_CHANGE, RangeLen, ColorMapper >
MIDI Input Element that listens for MIDI Control Change messages in a given range, and displays their values using a FastLED LED strip. More...

template<class ColorMapper = DefaultColorMapper>
using CCValueFastLED = NoteCCKPRangeFastLED< MIDIMessageType::CONTROL_CHANGE, 1, ColorMapper >
MIDI Input Element that listens for MIDI Control Change messages on a specific controller, and displays its value using a FastLED LED strip. More...

template<uint8_t RangeLen, class ColorMapper = DefaultColorMapper>
using KPRangeFastLED = NoteCCKPRangeFastLED< MIDIMessageType::KEY_PRESSURE, RangeLen, ColorMapper >
MIDI Input Element that listens for MIDI Key Pressure messages in a given range, and displays their values using a FastLED LED strip. More...

template<class ColorMapper = DefaultColorMapper>
using KPValueFastLED = NoteCCKPRangeFastLED< MIDIMessageType::KEY_PRESSURE, 1, ColorMapper >
MIDI Input Element that listens for MIDI Key Pressure messages on a specific note, and displays its value using a FastLED LED strip. More...

template<uint8_t RangeLen>
using NoteRangeLEDs = NoteCCKPRangeLEDs< MIDIMessageType::NOTE_ON, RangeLen >
Class that listens for MIDI Note events on a range of addresses and turns on the corresponding LED when the velocity is higher than a threshold. More...

template<uint8_t RangeLen>
using CCRangeLEDs = NoteCCKPRangeLEDs< MIDIMessageType::CONTROL_CHANGE, RangeLen >
Class that listens for MIDI Control Change events on a range of addresses and turns on the corresponding LED when the value is higher than a threshold. More...

template<uint8_t RangeLen>
using KPRangeLEDs = NoteCCKPRangeLEDs< MIDIMessageType::KEY_PRESSURE, RangeLen >
Class that listens for MIDI Key Pressure events on a range of addresses and turns on the corresponding LED when the pressure is higher than a threshold. More...

## ◆ NoteLED

 using NoteLED = NoteCCKPLED

Class that listens for MIDI Note events on a single address and turns on an LED when the value is higher than a threshold.

Definition at line 61 of file NoteCCKPLED.hpp.

## ◆ CCLED

 using CCLED = NoteCCKPLED

Class that listens for MIDI Control Change events on a single address and turns on an LED when the value is higher than a threshold.

Definition at line 66 of file NoteCCKPLED.hpp.

## ◆ KPLED

 using KPLED = NoteCCKPLED

Class that listens for MIDI Key Pressure events on a single address and turns on an LED when the value is higher than a threshold.

Definition at line 71 of file NoteCCKPLED.hpp.

## ◆ NoteLEDBar

 using NoteLEDBar = NoteCCKPLEDBar

Class that listens for Note events and displays the velocity on an LED Bar Graph, turning on a different number of LEDs depending on the velocity.

Similar to a digital LED VU meter. Can be configured in either bar or dot mode.

Template Parameters
 NumLEDs The number of LEDs the display has.

Definition at line 68 of file NoteCCKPLEDBar.hpp.

## ◆ CCLEDBar

 using CCLEDBar = NoteCCKPLEDBar

Class that listens for Control Change events and displays the value on an LED Bar Graph, turning on a different number of LEDs depending on the value.

Similar to a digital LED VU meter. Can be configured in either bar or dot mode.

Template Parameters
 NumLEDs The number of LEDs the display has.

Definition at line 78 of file NoteCCKPLEDBar.hpp.

## ◆ KPLEDBar

 using KPLEDBar = NoteCCKPLEDBar

Class that listens for Key Pressure events and displays the pressure on an LED Bar Graph, turning on a different number of LEDs depending on the value.

Similar to a digital LED VU meter. Can be configured in either bar or dot mode.

Template Parameters
 NumLEDs The number of LEDs the display has.

Definition at line 88 of file NoteCCKPLEDBar.hpp.

## ◆ NoteLEDPWM

 using NoteLEDPWM = NoteCCKPLEDPWM

Class that listens for MIDI Note events on a single address and turns on an LED with a brightness/duty cycle proportional to the velocity.

Definition at line 57 of file NoteCCKPLEDPWM.hpp.

## ◆ CCLEDPWM

Class that listens for MIDI Control Change events on a single address and turns on an LED with a brightness/duty cycle proportional to the value.

Definition at line 62 of file NoteCCKPLEDPWM.hpp.

## ◆ KPLEDPWM

Class that listens for MIDI Key Pressure events on a single address and turns on an LED with a brightness/duty cycle proportional to the pressure.

Definition at line 67 of file NoteCCKPLEDPWM.hpp.

## ◆ NoteRangeFastLED

 using NoteRangeFastLED = NoteCCKPRangeFastLED

MIDI Input Element that listens for MIDI Note messages in a given range, and displays their values using a FastLED LED strip.

This class doesn't actually write to the LEDs directly, it writes to a buffer of CRGB values that is sent to the LEDs by the FastLED library in the user code. To know when to update the LEDs, you can use the NoteCCKPRangeFastLED::getDirty() and NoteCCKPRangeFastLED::clearDirty() methods.

Template Parameters
 RangeLen The length of the range of MIDI note numbers to listen for. ColorMapper The color mapper that defines how each MIDI velocity value should be mapped to an RGB color for the LEDs.

Definition at line 203 of file NoteCCKPRangeFastLED.hpp.

## ◆ NoteValueFastLED

 using NoteValueFastLED = NoteCCKPRangeFastLED

MIDI Input Element that listens for MIDI Note messages on a specific note, and displays its value using a FastLED LED strip.

This class doesn't actually write to the LEDs directly, it writes to a buffer of CRGB values that is sent to the LEDs by the FastLED library in the user code. To know when to update the LEDs, you can use the NoteCCKPRangeFastLED::getDirty() and NoteCCKPRangeFastLED::clearDirty() methods.

Template Parameters
 ColorMapper The color mapper that defines how each MIDI velocity value should be mapped to an RGB color for the LEDs.

Definition at line 221 of file NoteCCKPRangeFastLED.hpp.

## ◆ CCRangeFastLED

 using CCRangeFastLED = NoteCCKPRangeFastLED

MIDI Input Element that listens for MIDI Control Change messages in a given range, and displays their values using a FastLED LED strip.

This class doesn't actually write to the LEDs directly, it writes to a buffer of CRGB values that is sent to the LEDs by the FastLED library in the user code. To know when to update the LEDs, you can use the NoteCCKPRangeFastLED::getDirty() and NoteCCKPRangeFastLED::clearDirty() methods.

Template Parameters
 RangeLen The length of the range of MIDI note numbers to listen for. ColorMapper The color mapper that defines how each MIDI control change value should be mapped to an RGB color for the LEDs.

Definition at line 241 of file NoteCCKPRangeFastLED.hpp.

## ◆ CCValueFastLED

 using CCValueFastLED = NoteCCKPRangeFastLED

MIDI Input Element that listens for MIDI Control Change messages on a specific controller, and displays its value using a FastLED LED strip.

This class doesn't actually write to the LEDs directly, it writes to a buffer of CRGB values that is sent to the LEDs by the FastLED library in the user code. To know when to update the LEDs, you can use the NoteCCKPRangeFastLED::getDirty() and NoteCCKPRangeFastLED::clearDirty() methods.

Template Parameters
 ColorMapper The color mapper that defines how each MIDI control change value should be mapped to an RGB color for the LEDs.

Definition at line 260 of file NoteCCKPRangeFastLED.hpp.

## ◆ KPRangeFastLED

 using KPRangeFastLED = NoteCCKPRangeFastLED

MIDI Input Element that listens for MIDI Key Pressure messages in a given range, and displays their values using a FastLED LED strip.

This class doesn't actually write to the LEDs directly, it writes to a buffer of CRGB values that is sent to the LEDs by the FastLED library in the user code. To know when to update the LEDs, you can use the NoteCCKPRangeFastLED::getDirty() and NoteCCKPRangeFastLED::clearDirty() methods.

Template Parameters
 RangeLen The length of the range of MIDI note numbers to listen for. ColorMapper The color mapper that defines how each MIDI pressure value should be mapped to an RGB color for the LEDs.

Definition at line 280 of file NoteCCKPRangeFastLED.hpp.

## ◆ KPValueFastLED

 using KPValueFastLED = NoteCCKPRangeFastLED

MIDI Input Element that listens for MIDI Key Pressure messages on a specific note, and displays its value using a FastLED LED strip.

This class doesn't actually write to the LEDs directly, it writes to a buffer of CRGB values that is sent to the LEDs by the FastLED library in the user code. To know when to update the LEDs, you can use the NoteCCKPRangeFastLED::getDirty() and NoteCCKPRangeFastLED::clearDirty() methods.

Template Parameters
 ColorMapper The color mapper that defines how each MIDI pressure value should be mapped to an RGB color for the LEDs.

Definition at line 298 of file NoteCCKPRangeFastLED.hpp.

## ◆ NoteRangeLEDs

 using NoteRangeLEDs = NoteCCKPRangeLEDs

Class that listens for MIDI Note events on a range of addresses and turns on the corresponding LED when the velocity is higher than a threshold.

Definition at line 71 of file NoteCCKPRangeLEDs.hpp.

## ◆ CCRangeLEDs

 using CCRangeLEDs = NoteCCKPRangeLEDs

Class that listens for MIDI Control Change events on a range of addresses and turns on the corresponding LED when the value is higher than a threshold.

Definition at line 77 of file NoteCCKPRangeLEDs.hpp.

## ◆ KPRangeLEDs

 using KPRangeLEDs = NoteCCKPRangeLEDs

Class that listens for MIDI Key Pressure events on a range of addresses and turns on the corresponding LED when the pressure is higher than a threshold.

Definition at line 83 of file NoteCCKPRangeLEDs.hpp.