15 : mInput(&input), mBufferSize(blockSize), mFramePointer(-1) {
31 unsigned numFrames = outBuffer.mNumFrames;
32 unsigned copiedSoFar = 0;
42 if (mFramePointer == -1) {
45 mInput->nextBuffer(mInputBuffer);
49 unsigned toCopy =
csl_min((mBufferSize - mFramePointer),
50 (numFrames - copiedSoFar));
52 for (
unsigned i = 0; i < outBuffer.mNumChannels; i++) {
53 unsigned whichIn =
csl_min(i, (mNumChannels - 1));
54 SampleBuffer src = mInputBuffer.buffer(whichIn) + mFramePointer;
60 mFramePointer += toCopy;
61 if (mFramePointer >= (
int) mBufferSize)
63 copiedSoFar += toCopy;
64 if (copiedSoFar >= numFrames)