SoloControl (Session& session, std::string const & name, Soloable& soloable, Muteable& m);
double get_value () const;
+ double get_save_value() const { return self_soloed(); }
bool can_solo() const;
return self_soloed() || get_masters_value ();
}
bool soloed_by_others () const {
- return _soloed_by_others_downstream || _soloed_by_others_downstream || get_masters_value ();
+ return _soloed_by_others_downstream || _soloed_by_others_upstream || get_masters_value ();
}
uint32_t soloed_by_others_upstream () const {
return _soloed_by_others_upstream;
protected:
void actually_set_value (double, PBD::Controllable::GroupControlDisposition group_override);
- void master_changed (bool from_self, GroupControlDisposition, boost::shared_ptr<AutomationControl> m);
+ void master_changed (bool from_self, GroupControlDisposition, boost::weak_ptr<AutomationControl> m);
void pre_remove_master (boost::shared_ptr<AutomationControl>);
void post_add_master (boost::shared_ptr<AutomationControl>);