Collect plugin runtime profile statistics.
[ardour.git] / libs / ardour / thread_buffers.cc
index 2336ee50bc866327ce802a8323788e59d2a0092d..5aa90a0598cedecd3f53c6ee97fd6c6a2abb0bcb 100644 (file)
@@ -30,11 +30,13 @@ using namespace std;
 ThreadBuffers::ThreadBuffers ()
        : silent_buffers (new BufferSet)
        , scratch_buffers (new BufferSet)
+       , noinplace_buffers (new BufferSet)
        , route_buffers (new BufferSet)
        , mix_buffers (new BufferSet)
        , gain_automation_buffer (0)
        , trim_automation_buffer (0)
        , send_gain_automation_buffer (0)
+       , scratch_automation_buffer (0)
        , pan_automation_buffer (0)
        , npan_buffers (0)
 {
@@ -71,6 +73,7 @@ ThreadBuffers::ensure_buffers (ChanCount howmany, size_t custom)
                }
 
                scratch_buffers->ensure_buffers (*t, count, size);
+               noinplace_buffers->ensure_buffers (*t, count, size);
                mix_buffers->ensure_buffers (*t, count, size);
                silent_buffers->ensure_buffers (*t, count, size);
                route_buffers->ensure_buffers (*t, count, size);
@@ -84,12 +87,14 @@ ThreadBuffers::ensure_buffers (ChanCount howmany, size_t custom)
        trim_automation_buffer = new gain_t[audio_buffer_size];
        delete [] send_gain_automation_buffer;
        send_gain_automation_buffer = new gain_t[audio_buffer_size];
+       delete [] scratch_automation_buffer;
+       scratch_automation_buffer = new gain_t[audio_buffer_size];
 
        allocate_pan_automation_buffers (audio_buffer_size, howmany.n_audio(), false);
 }
 
 void
-ThreadBuffers::allocate_pan_automation_buffers (framecnt_t nframes, uint32_t howmany, bool force)
+ThreadBuffers::allocate_pan_automation_buffers (samplecnt_t nframes, uint32_t howmany, bool force)
 {
        /* we always need at least 2 pan buffers */