Luxar Viewer API Documentation - v2026.9.22
    Preparing search index...
    interface WireMonitorAfterLoadParams {
        monitor: SceneLoaderMonitorPort | null | undefined;
        cachingStore: MultiLevelCachingStore | null;
        l0Cache: DecompressedChunkCache | null;
        sliceCache: SliceCache | null;
        cacheTelemetryState: CacheTelemetryState;
        gpuBufferPool: GPUBufferPool | null;
        profiler: UpdateProfiler | null;
        loaders: Map<string, DataLoader>;
        linesLoaders: Map<string, LinesDataLoader>;
        gsplatLoaders: Map<string, GSplatsDataLoader>;
        meshLoaders: Map<string, MeshDataLoader>;
        lodGroupRegistry: LODGroupRegistry | null;
        sceneGraph: SceneNode;
        drawOrderProvider: DrawOrderProvider | null;
        updateVisibleCounts: () => void;
        committedLODCounts?: (() => ReadonlyMap<string, number>) | null;
        refinementHold?: ((path: string) => RefinementHoldReason | null) | null;
        failedLoads: FailedLoadsProviderPort | null;
    }
    Index
    monitor: SceneLoaderMonitorPort | null | undefined

    The monitor port (no-op if undefined).

    cachingStore: MultiLevelCachingStore | null

    L1/L2 caching store, when caching is enabled.

    l0Cache: DecompressedChunkCache | null

    L0 decompressed-chunk cache, when L0 is enabled.

    sliceCache: SliceCache | null

    SliceCache ("S-cache"), when enabled.

    cacheTelemetryState: CacheTelemetryState

    Resolved cache telemetry state from setupCaches(). Pushed to the monitor before provider wiring so the UI sees the right disabled-reason during the brief pre-provider window.

    gpuBufferPool: GPUBufferPool | null

    GPU buffer pool for points/lines/gsplats geometry.

    profiler: UpdateProfiler | null

    Update profiler (Performance tab), when SceneLoaderManager wired one in.

    loaders: Map<string, DataLoader>

    Per-geometry loader maps for accumulator-stat aggregation.

    linesLoaders: Map<string, LinesDataLoader>
    gsplatLoaders: Map<string, GSplatsDataLoader>
    meshLoaders: Map<string, MeshDataLoader>

    Mesh loaders, for the LOD-progress provider ONLY — mesh has no element accumulator to aggregate (it is not pooled and holds no per-slice working set), so it joins none of the providers above. It has to join this one: a mesh reveal ladder is a progressive loader like the other three, and the scene-graph converter already stamps additiveSublods on its parent, so without the map the tree renders that node's chip as LOD -/N ("not streaming") for the whole reveal.

    lodGroupRegistry: LODGroupRegistry | null

    The scene's LOD-group registry — drives the live substitutive-LOD state (active level / selector mode) in the LOD-progress provider.

    sceneGraph: SceneNode

    The scene-graph SceneNode the loader just built.

    drawOrderProvider: DrawOrderProvider | null

    Live per-mesh draw-order provider (bucket / depthWrite / renderOrder), built by the caller over the THREE root group so this helper stays free of THREE imports. Null in headless tests with no scene.

    updateVisibleCounts: () => void

    Caller-supplied callback that traverses rootGroup and calls monitor.updateVisibleCount once per geometry type. Lives on SceneLoader because it reads the live THREE scene; passing it in keeps this helper free of THREE imports.

    committedLODCounts?: (() => ReadonlyMap<string, number>) | null

    Caller-supplied reader for the per-node committedLODCount stamp, so the Scene-Graph tab reports rungs actually ON SCREEN rather than the loader's cursor. Lives on SceneLoader for the same reason as the two above: it reads the live THREE scene. Null/omitted keeps the pre-existing loader-cursor behaviour.

    refinementHold?: ((path: string) => RefinementHoldReason | null) | null

    Caller-supplied "why is this path's next rung held back?" (SceneLoader. refinementHoldReason: density gate / residency ceiling / null), so the Scene-Graph tab can mark a held rung instead of showing it as streaming.

    failedLoads: FailedLoadsProviderPort | null

    Failed-load records + retry-all from the SceneLoader — powers the Overview tab's failure banner and its Retry action. Null when the host doesn't expose retry (headless tests).