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
A stateful, SCENE-FREE history run that emits a DELTA snapshot instead of mutating a scene — the M1 seam of the off-thread history runner. It remembers, in Self::last_sent, the resident handle it last EMITTED per solid name, so a rerun can tell the applier which displays are UNCHANGED (skip re-tessellating

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.