* 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; }
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.
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);
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;
protected:
void master_changed (bool, PBD::Controllable::GroupControlDisposition, boost::shared_ptr<AutomationControl>);
- 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<AutomationControl>);
void post_add_master (boost::shared_ptr<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
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;
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). */
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;
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:
~RecordSafeControl() {}
protected:
- bool actually_set_value (double val, Controllable::GroupControlDisposition gcd);
+ void actually_set_value (double val, Controllable::GroupControlDisposition gcd);
private:
Recordable& _recordable;
void master_going_away (boost::weak_ptr<AutomationControl>);
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<AutomationControl>);
virtual void master_changed (bool from_self, GroupControlDisposition gcd, boost::shared_ptr<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);
void master_changed (bool from_self, GroupControlDisposition, boost::shared_ptr<AutomationControl> m);
void pre_remove_master (boost::shared_ptr<AutomationControl>);
void post_add_master (boost::shared_ptr<AutomationControl>);
protected:
void master_changed (bool from_self, PBD::Controllable::GroupControlDisposition gcd, boost::shared_ptr<AutomationControl>);
- bool actually_set_value (double, PBD::Controllable::GroupControlDisposition group_override);
+ void actually_set_value (double, PBD::Controllable::GroupControlDisposition group_override);
private:
Soloable& _soloable;
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;
* (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<AutomationList>(_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);
//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
}
}
-bool
+void
MidiTrack::MidiControl::actually_set_value (double val, PBD::Controllable::GroupControlDisposition group_override)
{
const Evoral::Parameter ¶meter = _list ? _list->parameter() : Control::parameter();
}
if (!valid) {
- return false;
+ return;
}
assert(val <= desc.upper);
_route->write_immediate_event(size, ev);
}
- return AutomationControl::actually_set_value(val, group_override);
+ AutomationControl::actually_set_value(val, group_override);
}
void
set_flags (Controllable::Flag (flags() | Controllable::RealTime));
}
-bool
+void
MonitorControl::actually_set_value (double val, Controllable::GroupControlDisposition gcd)
{
int v = (int) val;
break;
default:
/* illegal value */
- return false;
+ return;
}
_monitoring = MonitorChoice (v);
- return AutomationControl::actually_set_value (val, gcd);
+ AutomationControl::actually_set_value (val, gcd);
}
XMLNode&
}
}
-bool
+void
MuteControl::actually_set_value (double val, Controllable::GroupControlDisposition gcd)
{
if (muted_by_self() != bool (val)) {
_muteable.act_on_mute ();
}
- return SlavableAutomationControl::actually_set_value (val, gcd);
+ SlavableAutomationControl::actually_set_value (val, gcd);
}
void
}
}
-bool
+void
PanControllable::actually_set_value (double v, Controllable::GroupControlDisposition group_override)
{
boost::shared_ptr<Panner> 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;
}
if (can_set) {
- return AutomationControl::actually_set_value (v, group_override);
+ AutomationControl::actually_set_value (v, group_override);
}
-
- return false;
}
std::string
{
}
-bool
+void
PhaseControl::actually_set_value (double val, Controllable::GroupControlDisposition gcd)
{
_phase_invert = boost::dynamic_bitset<> (std::numeric_limits<double>::digits, (unsigned long) val);
- return AutomationControl::actually_set_value (val, gcd);
+ AutomationControl::actually_set_value (val, gcd);
}
/** @param c Audio channel index.
{
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 ();
}
}
{
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 ();
}
/** @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.. */
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&
}
}
-bool
+void
PluginInsert::PluginPropertyControl::actually_set_value (double user_val, Controllable::GroupControlDisposition gcd)
{
/* Old numeric set_value(), coerce to appropriate datatype if possible.
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) {
_value = value;
- return AutomationControl::actually_set_value (user_val, gcd);
+ AutomationControl::actually_set_value (user_val, gcd);
}
XMLNode&
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
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);
}
}
}
-bool
+void
SlavableAutomationControl::actually_set_value (double val, Controllable::GroupControlDisposition group_override)
{
val = std::max (std::min (val, (double)_desc.upper), (double)_desc.lower);
/* 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
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);
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
}
}
-bool
+void
SoloIsolateControl::actually_set_value (double val, PBD::Controllable::GroupControlDisposition gcd)
{
if (!_soloable.can_solo()) {
- return false;
+ return;
}
set_solo_isolated (val, gcd);
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
_list->set_interpolation(Evoral::ControlList::Discrete);
}
-bool
+void
SoloSafeControl::actually_set_value (double val, PBD::Controllable::GroupControlDisposition gcd)
{
_solo_safe = (val ? true : false);
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