vibespatial.overlay.split

Split event generation and atomic edge construction.

Extracted from overlay/gpu.py (Phase 30 modularisation).

Public API

  • build_gpu_split_events — create split events from segment intersections

  • build_gpu_atomic_edges — build atomic edges from split events

Internal helpers

  • _segment_metadata — host-side segment metadata extraction

  • _segment_metadata_gpu — GPU-side segment metadata extraction

  • _free_split_event_device_state — release split event GPU buffers

  • _free_atomic_edge_excess — release unneeded atomic edge GPU buffers

Attributes

cp

Functions

Module Contents

vibespatial.overlay.split.cp = None
vibespatial.overlay.split.build_gpu_split_events(left, right, *, intersection_result: vibespatial.spatial.segment_primitives.SegmentIntersectionResult | None = None, dispatch_mode: vibespatial.runtime.ExecutionMode | str = ExecutionMode.GPU, _cached_right_segments: vibespatial.spatial.segment_primitives.DeviceSegmentTable | None = None, require_same_row: bool = False, use_same_row_fast_path: bool | None = None, right_geometry_source_rows: cupy.ndarray | numpy.ndarray | None = None) vibespatial.overlay.types.SplitEventTable
vibespatial.overlay.split.build_gpu_atomic_edges(split_events: vibespatial.overlay.types.SplitEventTable, *, isolate_rows: bool = False) vibespatial.overlay.types.AtomicEdgeTable