ImGuiJs
imguijs.ImGuiJs (Class)
js-target runtime support for the generated bindings (imguijs.ImGui):
holds the emscripten-built dcimgui module and the scratch memory used to
marshal strings, out-params and small arrays - nothing here allocates
garbage per frame (bump offsets into persistent wasm heap blocks).
The module must be loaded and passed to init() before any ImGui call
(the ceramic imgui plugin does this at startup).
Static Members
The emscripten module (result of the DCImGui() factory promise).
16-byte block for by-value struct returns (ImVec2/ImVec4/ImTextureRef).
64-byte block for scalar out-params (widget macros; 8 bytes per slot).
Two 16-byte blocks for fixed-size array args (float[2..4], int[2..4]).
Native pointer size in bytes (wasm32).
Reset the call-scoped string bump region (start of each binding call).
Copy a Haxe string as UTF-8 into the bump region, return its address (0 for null).
u64 boundary: wasm i64 params take a BigInt (WASM_BIGINT).
u64 boundary: BigInt result back to a Haxe Float.
Copy a Haxe Array into a persistent native f32 buffer; returns its address.
Read a native pointer at addr.
Read a u64 at addr as a Haxe Float (registry ids are small: low half wins).
Copy s (UTF-8, clamped to maxLength bytes on a codepoint boundary,
zero-terminated) into the persistent buffer; returns its address.
Whether the persistent buffer differs from original (no allocation).
The persistent buffer content as a Haxe String (allocates - call on change only).
Private Members