summaryrefslogtreecommitdiff
path: root/libs/ardour/ardour/panner.h
diff options
context:
space:
mode:
Diffstat (limited to 'libs/ardour/ardour/panner.h')
-rw-r--r--libs/ardour/ardour/panner.h14
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 ();
};