Skip to content

UBoxStacker

UObject that stacks BoxPoint inputs in a ring buffer and exposes them as one BoxPoint.

Each push stores one BoxPoint (e.g. one observation frame). The stacked output inserts or expands a dimension at StackDimensionIndex; bAddNewDimension selects insert vs expand. Index 0 = newest, highest index = oldest. Memory layout is row-major (C-order).

class UBoxStacker : public UStackerBase

Methods

Public

GetStacked

virtual void GetStacked(FInstancedStruct &OutStackedPoint) override

Fills the output with the stacked BoxPoint.

Parameters

  • OutStackedPoint (FInstancedStruct)

GetStacked

void GetStacked(FBoxPoint &OutStackedPoint)

Fills the output with the stacked BoxPoint.

Parameters

  • OutStackedPoint (FBoxPoint)

Push

virtual void Push(const FInstancedStruct &InPoint,
FInstancedStruct &OutStackedPoint) override

Pushes a point into the ring buffer (overwrites oldest when full).

Parameters

  • InPoint (const FInstancedStruct)

  • OutStackedPoint (FInstancedStruct)


GetStackedSpace

virtual void GetStackedSpace(FInstancedStruct &OutSpace) const override

Returns a BoxSpace containing the stacked space.

Parameters

  • OutSpace (FInstancedStruct)

GetStackedSpace

void GetStackedSpace(FBoxSpace &OutSpace) const

Returns a BoxSpace containing the stacked space.

Parameters

  • OutSpace (FBoxSpace)

Protected

ValidateDefaultPointAndSpace

virtual void ValidateDefaultPointAndSpace() override

Validates that default point/space types match box stacking expectations.

Attributes

StackDimensionIndex

int32 StackDimensionIndex = 0

Index at which the stack dimension is inserted or expanded (0-based).


bAddNewDimension

bool bAddNewDimension = true

If true, insert a new dimension of size StackSize at StackDimensionIndex.

Source: Source/Schola/Public/Adapters/BoxStacker.h