perf(lab): stream sealed spatial playback tracks
This commit is contained in:
@@ -344,6 +344,27 @@ class RecordedGeometryStore:
|
||||
points.setflags(write=False)
|
||||
return points
|
||||
|
||||
def playback_points_map(self) -> FloatArray:
|
||||
"""Expose the sealed contiguous map-point track for binary LAB playback.
|
||||
|
||||
The returned array is the exact source-pack point index space. It is
|
||||
read-only and deliberately excludes any UI projection or resampling so
|
||||
the browser can retain it once and derive the current increment by the
|
||||
verified offsets below.
|
||||
"""
|
||||
|
||||
points = np.asarray(self._source["cloud_points_map"], dtype=np.dtype("<f4"))
|
||||
if not points.flags.c_contiguous:
|
||||
raise GeometryProviderError("source playback point track is not contiguous")
|
||||
points.setflags(write=False)
|
||||
return points
|
||||
|
||||
def playback_point_offsets(self) -> tuple[int, ...]:
|
||||
"""Return immutable offsets into :meth:`playback_points_map`."""
|
||||
|
||||
offsets = np.asarray(self._source["cloud_offsets"], dtype=np.int64)
|
||||
return tuple(int(value) for value in offsets)
|
||||
|
||||
def point_step_candidates_for_frame(self, frame_index: int) -> UInt8Array | None:
|
||||
"""Expose the sealed low-step diagnostic in the source point index space.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user