diff options
author | David Robillard <d@drobilla.net> | 2014-11-01 23:29:10 -0400 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2014-11-02 02:10:24 -0500 |
commit | 8a128b33d38172ae525ac798c53bc105bc4e2c64 (patch) | |
tree | 226459f2fec72a9717d12f190d354f72175607dc /libs/ardour/ardour/automation_control.h | |
parent | 6dfb11c2d08201f1a27818955707590b762f5a40 (diff) |
Automation of LV2 plugin properties.
Work towards ParameterDescriptor being used more universally to describe control characteristics.
Diffstat (limited to 'libs/ardour/ardour/automation_control.h')
-rw-r--r-- | libs/ardour/ardour/automation_control.h | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/libs/ardour/ardour/automation_control.h b/libs/ardour/ardour/automation_control.h index 3603ea2e72..639c5b5287 100644 --- a/libs/ardour/ardour/automation_control.h +++ b/libs/ardour/ardour/automation_control.h @@ -29,6 +29,7 @@ #include "ardour/libardour_visibility.h" #include "ardour/automation_list.h" +#include "ardour/parameter_descriptor.h" namespace ARDOUR { @@ -42,11 +43,12 @@ class LIBARDOUR_API AutomationControl : public PBD::Controllable, public Evoral: { public: AutomationControl(ARDOUR::Session&, - const Evoral::Parameter& parameter, - boost::shared_ptr<ARDOUR::AutomationList> l=boost::shared_ptr<ARDOUR::AutomationList>(), - const std::string& name=""); + const Evoral::Parameter& parameter, + const ParameterDescriptor& desc, + boost::shared_ptr<ARDOUR::AutomationList> l=boost::shared_ptr<ARDOUR::AutomationList>(), + const std::string& name=""); - ~AutomationControl (); + ~AutomationControl (); boost::shared_ptr<AutomationList> alist() const { return boost::dynamic_pointer_cast<AutomationList>(_list); @@ -78,16 +80,20 @@ public: void set_value (double); double get_value () const; - double lower() const { return parameter().min(); } - double upper() const { return parameter().max(); } - double normal() const { return parameter().normal(); } - bool toggled() const { return parameter().toggled(); } + double lower() const { return _desc.lower; } + double upper() const { return _desc.upper; } + double normal() const { return _desc.normal; } + bool toggled() const { return _desc.toggled; } + + const ParameterDescriptor& desc() const { return _desc; } const ARDOUR::Session& session() const { return _session; } protected: ARDOUR::Session& _session; + + const ParameterDescriptor _desc; }; |