From 032139ac30e4d071e7e01d80ce025c326f0c2d25 Mon Sep 17 00:00:00 2001 From: Len Ovens Date: Fri, 5 Aug 2016 19:08:43 -0700 Subject: [PATCH] osc: provide human readable reading for gain. --- libs/surfaces/osc/osc_select_observer.cc | 10 ++++++++++ libs/surfaces/osc/osc_select_observer.h | 1 + 2 files changed, 11 insertions(+) diff --git a/libs/surfaces/osc/osc_select_observer.cc b/libs/surfaces/osc/osc_select_observer.cc index d40a599ece..bcea1c078b 100644 --- a/libs/surfaces/osc/osc_select_observer.cc +++ b/libs/surfaces/osc/osc_select_observer.cc @@ -336,6 +336,14 @@ OSCSelectObserver::tick () _last_meter = now_meter; } + if (feedback[1]) { + if (gain_timeout) { + if (gain_timeout == 1) { + text_message ("/select/name", _strip->name()); + } + gain_timeout--; + } + } if (feedback[13]) { for (uint32_t i = 0; i < send_timeout.size(); i++) { if (send_timeout[i]) { @@ -476,6 +484,8 @@ OSCSelectObserver::gain_message (string path, boost::shared_ptr co if (gainmode) { lo_message_add_float (msg, gain_to_slider_position (controllable->get_value())); + text_message ("/select/name", to_string (accurate_coefficient_to_dB (controllable->get_value()))); + gain_timeout = 8; } else { if (controllable->get_value() < 1e-15) { lo_message_add_float (msg, -200); diff --git a/libs/surfaces/osc/osc_select_observer.h b/libs/surfaces/osc/osc_select_observer.h index ba179e7979..d3abc20c80 100644 --- a/libs/surfaces/osc/osc_select_observer.h +++ b/libs/surfaces/osc/osc_select_observer.h @@ -54,6 +54,7 @@ class OSCSelectObserver uint32_t gainmode; std::bitset<32> feedback; std::vector send_timeout; + uint32_t gain_timeout; float _last_meter; uint32_t nsends; -- 2.30.2