mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-09-05 20:06:25 +00:00
ifcviewer: rename sidecar transfer/record types; drop unused element hierarchy (sidecar v17)
Rename the streamer/sidecar transfer and record types to describe what they are rather than how they move: MeshChunk -> StreamedMesh InstanceChunk -> StreamedInstance InstanceCpu -> InstanceInfo PackedElementInfo -> ElementTableRecord uploadMeshChunk -> uploadStreamedMesh uploadInstanceChunk -> uploadStreamedInstance buildMeshChunk -> buildStreamedMesh and the two post-index sidecar metadata blocks: "critical" metadata -> "geometry" metadata (meshes/instances/georef/TOC) "deferred" metadata -> "element" metadata (elements + string table) parseSidecarCritical -> parseSidecarGeometryMetadata parseSidecarDeferred -> parseSidecarElementMetadata The one behavioural change: the element hierarchy (parent_id) was carried through ElementInfo, ElementTableRecord, and the sidecar element table but never consumed, so drop it and bump SIDECAR_VERSION 16 -> 17. No back-compat: regenerate sidecars. sample.ifcview is regenerated at v17. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -122,8 +122,8 @@ public:
|
||||
struct StreamingSidecar metadata);
|
||||
|
||||
// Direct-IFC ingestion (mirrors GL ViewportWindow). The host (typically
|
||||
// a GeometryStreamer running on a worker) calls uploadMeshChunk +
|
||||
// uploadInstanceChunk once per representation / placement as the IFC
|
||||
// a GeometryStreamer running on a worker) calls uploadStreamedMesh +
|
||||
// uploadStreamedInstance once per representation / placement as the IFC
|
||||
// triangulates; finalizeModel commits when the iterator finishes.
|
||||
// Staged in CPU memory; finalizeModel runs the chunk planner over the
|
||||
// staged data, allocates pool slices, and uploads — same render path
|
||||
@@ -131,8 +131,8 @@ public:
|
||||
// every chunk lands `is_resident=true` immediately. The streamer's
|
||||
// model_id is passed through unchanged; the viewport's globally-unique
|
||||
// object_id rebasing happens at finalize time.
|
||||
void uploadMeshChunk(const struct MeshChunk& chunk);
|
||||
void uploadInstanceChunk(const struct InstanceChunk& chunk);
|
||||
void uploadStreamedMesh(const struct StreamedMesh& mesh);
|
||||
void uploadStreamedInstance(const struct StreamedInstance& instance_record);
|
||||
void finalizeModel(uint32_t model_id);
|
||||
|
||||
void removeModel(uint32_t model_id);
|
||||
|
||||
Reference in New Issue
Block a user