Add PanControllable::get_user_string() (provide indirect access to Panner::value_as_string(); make ::get_user_string() use a const arg everywhere

This commit is contained in:
Paul Davis 2016-05-16 16:18:52 -04:00
parent 8346fab567
commit 534b2de35b
15 changed files with 19 additions and 13 deletions

View File

@ -79,7 +79,7 @@ public:
return _gain_control;
}
std::string value_as_string (boost::shared_ptr<AutomationControl>) const;
std::string value_as_string (boost::shared_ptr<const AutomationControl>) const;
private:
bool _denormal_protection;

View File

@ -69,7 +69,7 @@ public:
virtual void transport_stopped (framepos_t now);
virtual std::string describe_parameter(Evoral::Parameter param);
virtual std::string value_as_string (boost::shared_ptr<AutomationControl>) const;
virtual std::string value_as_string (boost::shared_ptr<const AutomationControl>) const;
AutoState get_parameter_automation_state (Evoral::Parameter param);
virtual void set_parameter_automation_state (Evoral::Parameter param, AutoState);

View File

@ -47,6 +47,7 @@ class LIBARDOUR_API PanControllable : public AutomationControl
{}
double lower () const;
std::string get_user_string () const;
private:
Pannable* owner;

View File

@ -68,7 +68,7 @@ class LIBARDOUR_API Pannable : public PBD::Stateful, public Automatable, public
return ((_auto_state & Write) || ((_auto_state & Touch) && touching()));
}
std::string value_as_string (boost::shared_ptr<AutomationControl>) const;
std::string value_as_string (boost::shared_ptr<const AutomationControl>) const;
void start_touch (double when);
void stop_touch (bool mark, double when);

View File

@ -110,7 +110,7 @@ public:
virtual std::set<Evoral::Parameter> what_can_be_automated() const;
virtual std::string describe_parameter (Evoral::Parameter);
virtual std::string value_as_string (boost::shared_ptr<AutomationControl>) const;
virtual std::string value_as_string (boost::shared_ptr<const AutomationControl>) const;
bool touching() const;

View File

@ -77,7 +77,7 @@ class LIBARDOUR_API Send : public Delivery
bool set_name (const std::string& str);
std::string value_as_string (boost::shared_ptr<AutomationControl>) const;
std::string value_as_string (boost::shared_ptr<const AutomationControl>) const;
static uint32_t how_many_sends();
static std::string name_and_id_new_send (Session&, Delivery::Role r, uint32_t&, bool);

View File

@ -66,3 +66,8 @@ PanControllable::actually_set_value (double v, Controllable::GroupControlDisposi
}
}
std::string
PanControllable::get_user_string () const
{
return owner->value_as_string (shared_from_this());
}

View File

@ -363,7 +363,7 @@ Panner1in2out::describe_parameter (Evoral::Parameter p)
}
string
Panner1in2out::value_as_string (boost::shared_ptr<AutomationControl> ac) const
Panner1in2out::value_as_string (boost::shared_ptr<const AutomationControl> ac) const
{
/* DO NOT USE LocaleGuard HERE */
double val = ac->get_value();

View File

@ -56,7 +56,7 @@ class Panner1in2out : public Panner
static Panner* factory (boost::shared_ptr<Pannable>, boost::shared_ptr<Speakers>);
std::string describe_parameter (Evoral::Parameter);
std::string value_as_string (boost::shared_ptr<AutomationControl>) const;
std::string value_as_string (boost::shared_ptr<const AutomationControl>) const;
XMLNode& get_state ();

View File

@ -508,7 +508,7 @@ Panner2in2out::describe_parameter (Evoral::Parameter p)
}
string
Panner2in2out::value_as_string (boost::shared_ptr<AutomationControl> ac) const
Panner2in2out::value_as_string (boost::shared_ptr<const AutomationControl> ac) const
{
/* DO NOT USE LocaleGuard HERE */
double val = ac->get_value();

View File

@ -63,7 +63,7 @@ class Panner2in2out : public Panner
static Panner* factory (boost::shared_ptr<Pannable>, boost::shared_ptr<Speakers>);
std::string describe_parameter (Evoral::Parameter);
std::string value_as_string (boost::shared_ptr<AutomationControl>) const;
std::string value_as_string (boost::shared_ptr<const AutomationControl>) const;
XMLNode& get_state ();

View File

@ -296,7 +296,7 @@ Pannerbalance::describe_parameter (Evoral::Parameter p)
}
string
Pannerbalance::value_as_string (boost::shared_ptr<AutomationControl> ac) const
Pannerbalance::value_as_string (boost::shared_ptr<const AutomationControl> ac) const
{
/* DO NOT USE LocaleGuard HERE */
double val = ac->get_value();

View File

@ -57,7 +57,7 @@ class Pannerbalance : public Panner
static Panner* factory (boost::shared_ptr<Pannable>, boost::shared_ptr<Speakers>);
std::string describe_parameter (Evoral::Parameter);
std::string value_as_string (boost::shared_ptr<AutomationControl>) const;
std::string value_as_string (boost::shared_ptr<const AutomationControl>) const;
XMLNode& get_state ();

View File

@ -420,7 +420,7 @@ VBAPanner::describe_parameter (Evoral::Parameter p)
}
string
VBAPanner::value_as_string (boost::shared_ptr<AutomationControl> ac) const
VBAPanner::value_as_string (boost::shared_ptr<const AutomationControl> ac) const
{
/* DO NOT USE LocaleGuard HERE */
double val = ac->get_value();

View File

@ -57,7 +57,7 @@ public:
void set_azimuth_elevation (double azimuth, double elevation);
std::string describe_parameter (Evoral::Parameter);
std::string value_as_string (boost::shared_ptr<AutomationControl>) const;
std::string value_as_string (boost::shared_ptr<const AutomationControl>) const;
XMLNode& get_state ();