X-Git-Url: https://main.carlh.net/gitweb/?p=ardour.git;a=blobdiff_plain;f=libs%2Fardour%2Fslavable_automation_control.cc;h=63784dc3a5bd52b947771d18f8941499af41a507;hp=36e72ba51afbc92eb2fed40dfba90e99b96607f2;hb=74548604be080f01ee50824cfe12b5b542cdecf5;hpb=cd609fb9d8e144366e7946eb2f82e9b6fa5527c1 diff --git a/libs/ardour/slavable_automation_control.cc b/libs/ardour/slavable_automation_control.cc index 36e72ba51a..63784dc3a5 100644 --- a/libs/ardour/slavable_automation_control.cc +++ b/libs/ardour/slavable_automation_control.cc @@ -95,6 +95,20 @@ SlavableAutomationControl::get_value_locked() const return Control::get_double() * get_masters_value_locked (); } +/** Get the current effective `user' value based on automation state */ +double +SlavableAutomationControl::get_value() const +{ + bool from_list = _list && boost::dynamic_pointer_cast(_list)->automation_playback(); + + Glib::Threads::RWLock::ReaderLock lm (master_lock); + if (!from_list) { + return get_value_locked (); + } else { + return Control::get_double (true, _session.transport_frame()) * get_masters_value_locked(); + } +} + void SlavableAutomationControl::actually_set_value (double value, PBD::Controllable::GroupControlDisposition gcd) { @@ -118,20 +132,6 @@ SlavableAutomationControl::actually_set_value (double value, PBD::Controllable:: AutomationControl::actually_set_value (value, gcd); } -/** Get the current effective `user' value based on automation state */ -double -SlavableAutomationControl::get_value() const -{ - bool from_list = _list && boost::dynamic_pointer_cast(_list)->automation_playback(); - - Glib::Threads::RWLock::ReaderLock lm (master_lock); - if (!from_list) { - return get_value_locked (); - } else { - return Control::get_double (true, _session.transport_frame()) * get_masters_value_locked(); - } -} - void SlavableAutomationControl::add_master (boost::shared_ptr m, bool loading) {