From 3baf360733066d863f7b6c6b0c4d7698f52d83b0 Mon Sep 17 00:00:00 2001 From: Len Ovens Date: Thu, 22 Jun 2017 09:21:15 -0700 Subject: OSC: use internal_to_interface or reverse --- libs/surfaces/osc/osc.cc | 42 +++++++++++++------------------- libs/surfaces/osc/osc_cue_observer.cc | 2 +- libs/surfaces/osc/osc_global_observer.cc | 2 +- libs/surfaces/osc/osc_route_observer.cc | 2 +- libs/surfaces/osc/osc_select_observer.cc | 6 +---- 5 files changed, 21 insertions(+), 33 deletions(-) (limited to 'libs/surfaces') diff --git a/libs/surfaces/osc/osc.cc b/libs/surfaces/osc/osc.cc index bf9d5c47b6..f4f7fa807e 100644 --- a/libs/surfaces/osc/osc.cc +++ b/libs/surfaces/osc/osc.cc @@ -2300,7 +2300,7 @@ OSC::master_set_fader (float position) if (!session) return -1; boost::shared_ptr s = session->master_out(); if (s) { - s->gain_control()->set_value (slider_position_to_gain_with_max (position, 2.0), PBD::Controllable::NoGroup); // XXX use interface_to_internal, unhardcode 2.0 + s->gain_control()->set_value (s->gain_control()->interface_to_internal (position), PBD::Controllable::NoGroup); } return 0; } @@ -2381,7 +2381,7 @@ OSC::monitor_set_fader (float position) if (!session) return -1; boost::shared_ptr s = session->monitor_out(); if (s) { - s->gain_control()->set_value (slider_position_to_gain_with_max (position, 2.0), PBD::Controllable::NoGroup); // XXX use internal_to_interface, unhardcode 2.0 + s->gain_control()->set_value (s->gain_control()->interface_to_internal (position), PBD::Controllable::NoGroup); } return 0; } @@ -2459,7 +2459,7 @@ OSC::route_get_sends(lo_message msg) { lo_message_add_string(reply, isend->name().c_str()); lo_message_add_int32(reply, i); boost::shared_ptr a = isend->amp(); - lo_message_add_float(reply, gain_to_position(a->gain_control()->get_value())); // XXX use internal_to_interface + lo_message_add_float(reply, a->gain_control()->internal_to_interface (a->gain_control()->get_value())); lo_message_add_int32(reply, p->active() ? 1 : 0); } } @@ -2519,7 +2519,7 @@ OSC::route_get_receives(lo_message msg) { lo_message_add_int32(reply, get_sid(tr, get_address(msg))); lo_message_add_string(reply, tr->name().c_str()); lo_message_add_int32(reply, j); - lo_message_add_float(reply, gain_to_position(a->gain_control()->get_value())); // XXX use internal_to_interface + lo_message_add_float(reply, a->gain_control()->internal_to_interface (a->gain_control()->get_value())); lo_message_add_int32(reply, p->active() ? 1 : 0); } } @@ -3284,12 +3284,18 @@ int OSC::route_set_gain_fader (int ssid, float pos, lo_message msg) { if (!session) { - route_send_fail ("fader", ssid, 0, get_address (msg)); return -1; } - int ret; - ret = route_set_gain_abs (ssid, slider_position_to_gain_with_max (pos, 2.0), msg); // XXX use interface_to_internal, unhardcode 2.0 - if (ret != 0) { + boost::shared_ptr s = get_strip (ssid, get_address (msg)); + + if (s) { + if (s->gain_control()) { + fake_touch (s->gain_control()); + s->gain_control()->set_value (s->gain_control()->interface_to_internal (pos), PBD::Controllable::NoGroup); + } else { + return route_send_fail ("fader", ssid, 0, get_address (msg)); + } + } else { return route_send_fail ("fader", ssid, 0, get_address (msg)); } return 0; @@ -3306,11 +3312,9 @@ OSC::sel_fader (float val, lo_message msg) s = _select; } if (s) { - float abs; - abs = slider_position_to_gain_with_max (val, 2.0); // XXX use interface_to_internal, unhardcode 2.0 if (s->gain_control()) { fake_touch (s->gain_control()); - s->gain_control()->set_value (abs, PBD::Controllable::NoGroup); + s->gain_control()->set_value (s->gain_control()->interface_to_internal (val), PBD::Controllable::NoGroup); return 0; } } @@ -3479,11 +3483,7 @@ OSC::route_set_send_fader (int ssid, int id, float val, lo_message msg) } if (s->send_level_controllable (id)) { -#ifdef MIXBUS abs = s->send_level_controllable(id)->interface_to_internal (val); -#else - abs = slider_position_to_gain_with_max (val, 2.0); // XXX use interface_to_internal, unhardcode 2.0 -#endif s->send_level_controllable (id)->set_value (abs, PBD::Controllable::NoGroup); return 0; } @@ -3555,11 +3555,7 @@ OSC::sel_sendfader (int id, float val, lo_message msg) } if (s->send_level_controllable (send_id)) { -#ifdef MIXBUS abs = s->send_level_controllable(send_id)->interface_to_internal (val); -#else - abs = slider_position_to_gain_with_max (val, 2.0); // XXX interface_to_internal, unhardcode 2.0 -#endif s->send_level_controllable (send_id)->set_value (abs, PBD::Controllable::NoGroup); return 0; } @@ -5005,10 +5001,8 @@ OSC::cue_aux_fader (float position, lo_message msg) boost::shared_ptr s = get_strip (sur->aux, get_address (msg)); if (s) { - float abs; - abs = slider_position_to_gain_with_max (position, 2.0); // XXX use interface_to_internal, unhardcode 2.0 if (s->gain_control()) { - s->gain_control()->set_value (abs, PBD::Controllable::NoGroup); + s->gain_control()->set_value (s->gain_control()->interface_to_internal (position), PBD::Controllable::NoGroup); return 0; } } @@ -5046,11 +5040,9 @@ OSC::cue_send_fader (uint32_t id, float val, lo_message msg) return -1; } boost::shared_ptr s = cue_get_send (id, get_address (msg)); - float abs; if (s) { if (s->gain_control()) { - abs = slider_position_to_gain_with_max (val, 2.0); // XXX use interface_to_internal, unhardcode 2.0 - s->gain_control()->set_value (abs, PBD::Controllable::NoGroup); + s->gain_control()->set_value (s->gain_control()->interface_to_internal(val), PBD::Controllable::NoGroup); return 0; } } diff --git a/libs/surfaces/osc/osc_cue_observer.cc b/libs/surfaces/osc/osc_cue_observer.cc index 727eb8d37b..d36fdaf3a9 100644 --- a/libs/surfaces/osc/osc_cue_observer.cc +++ b/libs/surfaces/osc/osc_cue_observer.cc @@ -223,7 +223,7 @@ OSCCueObserver::send_gain_message (uint32_t id, boost::shared_ptr path = string_compose ("%1/%2", path, id); } lo_message msg = lo_message_new (); - lo_message_add_float (msg, gain_to_position (controllable->get_value())); // XXX use internal_to_interface + lo_message_add_float (msg, controllable->internal_to_interface (controllable->get_value())); gain_timeout[id] = 8; lo_send_message (addr, path.c_str(), msg); diff --git a/libs/surfaces/osc/osc_global_observer.cc b/libs/surfaces/osc/osc_global_observer.cc index 5f5632b2a4..aa890e987f 100644 --- a/libs/surfaces/osc/osc_global_observer.cc +++ b/libs/surfaces/osc/osc_global_observer.cc @@ -261,7 +261,7 @@ void OSCGlobalObserver::send_gain_message (string path, boost::shared_ptr controllable) { if (gainmode) { - float_message (string_compose ("%1fader", path), gain_to_position (controllable->get_value())); // XXX use internal_to_interface + float_message (string_compose ("%1fader", path), controllable->internal_to_interface (controllable->get_value())); text_message (string_compose ("%1name", path), string_compose ("%1%2%3", std::fixed, std::setprecision(2), accurate_coefficient_to_dB (controllable->get_value()))); if (path.find("master") != std::string::npos) { master_timeout = 8; diff --git a/libs/surfaces/osc/osc_route_observer.cc b/libs/surfaces/osc/osc_route_observer.cc index 9075737b37..76c65961b5 100644 --- a/libs/surfaces/osc/osc_route_observer.cc +++ b/libs/surfaces/osc/osc_route_observer.cc @@ -360,7 +360,7 @@ OSCRouteObserver::send_gain_message (string path, boost::shared_ptrget_value())); // XXX use internal_to_interface + lo_message_add_float (msg, controllable->internal_to_interface (controllable->get_value())); text_with_id ("/strip/name", ssid, string_compose ("%1%2%3", std::fixed, std::setprecision(2), accurate_coefficient_to_dB (controllable->get_value()))); gain_timeout = 8; } else { diff --git a/libs/surfaces/osc/osc_select_observer.cc b/libs/surfaces/osc/osc_select_observer.cc index 8438847896..e8b26a3f4a 100644 --- a/libs/surfaces/osc/osc_select_observer.cc +++ b/libs/surfaces/osc/osc_select_observer.cc @@ -636,7 +636,7 @@ OSCSelectObserver::gain_message () if (gainmode) { text_message ("/select/name", string_compose ("%1%2%3", std::fixed, std::setprecision(2), accurate_coefficient_to_dB (value))); gain_timeout = 8; - send_float ("/select/fader", gain_to_position (value)); // XXX use internal_to_interface + send_float ("/select/fader", _strip->gain_control()->internal_to_interface (value)); } else { if (value < 1e-15) { send_float ("/select/gain", -200); @@ -703,11 +703,7 @@ OSCSelectObserver::send_gain (uint32_t id, boost::shared_ptr if (gainmode) { path = "/select/send_fader"; -#ifdef MIXBUS value = controllable->internal_to_interface (controllable->get_value()); -#else - value = gain_to_position (controllable->get_value()); // XXX use internal_to_interface -#endif text_with_id ("/select/send_name" , id, string_compose ("%1%2%3", std::fixed, std::setprecision(2), db)); if (send_timeout.size() > id) { send_timeout[id] = 8; -- cgit v1.2.3