diff --git a/Source/Plugins/BasicSpikeDisplay/SpikeDetector/SpikeDetector.cpp b/Source/Plugins/BasicSpikeDisplay/SpikeDetector/SpikeDetector.cpp index 5db1eb2ea3226c0f7ba2f895631ff21e119f41d1..cf3d7d88b7116b64b943aa99bb0be99c8f18b073 100644 --- a/Source/Plugins/BasicSpikeDisplay/SpikeDetector/SpikeDetector.cpp +++ b/Source/Plugins/BasicSpikeDisplay/SpikeDetector/SpikeDetector.cpp @@ -101,8 +101,11 @@ void SpikeDetector::createSpikeChannels() void SpikeDetector::updateSettings() { - if (getNumInputs() > 0) - overflowBuffer.setSize (getNumInputs(), overflowBufferSize); + if (getNumInputs() > 0) + { + overflowBuffer.setSize(getNumInputs(), overflowBufferSize); + overflowBuffer.clear(); + } } @@ -516,7 +519,7 @@ float SpikeDetector::getNextSample (int& chan) } else { - if (sampleIndex < dataBuffer->getNumSamples()) + if (sampleIndex < getNumSamples(chan)) return *dataBuffer->getWritePointer (chan, sampleIndex); else return 0; diff --git a/Source/Plugins/SpikeSorter/SpikeSorter.cpp b/Source/Plugins/SpikeSorter/SpikeSorter.cpp index b95f8cede44d2347326b83b0b85f0ca946c1dd46..6be80a43f2464bb6b26d6c48f51d8b2485f0680a 100644 --- a/Source/Plugins/SpikeSorter/SpikeSorter.cpp +++ b/Source/Plugins/SpikeSorter/SpikeSorter.cpp @@ -174,8 +174,11 @@ void SpikeSorter::updateSettings() mut.enter(); sorterReady = false; int numChannels = getNumInputs(); - if (numChannels > 0) - overflowBuffer.setSize(getNumInputs(), overflowBufferSize); + if (numChannels > 0) + { + overflowBuffer.setSize(getNumInputs(), overflowBufferSize); + overflowBuffer.clear(); + } if (channelBuffers != nullptr) delete channelBuffers; @@ -1047,7 +1050,7 @@ float SpikeSorter::getNextSample(int& chan) // useOverflowBuffer = false; // std::cout << " sample index " << sampleIndex << "from regular buffer" << std::endl; - if (sampleIndex < dataBuffer->getNumSamples()) + if (sampleIndex < getNumSamples(chan)) return (*dataBuffer->getReadPointer(chan, sampleIndex)); else return 0;