diff options
Diffstat (limited to 'libs/ardour/ardour/panner.h')
-rw-r--r-- | libs/ardour/ardour/panner.h | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/libs/ardour/ardour/panner.h b/libs/ardour/ardour/panner.h index 0e5ab68525..af3cda94e2 100644 --- a/libs/ardour/ardour/panner.h +++ b/libs/ardour/ardour/panner.h @@ -81,8 +81,9 @@ class StreamPanner : public sigc::trackable, public PBD::Stateful /* XXX this is wrong. for multi-dimensional panners, there must surely be more than 1 automation curve. */ + /* TODO: Panner is-a Automation solves this */ - virtual Curve& automation() = 0; + virtual AutomationList& automation() = 0; sigc::signal<void> Changed; /* for position */ sigc::signal<void> StateChanged; /* for mute */ @@ -149,7 +150,8 @@ class BaseStereoPanner : public StreamPanner void set_automation_state (AutoState); void set_automation_style (AutoStyle); - Curve& automation() { return _automation; } + /* TODO: StreamPanner is-a Automatable? */ + AutomationList& automation() { return _automation; } /* old school automation loading */ @@ -163,7 +165,7 @@ class BaseStereoPanner : public StreamPanner float left_interp; float right_interp; - Curve _automation; + AutomationList _automation; }; class EqualPowerStereoPanner : public BaseStereoPanner @@ -203,8 +205,10 @@ class Multi2dPanner : public StreamPanner /* XXX this is wrong. for multi-dimensional panners, there must surely be more than 1 automation curve. */ + + /* TODO: StreamPanner is-a Automatable? */ - Curve& automation() { return _automation; } + AutomationList& automation() { return _automation; } void distribute (AudioBuffer& src, BufferSet& obufs, gain_t gain_coeff, nframes_t nframes); void distribute_automated (AudioBuffer& src, BufferSet& obufs, @@ -222,7 +226,7 @@ class Multi2dPanner : public StreamPanner int load (istream&, string path, uint32_t&); private: - Curve _automation; + AutomationList _automation; void update (); }; |