#include <Audio/AudioVULEDs.hpp>
A VU meter that reads from an Audio stream using the AudioAnalyzePeak class, and displays it on an LED bar graph.
| N | The number of LEDs. |
Definition at line 21 of file AudioVULEDs.hpp.
Inheritance diagram for AudioVULEDs< N >:
Collaboration diagram for AudioVULEDs< N >:Detecting changes | |
| bool | getDirty () const |
| Check if the value was updated since the last time the dirty flag was cleared. More... | |
| void | clearDirty () |
| Clear the dirty flag. More... | |
Enabling and disabling updatables | |
| void | enable () |
| Enable this updatable: insert it into the linked list of instances, so it gets updated automatically. More... | |
| void | disable () |
| Disable this updatable: remove it from the linked list of instances, so it no longer gets updated automatically. More... | |
| bool | isEnabled () const |
| Check if this updatable is enabled. More... | |
| void | moveDown () |
| Move down this element in the list. More... | |
| static void | enable (UpdatableCRTP *element) |
| Enable this updatable: insert it into the linked list of instances, so it gets updated automatically. More... | |
| static void | enable (UpdatableCRTP &element) |
| Enable this updatable: insert it into the linked list of instances, so it gets updated automatically. More... | |
| static void | enable (U(&array)[N]) |
| Enable this updatable: insert it into the linked list of instances, so it gets updated automatically. More... | |
| static void | disable (UpdatableCRTP *element) |
| Disable this updatable: remove it from the linked list of instances, so it no longer gets updated automatically. More... | |
| static void | disable (UpdatableCRTP &element) |
| Disable this updatable: remove it from the linked list of instances, so it no longer gets updated automatically. More... | |
| static void | disable (U(&array)[N]) |
| Disable this updatable: remove it from the linked list of instances, so it no longer gets updated automatically. More... | |
Main initialization and updating methods | |
| static void | beginAll () |
| Begin all enabled instances of this class. More... | |
| static void | updateAll () |
| Update all enabled instances of this class. More... | |
Public Member Functions | |
| AudioVULEDs (const AH::DotBarDisplayLEDs< N > &vuleds, AudioAnalyzePeak &level, float gain=1.0) | |
| Create a new AudioVULEDs object. More... | |
| void | begin () override |
| Initialize. More... | |
| void | update () override |
| Update the LEDs with the latest level. More... | |
| void | setMode (AH::DotBarMode mode) |
| Set the mode to either dot or bar mode. More... | |
| void | dotMode () |
| Set the mode to dot mode. More... | |
| void | barMode () |
| Set the mode to bar mode. More... | |
| uint8_t | getValue () override |
| Get the value of the VU meter. More... | |
| float | getFloatValue () override |
| Get the value of the VU meter. More... | |
| bool | getOverload () override |
| void | setGain (float gain) |
| Set the gain for the VU meter. More... | |
| uint8_t | getMax () const |
| Get the maximum value that this VU meter can return. More... | |
Protected Attributes | |
| uint8_t | max |
| bool | alwaysDirty |
| bool | dirty = true |
| Updatable< AudioVU > * | next |
| Updatable< AudioVU > * | previous |
Static Protected Attributes | |
| static DoublyLinkedList< Updatable< AudioVU > > | updatables |
Private Attributes | |
| AH::DotBarDisplayLEDs< N > | vuleds |
| uint8_t | previousValue = 0 |
| MovingCoilBallistics | ballistics = MovingCoilBallistics::responsiveVU() |
| class AudioVU::Analyzer | level |
| float | gain |
|
inline |
Create a new AudioVULEDs object.
| vuleds | The LEDs to display the VU meter to. |
| level | The Teensy Audio peak analyzer object. Note that it is kept by reference, so it must outlive the AudioVU instance. |
| gain | A multiplier to calibrate the VU meter. |
Definition at line 35 of file AudioVULEDs.hpp.
|
inlineoverridevirtual |
|
inlineoverridevirtual |
Update the LEDs with the latest level.
Implements Updatable< AudioVU >.
Definition at line 47 of file AudioVULEDs.hpp.
|
inline |
Set the mode to either dot or bar mode.
| mode | The mode. |
Definition at line 61 of file AudioVULEDs.hpp.
|
inline |
Set the mode to dot mode.
Definition at line 66 of file AudioVULEDs.hpp.
|
inline |
Set the mode to bar mode.
Definition at line 71 of file AudioVULEDs.hpp.
|
inlineoverridevirtualinherited |
Get the value of the VU meter.
Implements IVU.
Definition at line 60 of file AudioVU.hpp.
|
inlineoverridevirtualinherited |
Get the value of the VU meter.
Reimplemented from IVU.
Definition at line 70 of file AudioVU.hpp.
|
inlineoverridevirtualinherited |
Implements IVU.
Definition at line 83 of file AudioVU.hpp.
|
inlineinherited |
Set the gain for the VU meter.
| gain | The new gain. |
Definition at line 91 of file AudioVU.hpp.
|
inlineinherited |
Check if the value was updated since the last time the dirty flag was cleared.
Definition at line 97 of file InterfaceMIDIInputElements.hpp.
|
inlineinherited |
Clear the dirty flag.
Definition at line 99 of file InterfaceMIDIInputElements.hpp.
|
inlineinherited |
Get the maximum value that this VU meter can return.
Definition at line 110 of file InterfaceMIDIInputElements.hpp.
|
inlinestaticinherited |
Begin all enabled instances of this class.
Definition at line 186 of file Updatable.hpp.
|
inlinestaticinherited |
Update all enabled instances of this class.
Definition at line 190 of file Updatable.hpp.
|
inlineinherited |
Enable this updatable: insert it into the linked list of instances, so it gets updated automatically.
Definition at line 100 of file Updatable.hpp.
|
inlinestaticinherited |
Enable this updatable: insert it into the linked list of instances, so it gets updated automatically.
Definition at line 129 of file Updatable.hpp.
|
inlinestaticinherited |
Enable this updatable: insert it into the linked list of instances, so it gets updated automatically.
Definition at line 131 of file Updatable.hpp.
|
inlinestaticinherited |
Enable this updatable: insert it into the linked list of instances, so it gets updated automatically.
Definition at line 134 of file Updatable.hpp.
|
inlineinherited |
Disable this updatable: remove it from the linked list of instances, so it no longer gets updated automatically.
Definition at line 110 of file Updatable.hpp.
|
inlinestaticinherited |
Disable this updatable: remove it from the linked list of instances, so it no longer gets updated automatically.
Definition at line 140 of file Updatable.hpp.
|
inlinestaticinherited |
Disable this updatable: remove it from the linked list of instances, so it no longer gets updated automatically.
Definition at line 142 of file Updatable.hpp.
|
inlinestaticinherited |
Disable this updatable: remove it from the linked list of instances, so it no longer gets updated automatically.
Definition at line 145 of file Updatable.hpp.
|
inlineinherited |
Check if this updatable is enabled.
Definition at line 124 of file Updatable.hpp.
|
inlineinherited |
Move down this element in the list.
Definition at line 151 of file Updatable.hpp.
|
private |
Definition at line 74 of file AudioVULEDs.hpp.
|
private |
Definition at line 75 of file AudioVULEDs.hpp.
|
privateinherited |
Definition at line 94 of file AudioVU.hpp.
|
privateinherited |
|
privateinherited |
Definition at line 135 of file AudioVU.hpp.
|
protectedinherited |
Definition at line 113 of file InterfaceMIDIInputElements.hpp.
|
protectedinherited |
Definition at line 114 of file InterfaceMIDIInputElements.hpp.
|
protectedinherited |
Definition at line 115 of file InterfaceMIDIInputElements.hpp.
|
staticprotectedinherited |
Definition at line 156 of file Updatable.hpp.
|
protectedinherited |
Definition at line 324 of file LinkedList.hpp.
|
protectedinherited |
Definition at line 325 of file LinkedList.hpp.