PrivatecenterPrivateamplitudePrivatecholeskyPrivatecolorPrivatetypesPrivatehasPrivate_Flips to true on dispose(); fill/ensureCapacity then throw.
PrivateusedHighest splat index touched by any fill() call.
PrivatecapacityPrivatendimPrivatecholeskyPrivatecolorComponents per color item: 3 (RGB) or 4 (RGBA — alpha = per-splat opacity).
PrivateallocationsPrivatetotalPrivateassertIntrospection — true if dispose() has been called.
Declare the color layout (3 = RGB, 4 = RGBA) BEFORE the first color fill. The loader knows the layout from the zarr array shape at open time; the accumulator needs it to size every color buffer. Throws if colors were already written with a different layout — the layout is a property of the dataset, not of an individual load.
PrivateinitializeInitialize types from first data fill (like Points accumulator)
Ensure capacity (grow if needed)
true if capacity was grown
CORRECTED: Returns LoadedGSplatsData with camelCase choleskyFactors
Fill accumulator buffers with multi-type support
Detects attribute types on first fill and creates appropriately-typed buffers. Subsequent fills must use matching types. Preserves native types (no conversion).
Get statistics
Dispose (release memory)
GSplats data accumulator with FULL multi-type support
CRITICAL FIX: camelCase choleskyFactors (not snake_case cholesky_factors)
Handles Float32Array, Uint8Array, and Uint16Array for colors natively (no conversion) to maintain memory efficiency and consistency with multi-type GPU buffer pool.
Type is detected on first fill() and remains fixed for the accumulator's lifetime.