stagingBuffer: rename nDgramsPerFrame=>nSlots

This commit is contained in:
2025-11-15 21:29:59 -04:00
parent d277c29394
commit 8e48ce6ceb
2 changed files with 17 additions and 17 deletions
+13 -13
View File
@@ -83,8 +83,8 @@ void StagingBuffer::computeSlotStrideAndBufferSize()
inputConstraints.framePadToNBytes,
inputConstraints.slotPadToNBytes);
// Calculate total size needed for nDgramsPerFrame slots
size_t slotAreaSize = nDgramsPerFrame * slotStrideNBytes;
// Calculate total size needed for nSlots slots
size_t slotAreaSize = nSlots * slotStrideNBytes;
// Add padding space at buffer start for alignment offset (worst case: max alignment - 1)
size_t alignmentPadding = maxAlignment - 1;
@@ -102,7 +102,7 @@ void StagingBuffer::computeSlotStrideAndBufferSize()
size_t StagingBuffer::calculateFirstSlotOffsetAndValidate(
uint8_t* buffer,
size_t bufferNBytes,
size_t nDgramsPerFrame,
size_t nSlots,
size_t slotStrideNBytes,
const StagingBuffer::IOEngineConstraints& inputConstraints)
{
@@ -150,12 +150,12 @@ size_t StagingBuffer::calculateFirstSlotOffsetAndValidate(
+ ")");
}
if (firstSlotOffsetNBytes + nDgramsPerFrame * slotStrideNBytes
if (firstSlotOffsetNBytes + nSlots * slotStrideNBytes
> bufferNBytes)
{
throw std::runtime_error(std::string(__func__)
+ ": StagingBuffer: buffer size insufficient to hold "
+ std::to_string(nDgramsPerFrame)
+ std::to_string(nSlots)
+ " slots with proper alignment and padding");
}
@@ -165,17 +165,17 @@ size_t StagingBuffer::calculateFirstSlotOffsetAndValidate(
StagingBuffer::StagingBuffer(
const IOEngineConstraints& inputEngineConstraints_,
const IOEngineConstraints& /*outputEngineConstraints*/,
size_t nDgramsPerFrame)
size_t nSlots)
: buffer(nullptr, MmapDeleter(0)), bufferNBytes(0),
nDgramsPerFrame(nDgramsPerFrame), slotStrideNBytes(0),
nSlots(nSlots), slotStrideNBytes(0),
firstSlotOffsetNBytes(0),
inputConstraints(inputEngineConstraints_),
assemblingFlag(false)
{
if (nDgramsPerFrame == 0)
if (nSlots == 0)
{
throw std::invalid_argument(std::string(__func__)
+ ": StagingBuffer: nDgramsPerFrame must be > 0");
+ ": StagingBuffer: nSlots must be > 0");
}
computeSlotStrideAndBufferSize();
@@ -208,14 +208,14 @@ assemblingFlag(false)
// Calculate offset and validate invariants (helper function in .cpp)
firstSlotOffsetNBytes = StagingBuffer::calculateFirstSlotOffsetAndValidate(
buffer.get(), bufferNBytes, nDgramsPerFrame,
buffer.get(), bufferNBytes, nSlots,
slotStrideNBytes, inputConstraints);
// Build FrameAssemblyDesc once
std::vector<FrameAssemblyDesc::SlotDesc> slots;
slots.reserve(nDgramsPerFrame);
slots.reserve(nSlots);
uint8_t *frameBase = buffer.get() + firstSlotOffsetNBytes;
for (size_t i = 0; i < nDgramsPerFrame; ++i)
for (size_t i = 0; i < nSlots; ++i)
{
size_t off = i * slotStrideNBytes;
FrameAssemblyDesc::SlotDesc s{
@@ -225,7 +225,7 @@ assemblingFlag(false)
}
frameDesc = std::make_shared<FrameAssemblyDesc>(
nDgramsPerFrame, inputConstraints.slotPadToNBytes, bufferNBytes,
nSlots, inputConstraints.slotPadToNBytes, bufferNBytes,
std::move(slots));
}
+4 -4
View File
@@ -73,7 +73,7 @@ public:
explicit StagingBuffer(
const IOEngineConstraints& inputEngineConstraints,
const IOEngineConstraints& outputEngineConstraints,
size_t nDgramsPerFrame);
size_t nSlots);
~StagingBuffer() = default;
// Non-copyable, movable
@@ -123,7 +123,7 @@ public:
{
std::ostringstream oss;
oss << "StagingBuffer{"
<< "nDgramsPerFrame=" << nDgramsPerFrame
<< "nSlots=" << nSlots
<< ", bufferNBytes=" << bufferNBytes
<< ", slotStrideNBytes=" << slotStrideNBytes
<< ", constraints=" << inputConstraints.stringify()
@@ -136,7 +136,7 @@ private:
static size_t calculateFirstSlotOffsetAndValidate(
uint8_t* buffer,
size_t bufferNBytes,
size_t nDgramsPerFrame,
size_t nSlots,
size_t slotStrideNBytes,
const IOEngineConstraints& inputConstraints);
@@ -163,7 +163,7 @@ private:
size_t bufferNBytes;
// Layout/invariants
size_t nDgramsPerFrame;
size_t nSlots;
public:
size_t slotStrideNBytes;