diff --git a/libs/ardour/ardour/automation_control.h b/libs/ardour/ardour/automation_control.h index fddb0685ab..158996133c 100644 --- a/libs/ardour/ardour/automation_control.h +++ b/libs/ardour/ardour/automation_control.h @@ -105,7 +105,7 @@ class LIBARDOUR_API AutomationControl * this is only used by automation playback. */ void set_value_unchecked (double val) { - (void) actually_set_value (val, PBD::Controllable::NoGroup); + actually_set_value (val, PBD::Controllable::NoGroup); } double lower() const { return _desc.lower; } @@ -134,7 +134,7 @@ class LIBARDOUR_API AutomationControl Controllable::Changed signal is emitted when necessary. */ - virtual bool actually_set_value (double value, PBD::Controllable::GroupControlDisposition); + virtual void actually_set_value (double value, PBD::Controllable::GroupControlDisposition); /* Session needs to call this method before it queues up the real change for execution in a realtime context. C++ access control sucks. diff --git a/libs/ardour/ardour/midi_track.h b/libs/ardour/ardour/midi_track.h index 8a0f8c9f95..f756812e71 100644 --- a/libs/ardour/ardour/midi_track.h +++ b/libs/ardour/ardour/midi_track.h @@ -95,7 +95,7 @@ public: MidiTrack* _route; private: - bool actually_set_value (double val, PBD::Controllable::GroupControlDisposition group_override); + void actually_set_value (double val, PBD::Controllable::GroupControlDisposition group_override); }; virtual void set_parameter_automation_state (Evoral::Parameter param, AutoState); diff --git a/libs/ardour/ardour/monitor_control.h b/libs/ardour/ardour/monitor_control.h index 362bcfbc30..b18517255e 100644 --- a/libs/ardour/ardour/monitor_control.h +++ b/libs/ardour/ardour/monitor_control.h @@ -46,7 +46,7 @@ class LIBARDOUR_API MonitorControl : public SlavableAutomationControl XMLNode& get_state (); protected: - bool actually_set_value (double, PBD::Controllable::GroupControlDisposition group_override); + void actually_set_value (double, PBD::Controllable::GroupControlDisposition group_override); private: Monitorable& _monitorable; diff --git a/libs/ardour/ardour/mute_control.h b/libs/ardour/ardour/mute_control.h index b324e32908..909f0cbf02 100644 --- a/libs/ardour/ardour/mute_control.h +++ b/libs/ardour/ardour/mute_control.h @@ -71,7 +71,7 @@ class LIBARDOUR_API MuteControl : public SlavableAutomationControl protected: void master_changed (bool, PBD::Controllable::GroupControlDisposition, boost::shared_ptr); - bool actually_set_value (double, PBD::Controllable::GroupControlDisposition group_override); + void actually_set_value (double, PBD::Controllable::GroupControlDisposition group_override); void pre_remove_master (boost::shared_ptr); void post_add_master (boost::shared_ptr); diff --git a/libs/ardour/ardour/pan_controllable.h b/libs/ardour/ardour/pan_controllable.h index 30130e35c8..82aa60fe10 100644 --- a/libs/ardour/ardour/pan_controllable.h +++ b/libs/ardour/ardour/pan_controllable.h @@ -51,7 +51,7 @@ class LIBARDOUR_API PanControllable : public AutomationControl private: Pannable* owner; - bool actually_set_value (double, PBD::Controllable::GroupControlDisposition group_override); + void actually_set_value (double, PBD::Controllable::GroupControlDisposition group_override); }; } // namespace diff --git a/libs/ardour/ardour/phase_control.h b/libs/ardour/ardour/phase_control.h index 489673db2d..0693c8ee50 100644 --- a/libs/ardour/ardour/phase_control.h +++ b/libs/ardour/ardour/phase_control.h @@ -60,7 +60,7 @@ class LIBARDOUR_API PhaseControl : public AutomationControl XMLNode& get_state (); protected: - bool actually_set_value (double, PBD::Controllable::GroupControlDisposition group_override); + void actually_set_value (double, PBD::Controllable::GroupControlDisposition group_override); private: boost::dynamic_bitset<> _phase_invert; diff --git a/libs/ardour/ardour/plugin_insert.h b/libs/ardour/ardour/plugin_insert.h index d3936cc797..474df73e41 100644 --- a/libs/ardour/ardour/plugin_insert.h +++ b/libs/ardour/ardour/plugin_insert.h @@ -198,7 +198,7 @@ class LIBARDOUR_API PluginInsert : public Processor private: PluginInsert* _plugin; - bool actually_set_value (double val, PBD::Controllable::GroupControlDisposition group_override); + void actually_set_value (double val, PBD::Controllable::GroupControlDisposition group_override); }; /** A control that manipulates a plugin property (message). */ @@ -212,7 +212,7 @@ class LIBARDOUR_API PluginInsert : public Processor double get_value (void) const; XMLNode& get_state(); protected: - bool actually_set_value (double value, PBD::Controllable::GroupControlDisposition); + void actually_set_value (double value, PBD::Controllable::GroupControlDisposition); private: PluginInsert* _plugin; diff --git a/libs/ardour/ardour/record_enable_control.h b/libs/ardour/ardour/record_enable_control.h index a9c4750eea..c5cb65c597 100644 --- a/libs/ardour/ardour/record_enable_control.h +++ b/libs/ardour/ardour/record_enable_control.h @@ -49,7 +49,7 @@ class LIBARDOUR_API RecordEnableControl : public SlavableAutomationControl void set_value (double, PBD::Controllable::GroupControlDisposition); protected: - bool actually_set_value (double val, Controllable::GroupControlDisposition gcd); + void actually_set_value (double val, Controllable::GroupControlDisposition gcd); void do_pre_realtime_queue_stuff (double value); private: diff --git a/libs/ardour/ardour/record_safe_control.h b/libs/ardour/ardour/record_safe_control.h index c7432cf3d4..ef062aa9f0 100644 --- a/libs/ardour/ardour/record_safe_control.h +++ b/libs/ardour/ardour/record_safe_control.h @@ -39,7 +39,7 @@ class LIBARDOUR_API RecordSafeControl : public SlavableAutomationControl ~RecordSafeControl() {} protected: - bool actually_set_value (double val, Controllable::GroupControlDisposition gcd); + void actually_set_value (double val, Controllable::GroupControlDisposition gcd); private: Recordable& _recordable; diff --git a/libs/ardour/ardour/slavable_automation_control.h b/libs/ardour/ardour/slavable_automation_control.h index c7133df89d..7e46dd5a74 100644 --- a/libs/ardour/ardour/slavable_automation_control.h +++ b/libs/ardour/ardour/slavable_automation_control.h @@ -102,7 +102,7 @@ class LIBARDOUR_API SlavableAutomationControl : public AutomationControl void master_going_away (boost::weak_ptr); double get_value_locked() const; - bool actually_set_value (double val, PBD::Controllable::GroupControlDisposition group_override); + void actually_set_value (double val, PBD::Controllable::GroupControlDisposition group_override); void update_boolean_masters_records (boost::shared_ptr); virtual void master_changed (bool from_self, GroupControlDisposition gcd, boost::shared_ptr); diff --git a/libs/ardour/ardour/solo_control.h b/libs/ardour/ardour/solo_control.h index 4678ca6049..3f0f522fc3 100644 --- a/libs/ardour/ardour/solo_control.h +++ b/libs/ardour/ardour/solo_control.h @@ -96,7 +96,7 @@ class LIBARDOUR_API SoloControl : public SlavableAutomationControl XMLNode& get_state (); protected: - bool actually_set_value (double, PBD::Controllable::GroupControlDisposition group_override); + void actually_set_value (double, PBD::Controllable::GroupControlDisposition group_override); void master_changed (bool from_self, GroupControlDisposition, boost::shared_ptr m); void pre_remove_master (boost::shared_ptr); void post_add_master (boost::shared_ptr); diff --git a/libs/ardour/ardour/solo_isolate_control.h b/libs/ardour/ardour/solo_isolate_control.h index e77591e272..1e49469067 100644 --- a/libs/ardour/ardour/solo_isolate_control.h +++ b/libs/ardour/ardour/solo_isolate_control.h @@ -74,7 +74,7 @@ class LIBARDOUR_API SoloIsolateControl : public SlavableAutomationControl protected: void master_changed (bool from_self, PBD::Controllable::GroupControlDisposition gcd, boost::shared_ptr); - bool actually_set_value (double, PBD::Controllable::GroupControlDisposition group_override); + void actually_set_value (double, PBD::Controllable::GroupControlDisposition group_override); private: Soloable& _soloable; diff --git a/libs/ardour/ardour/solo_safe_control.h b/libs/ardour/ardour/solo_safe_control.h index ba31692589..e969959e94 100644 --- a/libs/ardour/ardour/solo_safe_control.h +++ b/libs/ardour/ardour/solo_safe_control.h @@ -44,7 +44,7 @@ class LIBARDOUR_API SoloSafeControl : public SlavableAutomationControl XMLNode& get_state (); protected: - bool actually_set_value (double, PBD::Controllable::GroupControlDisposition group_override); + void actually_set_value (double, PBD::Controllable::GroupControlDisposition group_override); private: bool _solo_safe; diff --git a/libs/ardour/automation_control.cc b/libs/ardour/automation_control.cc index 03871cf07c..9a6590ebe8 100644 --- a/libs/ardour/automation_control.cc +++ b/libs/ardour/automation_control.cc @@ -116,11 +116,11 @@ AutomationControl::set_value (double val, PBD::Controllable::GroupControlDisposi * (e.g. record if necessary, etc.) * @param value `user' value */ -bool +void AutomationControl::actually_set_value (double value, PBD::Controllable::GroupControlDisposition gcd) { bool to_list = _list && boost::dynamic_pointer_cast(_list)->automation_write(); - const double old_value = get_value (); + //const double old_value = Control::user_double (); Control::set_double (value, _session.transport_frame(), to_list); @@ -128,12 +128,7 @@ AutomationControl::actually_set_value (double value, PBD::Controllable::GroupCon //std::cerr << "++++ Changed (" << enum_2_string (at) << ", " << enum_2_string (gcd) << ") = " << value //<< " (was " << old_value << ") @ " << this << std::endl; - if (old_value != value) { - Changed (true, gcd); - return true; - } - - return false; + Changed (true, gcd); } void diff --git a/libs/ardour/midi_track.cc b/libs/ardour/midi_track.cc index ac5cfc098a..f1344e7697 100644 --- a/libs/ardour/midi_track.cc +++ b/libs/ardour/midi_track.cc @@ -712,7 +712,7 @@ MidiTrack::set_parameter_automation_state (Evoral::Parameter param, AutoState st } } -bool +void MidiTrack::MidiControl::actually_set_value (double val, PBD::Controllable::GroupControlDisposition group_override) { const Evoral::Parameter ¶meter = _list ? _list->parameter() : Control::parameter(); @@ -732,7 +732,7 @@ MidiTrack::MidiControl::actually_set_value (double val, PBD::Controllable::Group } if (!valid) { - return false; + return; } assert(val <= desc.upper); @@ -776,7 +776,7 @@ MidiTrack::MidiControl::actually_set_value (double val, PBD::Controllable::Group _route->write_immediate_event(size, ev); } - return AutomationControl::actually_set_value(val, group_override); + AutomationControl::actually_set_value(val, group_override); } void diff --git a/libs/ardour/monitor_control.cc b/libs/ardour/monitor_control.cc index a5907f769f..907a7473d7 100644 --- a/libs/ardour/monitor_control.cc +++ b/libs/ardour/monitor_control.cc @@ -36,7 +36,7 @@ MonitorControl::MonitorControl (Session& session, std::string const & name, Moni set_flags (Controllable::Flag (flags() | Controllable::RealTime)); } -bool +void MonitorControl::actually_set_value (double val, Controllable::GroupControlDisposition gcd) { int v = (int) val; @@ -48,11 +48,11 @@ MonitorControl::actually_set_value (double val, Controllable::GroupControlDispos break; default: /* illegal value */ - return false; + return; } _monitoring = MonitorChoice (v); - return AutomationControl::actually_set_value (val, gcd); + AutomationControl::actually_set_value (val, gcd); } XMLNode& diff --git a/libs/ardour/mute_control.cc b/libs/ardour/mute_control.cc index 1b7f0f08f8..5b38547366 100644 --- a/libs/ardour/mute_control.cc +++ b/libs/ardour/mute_control.cc @@ -74,7 +74,7 @@ MuteControl::pre_remove_master (boost::shared_ptr m) } } -bool +void MuteControl::actually_set_value (double val, Controllable::GroupControlDisposition gcd) { if (muted_by_self() != bool (val)) { @@ -86,7 +86,7 @@ MuteControl::actually_set_value (double val, Controllable::GroupControlDispositi _muteable.act_on_mute (); } - return SlavableAutomationControl::actually_set_value (val, gcd); + SlavableAutomationControl::actually_set_value (val, gcd); } void diff --git a/libs/ardour/pan_controllable.cc b/libs/ardour/pan_controllable.cc index e4ad360910..89842b124b 100644 --- a/libs/ardour/pan_controllable.cc +++ b/libs/ardour/pan_controllable.cc @@ -34,14 +34,15 @@ PanControllable::lower () const } } -bool +void PanControllable::actually_set_value (double v, Controllable::GroupControlDisposition group_override) { boost::shared_ptr p = owner->panner(); if (!p) { /* no panner: just do it */ - return AutomationControl::actually_set_value (v, group_override); + AutomationControl::actually_set_value (v, group_override); + return; } bool can_set = false; @@ -61,10 +62,8 @@ PanControllable::actually_set_value (double v, Controllable::GroupControlDisposi } if (can_set) { - return AutomationControl::actually_set_value (v, group_override); + AutomationControl::actually_set_value (v, group_override); } - - return false; } std::string diff --git a/libs/ardour/phase_control.cc b/libs/ardour/phase_control.cc index 96d0d375b6..9757c104b9 100644 --- a/libs/ardour/phase_control.cc +++ b/libs/ardour/phase_control.cc @@ -32,12 +32,12 @@ PhaseControl::PhaseControl (Session& session, std::string const & name) { } -bool +void PhaseControl::actually_set_value (double val, Controllable::GroupControlDisposition gcd) { _phase_invert = boost::dynamic_bitset<> (std::numeric_limits::digits, (unsigned long) val); - return AutomationControl::actually_set_value (val, gcd); + AutomationControl::actually_set_value (val, gcd); } /** @param c Audio channel index. @@ -48,7 +48,7 @@ PhaseControl::set_phase_invert (uint32_t c, bool yn) { if (_phase_invert[c] != yn) { _phase_invert[c] = yn; - (void) AutomationControl::actually_set_value (_phase_invert.to_ulong(), Controllable::NoGroup); + AutomationControl::actually_set_value (_phase_invert.to_ulong(), Controllable::NoGroup); _session.set_dirty (); } } @@ -58,7 +58,7 @@ PhaseControl::set_phase_invert (boost::dynamic_bitset<> p) { if (_phase_invert != p) { _phase_invert = p; - (void) AutomationControl::actually_set_value (_phase_invert.to_ulong(), Controllable::NoGroup); + AutomationControl::actually_set_value (_phase_invert.to_ulong(), Controllable::NoGroup); Changed (true, Controllable::NoGroup); /* EMIT SIGNAL */ _session.set_dirty (); } diff --git a/libs/ardour/plugin_insert.cc b/libs/ardour/plugin_insert.cc index a8348c1df3..2283f99e4b 100644 --- a/libs/ardour/plugin_insert.cc +++ b/libs/ardour/plugin_insert.cc @@ -2767,7 +2767,7 @@ PluginInsert::PluginControl::PluginControl (PluginInsert* p, /** @param val `user' value */ -bool +void PluginInsert::PluginControl::actually_set_value (double user_val, PBD::Controllable::GroupControlDisposition group_override) { /* FIXME: probably should be taking out some lock here.. */ @@ -2781,13 +2781,13 @@ PluginInsert::PluginControl::actually_set_value (double user_val, PBD::Controlla iasp->set_parameter (_list->parameter().id(), user_val); } - return AutomationControl::actually_set_value (user_val, group_override); + AutomationControl::actually_set_value (user_val, group_override); } void PluginInsert::PluginControl::catch_up_with_external_value (double user_val) { - (void) AutomationControl::actually_set_value (user_val, Controllable::NoGroup); + AutomationControl::actually_set_value (user_val, Controllable::NoGroup); } XMLNode& @@ -2834,7 +2834,7 @@ PluginInsert::PluginPropertyControl::PluginPropertyControl (PluginInsert* } } -bool +void PluginInsert::PluginPropertyControl::actually_set_value (double user_val, Controllable::GroupControlDisposition gcd) { /* Old numeric set_value(), coerce to appropriate datatype if possible. @@ -2843,7 +2843,7 @@ PluginInsert::PluginPropertyControl::actually_set_value (double user_val, Contro const Variant value(_desc.datatype, user_val); if (value.type() == Variant::NOTHING) { error << "set_value(double) called for non-numeric property" << endmsg; - return false; + return; } for (Plugins::iterator i = _plugin->_plugins.begin(); i != _plugin->_plugins.end(); ++i) { @@ -2852,7 +2852,7 @@ PluginInsert::PluginPropertyControl::actually_set_value (double user_val, Contro _value = value; - return AutomationControl::actually_set_value (user_val, gcd); + AutomationControl::actually_set_value (user_val, gcd); } XMLNode& diff --git a/libs/ardour/record_enable_control.cc b/libs/ardour/record_enable_control.cc index c83c0d186d..f3512c3204 100644 --- a/libs/ardour/record_enable_control.cc +++ b/libs/ardour/record_enable_control.cc @@ -45,15 +45,15 @@ RecordEnableControl::set_value (double val, Controllable::GroupControlDispositio SlavableAutomationControl::set_value (val, gcd); } -bool +void RecordEnableControl::actually_set_value (double val, Controllable::GroupControlDisposition gcd) { if (val && !_recordable.can_be_record_enabled()) { std::cerr << "rec-enable not allowed\n"; - return false; + return; } - return SlavableAutomationControl::actually_set_value (val, gcd); + SlavableAutomationControl::actually_set_value (val, gcd); } void diff --git a/libs/ardour/record_safe_control.cc b/libs/ardour/record_safe_control.cc index d9c698cbdb..f3036e04ea 100644 --- a/libs/ardour/record_safe_control.cc +++ b/libs/ardour/record_safe_control.cc @@ -36,14 +36,14 @@ RecordSafeControl::RecordSafeControl (Session& session, std::string const & name set_flags (Controllable::Flag (flags() | Controllable::RealTime)); } -bool +void RecordSafeControl::actually_set_value (double val, Controllable::GroupControlDisposition gcd) { if (val && !_recordable.can_be_record_safe()) { std::cerr << "rec-enable not allowed\n"; - return false; + return; } - return SlavableAutomationControl::actually_set_value (val, gcd); + SlavableAutomationControl::actually_set_value (val, gcd); } diff --git a/libs/ardour/slavable_automation_control.cc b/libs/ardour/slavable_automation_control.cc index 2f67946705..a80598439d 100644 --- a/libs/ardour/slavable_automation_control.cc +++ b/libs/ardour/slavable_automation_control.cc @@ -96,7 +96,7 @@ SlavableAutomationControl::get_value() const } } -bool +void SlavableAutomationControl::actually_set_value (double val, Controllable::GroupControlDisposition group_override) { val = std::max (std::min (val, (double)_desc.upper), (double)_desc.lower); @@ -112,12 +112,9 @@ SlavableAutomationControl::actually_set_value (double val, Controllable::GroupCo /* this sets the Evoral::Control::_user_value for us, which will be retrieved by AutomationControl::get_value () */ - if (AutomationControl::actually_set_value (val, group_override)) { - _session.set_dirty (); - return true; - } + AutomationControl::actually_set_value (val, group_override); - return false; + _session.set_dirty (); } void diff --git a/libs/ardour/solo_control.cc b/libs/ardour/solo_control.cc index ca41ee7aac..087e5d04ab 100644 --- a/libs/ardour/solo_control.cc +++ b/libs/ardour/solo_control.cc @@ -157,11 +157,11 @@ SoloControl::mod_solo_by_others_upstream (int32_t delta) Changed (false, Controllable::NoGroup); /* EMIT SIGNAL */ } -bool +void SoloControl::actually_set_value (double val, PBD::Controllable::GroupControlDisposition group_override) { if (_soloable.is_safe() || !_soloable.can_solo()) { - return false; + return; } set_self_solo (val == 1.0); @@ -170,7 +170,7 @@ SoloControl::actually_set_value (double val, PBD::Controllable::GroupControlDisp be retrieved by AutomationControl::get_value (), and emits Changed */ - return SlavableAutomationControl::actually_set_value (val, group_override); + SlavableAutomationControl::actually_set_value (val, group_override); } double diff --git a/libs/ardour/solo_isolate_control.cc b/libs/ardour/solo_isolate_control.cc index ebd046fba6..7964f7eb66 100644 --- a/libs/ardour/solo_isolate_control.cc +++ b/libs/ardour/solo_isolate_control.cc @@ -88,11 +88,11 @@ SoloIsolateControl::mod_solo_isolated_by_upstream (int32_t delta) } } -bool +void SoloIsolateControl::actually_set_value (double val, PBD::Controllable::GroupControlDisposition gcd) { if (!_soloable.can_solo()) { - return false; + return; } set_solo_isolated (val, gcd); @@ -101,12 +101,8 @@ SoloIsolateControl::actually_set_value (double val, PBD::Controllable::GroupCont be retrieved by AutomationControl::get_value (), and emits Changed */ - if (AutomationControl::actually_set_value (val, gcd)) { - _session.set_dirty (); - return true; - } - - return false; + AutomationControl::actually_set_value (val, gcd); + _session.set_dirty (); } void diff --git a/libs/ardour/solo_safe_control.cc b/libs/ardour/solo_safe_control.cc index 7e8de603a7..01d56ddf58 100644 --- a/libs/ardour/solo_safe_control.cc +++ b/libs/ardour/solo_safe_control.cc @@ -36,7 +36,7 @@ SoloSafeControl::SoloSafeControl (Session& session, std::string const & name) _list->set_interpolation(Evoral::ControlList::Discrete); } -bool +void SoloSafeControl::actually_set_value (double val, PBD::Controllable::GroupControlDisposition gcd) { _solo_safe = (val ? true : false); @@ -45,12 +45,8 @@ SoloSafeControl::actually_set_value (double val, PBD::Controllable::GroupControl be retrieved by AutomationControl::get_value (), and emits Changed */ - if (AutomationControl::actually_set_value (val, gcd)) { - _session.set_dirty (); - return true; - } - - return false; + AutomationControl::actually_set_value (val, gcd); + _session.set_dirty (); } double