Skip to main content

Module pipeline

Module pipeline 

Source
Expand description

History → scene: run a whole feature history through the kernel’s native execute_history (same process, same thread — the solid registry is thread-local) and populate a RenderScene from the resident handles via the kernel’s native display payload accessor. No JSON, no typed-array boundary — the R1 promise.

Structs§

RunOutput
The delta a SceneRunner::run produces: the displayed KERNEL solids IN ORDER plus the run’s SceneBuildReport. The applier walks snapshot in order, reusing or replacing each entry (see the field docs).
SceneBuildReport
Non-fatal diagnostics from a scene build (mirrors the previous app’s run-history reporting: a failed feature halts the remaining features but the solids built so far still display — seeing what a failing history DID build is the point of the artifact).
SceneRunner
Executes history without accessing the render scene and emits display deltas. Tracks resident handles so unchanged solids retain their meshes and GPU buffers when the main thread applies the resulting RunOutput.

Functions§

resident_solid_handles
Execute request and return the FINAL resident solids as (name, handle) in display order — the export lane (STEP/STL) needs the current solids’ resident handles, which the scene build does not itself retain. Run right after a scene build (warm incremental cache) this replays the cached features, so the handles it returns are the very ones the displayed scene was built from; run cold it re-executes and registers fresh (still-valid) handles. Either way the handles are live in the thread-local registry when this returns, ready to hand to brep_kernel::export_step_handles.
scene_from_history
Typed-request variant of scene_from_history_json.
scene_from_history_json
Execute a serialized HistoryRequest (the execute_history_json request shape — a saved part file parses as one) and build the display scene from the final resident solids.
update_scene_from_history
Execute the history and reconcile scene in place (R10 incremental update): reused solids already present keep their SolidDisplay verbatim (stable revision ⇒ the renderer reuses their GPU buffers); everything else is (re-)tessellated from the resident handle; departed solids are dropped.