summaryrefslogtreecommitdiff
path: root/libs/ardour/ardour
diff options
context:
space:
mode:
authorCarl Hetherington <carl@carlh.net>2012-06-11 10:42:30 +0000
committerCarl Hetherington <carl@carlh.net>2012-06-11 10:42:30 +0000
commitc40437430acf4b65d8acb8b084eae8cd2f6f5402 (patch)
treefb86bc9a651b442979d31c827020856e2c08097b /libs/ardour/ardour
parent8f371cd60d3d2680dfd8de7702eb5f43c9f23240 (diff)
Make send automation work (#4734).
git-svn-id: svn://localhost/ardour2/branches/3.0@12650 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/ardour')
-rw-r--r--libs/ardour/ardour/amp.h5
-rw-r--r--libs/ardour/ardour/process_thread.h1
-rw-r--r--libs/ardour/ardour/session.h1
-rw-r--r--libs/ardour/ardour/thread_buffers.h1
4 files changed, 8 insertions, 0 deletions
diff --git a/libs/ardour/ardour/amp.h b/libs/ardour/ardour/amp.h
index fa2eb98ebf..82f93d312b 100644
--- a/libs/ardour/ardour/amp.h
+++ b/libs/ardour/ardour/amp.h
@@ -48,6 +48,8 @@ public:
bool apply_gain () const { return _apply_gain; }
void apply_gain (bool yn) { _apply_gain = yn; }
+ void set_gain_automation_buffer (gain_t *);
+
void setup_gain_automation (framepos_t start_frame, framepos_t end_frame, framecnt_t nframes);
bool apply_gain_automation() const { return _apply_gain_automation; }
@@ -107,6 +109,9 @@ private:
float _current_gain;
boost::shared_ptr<GainControl> _gain_control;
+
+ /** Buffer that we should use for gain automation */
+ gain_t* _gain_automation_buffer;
};
diff --git a/libs/ardour/ardour/process_thread.h b/libs/ardour/ardour/process_thread.h
index 36d8b8d3a7..6dd91aa305 100644
--- a/libs/ardour/ardour/process_thread.h
+++ b/libs/ardour/ardour/process_thread.h
@@ -29,6 +29,7 @@ public:
static BufferSet& get_scratch_buffers (ChanCount count = ChanCount::ZERO);
static BufferSet& get_mix_buffers (ChanCount count = ChanCount::ZERO);
static gain_t* gain_automation_buffer ();
+ static gain_t* send_gain_automation_buffer ();
static pan_t** pan_automation_buffer ();
protected:
diff --git a/libs/ardour/ardour/session.h b/libs/ardour/ardour/session.h
index d47734f6ae..9dd19eb2a1 100644
--- a/libs/ardour/ardour/session.h
+++ b/libs/ardour/ardour/session.h
@@ -743,6 +743,7 @@ class Session : public PBD::StatefulDestructible, public PBD::ScopedConnectionLi
/* buffers for gain and pan */
gain_t* gain_automation_buffer () const;
+ gain_t* send_gain_automation_buffer () const;
pan_t** pan_automation_buffer () const;
void ensure_buffer_set (BufferSet& buffers, const ChanCount& howmany);
diff --git a/libs/ardour/ardour/thread_buffers.h b/libs/ardour/ardour/thread_buffers.h
index f75efa082d..be8cb42282 100644
--- a/libs/ardour/ardour/thread_buffers.h
+++ b/libs/ardour/ardour/thread_buffers.h
@@ -21,6 +21,7 @@ public:
BufferSet* scratch_buffers;
BufferSet* mix_buffers;
gain_t* gain_automation_buffer;
+ gain_t* send_gain_automation_buffer;
pan_t** pan_automation_buffer;
uint32_t npan_buffers;