X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fardour%2Fprocess_thread.cc;h=efcc47fee38cc39abc7153bf4907af3e8d3ec0cb;hb=d92686afb4105b84b014372b6feb0ccc454a5171;hp=d4a3d2f3908e3b89adabcf9e8a0d7683769be01f;hpb=4dc74ae2ea13d2e5a8b481961d507df1ff98df97;p=ardour.git diff --git a/libs/ardour/process_thread.cc b/libs/ardour/process_thread.cc index d4a3d2f390..efcc47fee3 100644 --- a/libs/ardour/process_thread.cc +++ b/libs/ardour/process_thread.cc @@ -116,6 +116,25 @@ ProcessThread::get_scratch_buffers (ChanCount count, bool silence) return *sb; } +BufferSet& +ProcessThread::get_noinplace_buffers (ChanCount count) +{ + ThreadBuffers* tb = _private_thread_buffers.get(); + assert (tb); + + BufferSet* sb = tb->noinplace_buffers; + assert (sb); + + if (count != ChanCount::ZERO) { + assert(sb->available() >= count); + sb->set_count (count); + } else { + sb->set_count (sb->available()); + } + + return *sb; +} + BufferSet& ProcessThread::get_route_buffers (ChanCount count, bool silence) { @@ -168,6 +187,17 @@ ProcessThread::gain_automation_buffer() return g; } +gain_t* +ProcessThread::trim_automation_buffer() +{ + ThreadBuffers* tb = _private_thread_buffers.get(); + assert (tb); + + gain_t *g = tb->trim_automation_buffer; + assert (g); + return g; +} + gain_t* ProcessThread::send_gain_automation_buffer() {