summaryrefslogtreecommitdiff
path: root/libs/surfaces/mackie/meter.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2016-01-29 12:26:41 -0500
committerPaul Davis <paul@linuxaudiosystems.com>2016-01-29 12:27:46 -0500
commit0a2377e9b4c5b3804253f359334089955c3a2ce7 (patch)
tree5ad602df8ad9329651754a02bb183e5a3ee03fb5 /libs/surfaces/mackie/meter.cc
parent1972cf966eec37cf035ce85f7921f10dcd79f74e (diff)
mackie: redesign display logic entirely
Strips now maintain a pair of pending display strings (upper and lower). A periodic timeout writes the pending value to the actual hardware if it differs from the current string. This new design makes it easy to put a message on the display and then after some period of time, revert to whatever was there before.
Diffstat (limited to 'libs/surfaces/mackie/meter.cc')
-rw-r--r--libs/surfaces/mackie/meter.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/libs/surfaces/mackie/meter.cc b/libs/surfaces/mackie/meter.cc
index 27171aff16..16ba40de29 100644
--- a/libs/surfaces/mackie/meter.cc
+++ b/libs/surfaces/mackie/meter.cc
@@ -56,7 +56,8 @@ Meter::notify_metering_state_changed(Surface& surface, bool transport_is_rolling
msg << id();
// Enable (0x07) / Disable (0x00) level meter on LCD, peak hold display on horizontal meter and signal LED
- msg << ((transport_is_rolling && metering_active) ? 0x07 : 0x00);
+ _enabled = (transport_is_rolling && metering_active);
+ msg << (_enabled ? 0x07 : 0x00);
// sysex trailer
msg << MIDI::eox;