1
0
mirror of https://github.com/f4exb/sdrangel.git synced 2026-06-01 21:54:55 -04:00

Device MIMO engine fixes

This commit is contained in:
f4exb
2019-09-24 02:10:58 +02:00
parent c5062ac10b
commit aca92c7d32
4 changed files with 30 additions and 5 deletions
+8 -2
View File
@@ -301,13 +301,19 @@ void DSPDeviceMIMOEngine::workSampleSinkFifo(unsigned int sinkIndex)
std::size_t count = sampleFifo->readBegin(sampleFifo->fill(), &part1begin, &part1end, &part2begin, &part2end);
if (part1begin != part1end) { // first part of FIFO data
workSamplePart(part1begin, part1end, sinkIndex);
m_vectorBuffer.write(part1begin, part1end, false);
//workSamplePart(part1begin, part1end, sinkIndex);
}
if (part2begin != part2end) { // second part of FIFO data (used when block wraps around)
workSamplePart(part2begin, part2end, sinkIndex);
m_vectorBuffer.append(part2begin, part2end);
//workSamplePart(part2begin, part2end, sinkIndex);
}
SampleVector::iterator vbegin, vend;
m_vectorBuffer.read(vbegin, vend);
workSamplePart(vbegin, vend, sinkIndex);
sampleFifo->readCommit((unsigned int) count); // adjust FIFO pointers
samplesDone += count;
}