@ifc-lite/wasm 1.14.5 → 1.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +5 -2
- package/pkg/ifc-lite.d.ts +51 -34
- package/pkg/ifc-lite.js +148 -190
- package/pkg/ifc-lite_bg.wasm +0 -0
package/package.json
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
"IFC-Lite Contributors"
|
|
6
6
|
],
|
|
7
7
|
"description": "WebAssembly bindings for IFC-Lite",
|
|
8
|
-
"version": "1.
|
|
8
|
+
"version": "1.15.0",
|
|
9
9
|
"license": "MPL-2.0",
|
|
10
10
|
"repository": {
|
|
11
11
|
"type": "git",
|
|
@@ -32,5 +32,8 @@
|
|
|
32
32
|
"wasm",
|
|
33
33
|
"webassembly",
|
|
34
34
|
"aec"
|
|
35
|
-
]
|
|
35
|
+
],
|
|
36
|
+
"scripts": {
|
|
37
|
+
"test": "node --test test/*.test.mjs"
|
|
38
|
+
}
|
|
36
39
|
}
|
package/pkg/ifc-lite.d.ts
CHANGED
|
@@ -254,6 +254,38 @@ export class IfcAPI {
|
|
|
254
254
|
* ```
|
|
255
255
|
*/
|
|
256
256
|
parseMeshesAsync(content: string, options: any): Promise<any>;
|
|
257
|
+
/**
|
|
258
|
+
* Fast pre-pass: scans for geometry entities ONLY (skips style/void/material resolution).
|
|
259
|
+
* Returns job list + unit scale + RTC offset in ~1-2s instead of ~6s.
|
|
260
|
+
* Geometry workers can start immediately with default colors + no void subtraction.
|
|
261
|
+
* A parallel style worker can run buildPrePassOnce for correct colors later.
|
|
262
|
+
*/
|
|
263
|
+
buildPrePassFast(data: Uint8Array): any;
|
|
264
|
+
/**
|
|
265
|
+
* Run the pre-pass ONCE and return serialized results for worker distribution.
|
|
266
|
+
* Takes raw bytes (&[u8]) to avoid TextDecoder overhead.
|
|
267
|
+
*/
|
|
268
|
+
buildPrePassOnce(data: Uint8Array): any;
|
|
269
|
+
/**
|
|
270
|
+
* Parse a subset of IFC geometry entities by index range.
|
|
271
|
+
*
|
|
272
|
+
* Performs the full pre-pass (entity index, combined style/void/brep scan)
|
|
273
|
+
* but only processes geometry entities whose index (in the combined
|
|
274
|
+
* simple + complex job list) falls within `[start_idx, end_idx)`.
|
|
275
|
+
*
|
|
276
|
+
* This enables Web Worker parallelization: each worker processes a
|
|
277
|
+
* disjoint slice of the entity list while sharing the same pre-pass data.
|
|
278
|
+
*
|
|
279
|
+
* Example:
|
|
280
|
+
* ```javascript
|
|
281
|
+
* const api = new IfcAPI();
|
|
282
|
+
* // Worker 1: entities 0..500
|
|
283
|
+
* const batch1 = api.parseMeshesSubset(content, 0, 500);
|
|
284
|
+
* // Worker 2: entities 500..1000
|
|
285
|
+
* const batch2 = api.parseMeshesSubset(content, 500, 1000);
|
|
286
|
+
* ```
|
|
287
|
+
*/
|
|
288
|
+
parseMeshesSubset(content: string, start_idx: number, end_idx: number, skip_expensive: boolean): MeshCollection;
|
|
257
289
|
/**
|
|
258
290
|
* Parse IFC file and return GPU-ready geometry for zero-copy upload
|
|
259
291
|
*
|
|
@@ -312,6 +344,11 @@ export class IfcAPI {
|
|
|
312
344
|
* ```
|
|
313
345
|
*/
|
|
314
346
|
parseMeshesInstanced(content: string): InstancedMeshCollection;
|
|
347
|
+
/**
|
|
348
|
+
* Process geometry for a subset of pre-scanned entities.
|
|
349
|
+
* Takes raw bytes and pre-pass data from buildPrePassOnce.
|
|
350
|
+
*/
|
|
351
|
+
processGeometryBatch(data: Uint8Array, jobs_flat: Uint32Array, unit_scale: number, rtc_x: number, rtc_y: number, rtc_z: number, needs_shift: boolean, void_keys: Uint32Array, void_counts: Uint32Array, void_values: Uint32Array, style_ids: Uint32Array, style_colors: Uint8Array): MeshCollection;
|
|
315
352
|
/**
|
|
316
353
|
* Parse IFC file with streaming GPU-ready geometry batches
|
|
317
354
|
*
|
|
@@ -830,8 +867,6 @@ export function get_memory(): any;
|
|
|
830
867
|
*/
|
|
831
868
|
export function init(): void;
|
|
832
869
|
|
|
833
|
-
export function initThreadPool(num_threads: number): Promise<any>;
|
|
834
|
-
|
|
835
870
|
/**
|
|
836
871
|
* Get the version of IFC-Lite.
|
|
837
872
|
*
|
|
@@ -847,20 +882,10 @@ export function initThreadPool(num_threads: number): Promise<any>;
|
|
|
847
882
|
*/
|
|
848
883
|
export function version(): string;
|
|
849
884
|
|
|
850
|
-
export class wbg_rayon_PoolBuilder {
|
|
851
|
-
private constructor();
|
|
852
|
-
free(): void;
|
|
853
|
-
[Symbol.dispose](): void;
|
|
854
|
-
numThreads(): number;
|
|
855
|
-
build(): void;
|
|
856
|
-
receiver(): number;
|
|
857
|
-
}
|
|
858
|
-
|
|
859
|
-
export function wbg_rayon_start_worker(receiver: number): void;
|
|
860
|
-
|
|
861
885
|
export type InitInput = RequestInfo | URL | Response | BufferSource | WebAssembly.Module;
|
|
862
886
|
|
|
863
887
|
export interface InitOutput {
|
|
888
|
+
readonly memory: WebAssembly.Memory;
|
|
864
889
|
readonly __wbg_georeferencejs_free: (a: number, b: number) => void;
|
|
865
890
|
readonly __wbg_get_georeferencejs_eastings: (a: number) => number;
|
|
866
891
|
readonly __wbg_get_georeferencejs_northings: (a: number) => number;
|
|
@@ -938,6 +963,8 @@ export interface InitOutput {
|
|
|
938
963
|
readonly gpumeshmetadata_indexOffset: (a: number) => number;
|
|
939
964
|
readonly gpumeshmetadata_vertexCount: (a: number) => number;
|
|
940
965
|
readonly gpumeshmetadata_vertexOffset: (a: number) => number;
|
|
966
|
+
readonly ifcapi_buildPrePassFast: (a: number, b: number, c: number) => number;
|
|
967
|
+
readonly ifcapi_buildPrePassOnce: (a: number, b: number, c: number) => number;
|
|
941
968
|
readonly ifcapi_debugProcessEntity953: (a: number, b: number, c: number, d: number) => void;
|
|
942
969
|
readonly ifcapi_debugProcessFirstWall: (a: number, b: number, c: number, d: number) => void;
|
|
943
970
|
readonly ifcapi_getGeoReference: (a: number, b: number, c: number) => number;
|
|
@@ -949,6 +976,7 @@ export interface InitOutput {
|
|
|
949
976
|
readonly ifcapi_parseMeshesAsync: (a: number, b: number, c: number, d: number) => number;
|
|
950
977
|
readonly ifcapi_parseMeshesInstanced: (a: number, b: number, c: number) => number;
|
|
951
978
|
readonly ifcapi_parseMeshesInstancedAsync: (a: number, b: number, c: number, d: number) => number;
|
|
979
|
+
readonly ifcapi_parseMeshesSubset: (a: number, b: number, c: number, d: number, e: number, f: number) => number;
|
|
952
980
|
readonly ifcapi_parseMeshesWithRtc: (a: number, b: number, c: number) => number;
|
|
953
981
|
readonly ifcapi_parseStreaming: (a: number, b: number, c: number, d: number) => number;
|
|
954
982
|
readonly ifcapi_parseSymbolicRepresentations: (a: number, b: number, c: number) => number;
|
|
@@ -956,6 +984,7 @@ export interface InitOutput {
|
|
|
956
984
|
readonly ifcapi_parseToGpuGeometryAsync: (a: number, b: number, c: number, d: number) => number;
|
|
957
985
|
readonly ifcapi_parseToGpuInstancedGeometry: (a: number, b: number, c: number) => number;
|
|
958
986
|
readonly ifcapi_parseZeroCopy: (a: number, b: number, c: number) => number;
|
|
987
|
+
readonly ifcapi_processGeometryBatch: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number, k: number, l: number, m: number, n: number, o: number, p: number, q: number, r: number, s: number, t: number) => number;
|
|
959
988
|
readonly ifcapi_scanEntitiesFast: (a: number, b: number, c: number) => number;
|
|
960
989
|
readonly ifcapi_scanEntitiesFastBytes: (a: number, b: number, c: number) => number;
|
|
961
990
|
readonly ifcapi_scanGeometryEntitiesFast: (a: number, b: number, c: number) => number;
|
|
@@ -1022,6 +1051,7 @@ export interface InitOutput {
|
|
|
1022
1051
|
readonly zerocopymesh_positions_len: (a: number) => number;
|
|
1023
1052
|
readonly zerocopymesh_positions_ptr: (a: number) => number;
|
|
1024
1053
|
readonly zerocopymesh_vertex_count: (a: number) => number;
|
|
1054
|
+
readonly init: () => void;
|
|
1025
1055
|
readonly gpuinstancedgeometryref_indicesLen: (a: number) => number;
|
|
1026
1056
|
readonly gpuinstancedgeometryref_instanceCount: (a: number) => number;
|
|
1027
1057
|
readonly gpuinstancedgeometryref_instanceDataLen: (a: number) => number;
|
|
@@ -1030,7 +1060,6 @@ export interface InitOutput {
|
|
|
1030
1060
|
readonly instancedmeshcollection_totalGeometries: (a: number) => number;
|
|
1031
1061
|
readonly meshcollectionwithrtc_length: (a: number) => number;
|
|
1032
1062
|
readonly zerocopymesh_indices_len: (a: number) => number;
|
|
1033
|
-
readonly init: () => void;
|
|
1034
1063
|
readonly __wbg_set_rtcoffsetjs_x: (a: number, b: number) => void;
|
|
1035
1064
|
readonly __wbg_set_rtcoffsetjs_y: (a: number, b: number) => void;
|
|
1036
1065
|
readonly __wbg_set_rtcoffsetjs_z: (a: number, b: number) => void;
|
|
@@ -1054,25 +1083,15 @@ export interface InitOutput {
|
|
|
1054
1083
|
readonly meshcollection_rtcOffsetX: (a: number) => number;
|
|
1055
1084
|
readonly symboliccircle_expressId: (a: number) => number;
|
|
1056
1085
|
readonly __wbg_gpuinstancedgeometryref_free: (a: number, b: number) => void;
|
|
1057
|
-
readonly
|
|
1058
|
-
readonly
|
|
1059
|
-
readonly
|
|
1060
|
-
readonly wbg_rayon_poolbuilder_numThreads: (a: number) => number;
|
|
1061
|
-
readonly wbg_rayon_poolbuilder_receiver: (a: number) => number;
|
|
1062
|
-
readonly wbg_rayon_start_worker: (a: number) => void;
|
|
1063
|
-
readonly __wasm_bindgen_func_elem_959: (a: number, b: number, c: number) => void;
|
|
1064
|
-
readonly __wasm_bindgen_func_elem_958: (a: number, b: number) => void;
|
|
1065
|
-
readonly __wasm_bindgen_func_elem_498: (a: number, b: number) => void;
|
|
1066
|
-
readonly __wasm_bindgen_func_elem_497: (a: number, b: number) => void;
|
|
1067
|
-
readonly __wasm_bindgen_func_elem_1230: (a: number, b: number, c: number, d: number) => void;
|
|
1068
|
-
readonly memory: WebAssembly.Memory;
|
|
1086
|
+
readonly __wasm_bindgen_func_elem_1092: (a: number, b: number, c: number) => void;
|
|
1087
|
+
readonly __wasm_bindgen_func_elem_1091: (a: number, b: number) => void;
|
|
1088
|
+
readonly __wasm_bindgen_func_elem_1132: (a: number, b: number, c: number, d: number) => void;
|
|
1069
1089
|
readonly __wbindgen_export: (a: number) => void;
|
|
1070
1090
|
readonly __wbindgen_export2: (a: number, b: number, c: number) => void;
|
|
1071
1091
|
readonly __wbindgen_export3: (a: number, b: number) => number;
|
|
1072
1092
|
readonly __wbindgen_export4: (a: number, b: number, c: number, d: number) => number;
|
|
1073
1093
|
readonly __wbindgen_add_to_stack_pointer: (a: number) => number;
|
|
1074
|
-
readonly
|
|
1075
|
-
readonly __wbindgen_start: (a: number) => void;
|
|
1094
|
+
readonly __wbindgen_start: () => void;
|
|
1076
1095
|
}
|
|
1077
1096
|
|
|
1078
1097
|
export type SyncInitInput = BufferSource | WebAssembly.Module;
|
|
@@ -1081,20 +1100,18 @@ export type SyncInitInput = BufferSource | WebAssembly.Module;
|
|
|
1081
1100
|
* Instantiates the given `module`, which can either be bytes or
|
|
1082
1101
|
* a precompiled `WebAssembly.Module`.
|
|
1083
1102
|
*
|
|
1084
|
-
* @param {{ module: SyncInitInput
|
|
1085
|
-
* @param {WebAssembly.Memory} memory - Deprecated.
|
|
1103
|
+
* @param {{ module: SyncInitInput }} module - Passing `SyncInitInput` directly is deprecated.
|
|
1086
1104
|
*
|
|
1087
1105
|
* @returns {InitOutput}
|
|
1088
1106
|
*/
|
|
1089
|
-
export function initSync(module: { module: SyncInitInput
|
|
1107
|
+
export function initSync(module: { module: SyncInitInput } | SyncInitInput): InitOutput;
|
|
1090
1108
|
|
|
1091
1109
|
/**
|
|
1092
1110
|
* If `module_or_path` is {RequestInfo} or {URL}, makes a request and
|
|
1093
1111
|
* for everything else, calls `WebAssembly.instantiate` directly.
|
|
1094
1112
|
*
|
|
1095
|
-
* @param {{ module_or_path: InitInput | Promise<InitInput
|
|
1096
|
-
* @param {WebAssembly.Memory} memory - Deprecated.
|
|
1113
|
+
* @param {{ module_or_path: InitInput | Promise<InitInput> }} module_or_path - Passing `InitInput` directly is deprecated.
|
|
1097
1114
|
*
|
|
1098
1115
|
* @returns {Promise<InitOutput>}
|
|
1099
1116
|
*/
|
|
1100
|
-
export default function __wbg_init (module_or_path?: { module_or_path: InitInput | Promise<InitInput
|
|
1117
|
+
export default function __wbg_init (module_or_path?: { module_or_path: InitInput | Promise<InitInput> } | InitInput | Promise<InitInput>): Promise<InitOutput>;
|
package/pkg/ifc-lite.js
CHANGED
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
import { startWorkers } from './snippets/wasm-bindgen-rayon-38edf6e439f6d70d/src/workerHelpers.js';
|
|
2
|
-
|
|
3
1
|
let wasm;
|
|
4
2
|
|
|
5
3
|
function addHeapObject(obj) {
|
|
@@ -38,7 +36,7 @@ function getArrayU32FromWasm0(ptr, len) {
|
|
|
38
36
|
|
|
39
37
|
let cachedDataViewMemory0 = null;
|
|
40
38
|
function getDataViewMemory0() {
|
|
41
|
-
if (cachedDataViewMemory0 === null || cachedDataViewMemory0.buffer !== wasm.memory.buffer) {
|
|
39
|
+
if (cachedDataViewMemory0 === null || cachedDataViewMemory0.buffer.detached === true || (cachedDataViewMemory0.buffer.detached === undefined && cachedDataViewMemory0.buffer !== wasm.memory.buffer)) {
|
|
42
40
|
cachedDataViewMemory0 = new DataView(wasm.memory.buffer);
|
|
43
41
|
}
|
|
44
42
|
return cachedDataViewMemory0;
|
|
@@ -46,7 +44,7 @@ function getDataViewMemory0() {
|
|
|
46
44
|
|
|
47
45
|
let cachedFloat32ArrayMemory0 = null;
|
|
48
46
|
function getFloat32ArrayMemory0() {
|
|
49
|
-
if (cachedFloat32ArrayMemory0 === null || cachedFloat32ArrayMemory0.
|
|
47
|
+
if (cachedFloat32ArrayMemory0 === null || cachedFloat32ArrayMemory0.byteLength === 0) {
|
|
50
48
|
cachedFloat32ArrayMemory0 = new Float32Array(wasm.memory.buffer);
|
|
51
49
|
}
|
|
52
50
|
return cachedFloat32ArrayMemory0;
|
|
@@ -54,7 +52,7 @@ function getFloat32ArrayMemory0() {
|
|
|
54
52
|
|
|
55
53
|
let cachedFloat64ArrayMemory0 = null;
|
|
56
54
|
function getFloat64ArrayMemory0() {
|
|
57
|
-
if (cachedFloat64ArrayMemory0 === null || cachedFloat64ArrayMemory0.
|
|
55
|
+
if (cachedFloat64ArrayMemory0 === null || cachedFloat64ArrayMemory0.byteLength === 0) {
|
|
58
56
|
cachedFloat64ArrayMemory0 = new Float64Array(wasm.memory.buffer);
|
|
59
57
|
}
|
|
60
58
|
return cachedFloat64ArrayMemory0;
|
|
@@ -67,7 +65,7 @@ function getStringFromWasm0(ptr, len) {
|
|
|
67
65
|
|
|
68
66
|
let cachedUint32ArrayMemory0 = null;
|
|
69
67
|
function getUint32ArrayMemory0() {
|
|
70
|
-
if (cachedUint32ArrayMemory0 === null || cachedUint32ArrayMemory0.
|
|
68
|
+
if (cachedUint32ArrayMemory0 === null || cachedUint32ArrayMemory0.byteLength === 0) {
|
|
71
69
|
cachedUint32ArrayMemory0 = new Uint32Array(wasm.memory.buffer);
|
|
72
70
|
}
|
|
73
71
|
return cachedUint32ArrayMemory0;
|
|
@@ -75,7 +73,7 @@ function getUint32ArrayMemory0() {
|
|
|
75
73
|
|
|
76
74
|
let cachedUint8ArrayMemory0 = null;
|
|
77
75
|
function getUint8ArrayMemory0() {
|
|
78
|
-
if (cachedUint8ArrayMemory0 === null || cachedUint8ArrayMemory0.
|
|
76
|
+
if (cachedUint8ArrayMemory0 === null || cachedUint8ArrayMemory0.byteLength === 0) {
|
|
79
77
|
cachedUint8ArrayMemory0 = new Uint8Array(wasm.memory.buffer);
|
|
80
78
|
}
|
|
81
79
|
return cachedUint8ArrayMemory0;
|
|
@@ -128,6 +126,13 @@ function makeMutClosure(arg0, arg1, dtor, f) {
|
|
|
128
126
|
return real;
|
|
129
127
|
}
|
|
130
128
|
|
|
129
|
+
function passArray32ToWasm0(arg, malloc) {
|
|
130
|
+
const ptr = malloc(arg.length * 4, 4) >>> 0;
|
|
131
|
+
getUint32ArrayMemory0().set(arg, ptr / 4);
|
|
132
|
+
WASM_VECTOR_LEN = arg.length;
|
|
133
|
+
return ptr;
|
|
134
|
+
}
|
|
135
|
+
|
|
131
136
|
function passArray8ToWasm0(arg, malloc) {
|
|
132
137
|
const ptr = malloc(arg.length * 1, 1) >>> 0;
|
|
133
138
|
getUint8ArrayMemory0().set(arg, ptr / 1);
|
|
@@ -178,9 +183,8 @@ function takeObject(idx) {
|
|
|
178
183
|
return ret;
|
|
179
184
|
}
|
|
180
185
|
|
|
181
|
-
let cachedTextDecoder =
|
|
182
|
-
|
|
183
|
-
|
|
186
|
+
let cachedTextDecoder = new TextDecoder('utf-8', { ignoreBOM: true, fatal: true });
|
|
187
|
+
cachedTextDecoder.decode();
|
|
184
188
|
const MAX_SAFARI_DECODE_BYTES = 2146435072;
|
|
185
189
|
let numBytesDecoded = 0;
|
|
186
190
|
function decodeText(ptr, len) {
|
|
@@ -190,12 +194,12 @@ function decodeText(ptr, len) {
|
|
|
190
194
|
cachedTextDecoder.decode();
|
|
191
195
|
numBytesDecoded = len;
|
|
192
196
|
}
|
|
193
|
-
return cachedTextDecoder.decode(getUint8ArrayMemory0().
|
|
197
|
+
return cachedTextDecoder.decode(getUint8ArrayMemory0().subarray(ptr, ptr + len));
|
|
194
198
|
}
|
|
195
199
|
|
|
196
|
-
const cachedTextEncoder =
|
|
200
|
+
const cachedTextEncoder = new TextEncoder();
|
|
197
201
|
|
|
198
|
-
if (cachedTextEncoder) {
|
|
202
|
+
if (!('encodeInto' in cachedTextEncoder)) {
|
|
199
203
|
cachedTextEncoder.encodeInto = function (arg, view) {
|
|
200
204
|
const buf = cachedTextEncoder.encode(arg);
|
|
201
205
|
view.set(buf);
|
|
@@ -208,16 +212,12 @@ if (cachedTextEncoder) {
|
|
|
208
212
|
|
|
209
213
|
let WASM_VECTOR_LEN = 0;
|
|
210
214
|
|
|
211
|
-
function
|
|
212
|
-
wasm.
|
|
213
|
-
}
|
|
214
|
-
|
|
215
|
-
function __wasm_bindgen_func_elem_498(arg0, arg1) {
|
|
216
|
-
wasm.__wasm_bindgen_func_elem_498(arg0, arg1);
|
|
215
|
+
function __wasm_bindgen_func_elem_1092(arg0, arg1, arg2) {
|
|
216
|
+
wasm.__wasm_bindgen_func_elem_1092(arg0, arg1, addHeapObject(arg2));
|
|
217
217
|
}
|
|
218
218
|
|
|
219
|
-
function
|
|
220
|
-
wasm.
|
|
219
|
+
function __wasm_bindgen_func_elem_1132(arg0, arg1, arg2, arg3) {
|
|
220
|
+
wasm.__wasm_bindgen_func_elem_1132(arg0, arg1, addHeapObject(arg2), addHeapObject(arg3));
|
|
221
221
|
}
|
|
222
222
|
|
|
223
223
|
const GeoReferenceJsFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
@@ -292,10 +292,6 @@ const ZeroCopyMeshFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
|
292
292
|
? { register: () => {}, unregister: () => {} }
|
|
293
293
|
: new FinalizationRegistry(ptr => wasm.__wbg_zerocopymesh_free(ptr >>> 0, 1));
|
|
294
294
|
|
|
295
|
-
const wbg_rayon_PoolBuilderFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
296
|
-
? { register: () => {}, unregister: () => {} }
|
|
297
|
-
: new FinalizationRegistry(ptr => wasm.__wbg_wbg_rayon_poolbuilder_free(ptr >>> 0, 1));
|
|
298
|
-
|
|
299
295
|
/**
|
|
300
296
|
* Georeferencing information exposed to JavaScript
|
|
301
297
|
*/
|
|
@@ -1154,6 +1150,62 @@ export class IfcAPI {
|
|
|
1154
1150
|
const ret = wasm.ifcapi_parseMeshesAsync(this.__wbg_ptr, ptr0, len0, addHeapObject(options));
|
|
1155
1151
|
return takeObject(ret);
|
|
1156
1152
|
}
|
|
1153
|
+
/**
|
|
1154
|
+
* Fast pre-pass: scans for geometry entities ONLY (skips style/void/material resolution).
|
|
1155
|
+
* Returns job list + unit scale + RTC offset in ~1-2s instead of ~6s.
|
|
1156
|
+
* Geometry workers can start immediately with default colors + no void subtraction.
|
|
1157
|
+
* A parallel style worker can run buildPrePassOnce for correct colors later.
|
|
1158
|
+
* @param {Uint8Array} data
|
|
1159
|
+
* @returns {any}
|
|
1160
|
+
*/
|
|
1161
|
+
buildPrePassFast(data) {
|
|
1162
|
+
const ptr0 = passArray8ToWasm0(data, wasm.__wbindgen_export3);
|
|
1163
|
+
const len0 = WASM_VECTOR_LEN;
|
|
1164
|
+
const ret = wasm.ifcapi_buildPrePassFast(this.__wbg_ptr, ptr0, len0);
|
|
1165
|
+
return takeObject(ret);
|
|
1166
|
+
}
|
|
1167
|
+
/**
|
|
1168
|
+
* Run the pre-pass ONCE and return serialized results for worker distribution.
|
|
1169
|
+
* Takes raw bytes (&[u8]) to avoid TextDecoder overhead.
|
|
1170
|
+
* @param {Uint8Array} data
|
|
1171
|
+
* @returns {any}
|
|
1172
|
+
*/
|
|
1173
|
+
buildPrePassOnce(data) {
|
|
1174
|
+
const ptr0 = passArray8ToWasm0(data, wasm.__wbindgen_export3);
|
|
1175
|
+
const len0 = WASM_VECTOR_LEN;
|
|
1176
|
+
const ret = wasm.ifcapi_buildPrePassOnce(this.__wbg_ptr, ptr0, len0);
|
|
1177
|
+
return takeObject(ret);
|
|
1178
|
+
}
|
|
1179
|
+
/**
|
|
1180
|
+
* Parse a subset of IFC geometry entities by index range.
|
|
1181
|
+
*
|
|
1182
|
+
* Performs the full pre-pass (entity index, combined style/void/brep scan)
|
|
1183
|
+
* but only processes geometry entities whose index (in the combined
|
|
1184
|
+
* simple + complex job list) falls within `[start_idx, end_idx)`.
|
|
1185
|
+
*
|
|
1186
|
+
* This enables Web Worker parallelization: each worker processes a
|
|
1187
|
+
* disjoint slice of the entity list while sharing the same pre-pass data.
|
|
1188
|
+
*
|
|
1189
|
+
* Example:
|
|
1190
|
+
* ```javascript
|
|
1191
|
+
* const api = new IfcAPI();
|
|
1192
|
+
* // Worker 1: entities 0..500
|
|
1193
|
+
* const batch1 = api.parseMeshesSubset(content, 0, 500);
|
|
1194
|
+
* // Worker 2: entities 500..1000
|
|
1195
|
+
* const batch2 = api.parseMeshesSubset(content, 500, 1000);
|
|
1196
|
+
* ```
|
|
1197
|
+
* @param {string} content
|
|
1198
|
+
* @param {number} start_idx
|
|
1199
|
+
* @param {number} end_idx
|
|
1200
|
+
* @param {boolean} skip_expensive
|
|
1201
|
+
* @returns {MeshCollection}
|
|
1202
|
+
*/
|
|
1203
|
+
parseMeshesSubset(content, start_idx, end_idx, skip_expensive) {
|
|
1204
|
+
const ptr0 = passStringToWasm0(content, wasm.__wbindgen_export3, wasm.__wbindgen_export4);
|
|
1205
|
+
const len0 = WASM_VECTOR_LEN;
|
|
1206
|
+
const ret = wasm.ifcapi_parseMeshesSubset(this.__wbg_ptr, ptr0, len0, start_idx, end_idx, skip_expensive);
|
|
1207
|
+
return MeshCollection.__wrap(ret);
|
|
1208
|
+
}
|
|
1157
1209
|
/**
|
|
1158
1210
|
* Parse IFC file and return GPU-ready geometry for zero-copy upload
|
|
1159
1211
|
*
|
|
@@ -1226,6 +1278,41 @@ export class IfcAPI {
|
|
|
1226
1278
|
const ret = wasm.ifcapi_parseMeshesInstanced(this.__wbg_ptr, ptr0, len0);
|
|
1227
1279
|
return InstancedMeshCollection.__wrap(ret);
|
|
1228
1280
|
}
|
|
1281
|
+
/**
|
|
1282
|
+
* Process geometry for a subset of pre-scanned entities.
|
|
1283
|
+
* Takes raw bytes and pre-pass data from buildPrePassOnce.
|
|
1284
|
+
* @param {Uint8Array} data
|
|
1285
|
+
* @param {Uint32Array} jobs_flat
|
|
1286
|
+
* @param {number} unit_scale
|
|
1287
|
+
* @param {number} rtc_x
|
|
1288
|
+
* @param {number} rtc_y
|
|
1289
|
+
* @param {number} rtc_z
|
|
1290
|
+
* @param {boolean} needs_shift
|
|
1291
|
+
* @param {Uint32Array} void_keys
|
|
1292
|
+
* @param {Uint32Array} void_counts
|
|
1293
|
+
* @param {Uint32Array} void_values
|
|
1294
|
+
* @param {Uint32Array} style_ids
|
|
1295
|
+
* @param {Uint8Array} style_colors
|
|
1296
|
+
* @returns {MeshCollection}
|
|
1297
|
+
*/
|
|
1298
|
+
processGeometryBatch(data, jobs_flat, unit_scale, rtc_x, rtc_y, rtc_z, needs_shift, void_keys, void_counts, void_values, style_ids, style_colors) {
|
|
1299
|
+
const ptr0 = passArray8ToWasm0(data, wasm.__wbindgen_export3);
|
|
1300
|
+
const len0 = WASM_VECTOR_LEN;
|
|
1301
|
+
const ptr1 = passArray32ToWasm0(jobs_flat, wasm.__wbindgen_export3);
|
|
1302
|
+
const len1 = WASM_VECTOR_LEN;
|
|
1303
|
+
const ptr2 = passArray32ToWasm0(void_keys, wasm.__wbindgen_export3);
|
|
1304
|
+
const len2 = WASM_VECTOR_LEN;
|
|
1305
|
+
const ptr3 = passArray32ToWasm0(void_counts, wasm.__wbindgen_export3);
|
|
1306
|
+
const len3 = WASM_VECTOR_LEN;
|
|
1307
|
+
const ptr4 = passArray32ToWasm0(void_values, wasm.__wbindgen_export3);
|
|
1308
|
+
const len4 = WASM_VECTOR_LEN;
|
|
1309
|
+
const ptr5 = passArray32ToWasm0(style_ids, wasm.__wbindgen_export3);
|
|
1310
|
+
const len5 = WASM_VECTOR_LEN;
|
|
1311
|
+
const ptr6 = passArray8ToWasm0(style_colors, wasm.__wbindgen_export3);
|
|
1312
|
+
const len6 = WASM_VECTOR_LEN;
|
|
1313
|
+
const ret = wasm.ifcapi_processGeometryBatch(this.__wbg_ptr, ptr0, len0, ptr1, len1, unit_scale, rtc_x, rtc_y, rtc_z, needs_shift, ptr2, len2, ptr3, len3, ptr4, len4, ptr5, len5, ptr6, len6);
|
|
1314
|
+
return MeshCollection.__wrap(ret);
|
|
1315
|
+
}
|
|
1229
1316
|
/**
|
|
1230
1317
|
* Parse IFC file with streaming GPU-ready geometry batches
|
|
1231
1318
|
*
|
|
@@ -2607,15 +2694,6 @@ export function init() {
|
|
|
2607
2694
|
wasm.init();
|
|
2608
2695
|
}
|
|
2609
2696
|
|
|
2610
|
-
/**
|
|
2611
|
-
* @param {number} num_threads
|
|
2612
|
-
* @returns {Promise<any>}
|
|
2613
|
-
*/
|
|
2614
|
-
export function initThreadPool(num_threads) {
|
|
2615
|
-
const ret = wasm.initThreadPool(num_threads);
|
|
2616
|
-
return takeObject(ret);
|
|
2617
|
-
}
|
|
2618
|
-
|
|
2619
2697
|
/**
|
|
2620
2698
|
* Get the version of IFC-Lite.
|
|
2621
2699
|
*
|
|
@@ -2647,51 +2725,6 @@ export function version() {
|
|
|
2647
2725
|
}
|
|
2648
2726
|
}
|
|
2649
2727
|
|
|
2650
|
-
export class wbg_rayon_PoolBuilder {
|
|
2651
|
-
static __wrap(ptr) {
|
|
2652
|
-
ptr = ptr >>> 0;
|
|
2653
|
-
const obj = Object.create(wbg_rayon_PoolBuilder.prototype);
|
|
2654
|
-
obj.__wbg_ptr = ptr;
|
|
2655
|
-
wbg_rayon_PoolBuilderFinalization.register(obj, obj.__wbg_ptr, obj);
|
|
2656
|
-
return obj;
|
|
2657
|
-
}
|
|
2658
|
-
__destroy_into_raw() {
|
|
2659
|
-
const ptr = this.__wbg_ptr;
|
|
2660
|
-
this.__wbg_ptr = 0;
|
|
2661
|
-
wbg_rayon_PoolBuilderFinalization.unregister(this);
|
|
2662
|
-
return ptr;
|
|
2663
|
-
}
|
|
2664
|
-
free() {
|
|
2665
|
-
const ptr = this.__destroy_into_raw();
|
|
2666
|
-
wasm.__wbg_wbg_rayon_poolbuilder_free(ptr, 0);
|
|
2667
|
-
}
|
|
2668
|
-
/**
|
|
2669
|
-
* @returns {number}
|
|
2670
|
-
*/
|
|
2671
|
-
numThreads() {
|
|
2672
|
-
const ret = wasm.wbg_rayon_poolbuilder_numThreads(this.__wbg_ptr);
|
|
2673
|
-
return ret >>> 0;
|
|
2674
|
-
}
|
|
2675
|
-
build() {
|
|
2676
|
-
wasm.wbg_rayon_poolbuilder_build(this.__wbg_ptr);
|
|
2677
|
-
}
|
|
2678
|
-
/**
|
|
2679
|
-
* @returns {number}
|
|
2680
|
-
*/
|
|
2681
|
-
receiver() {
|
|
2682
|
-
const ret = wasm.wbg_rayon_poolbuilder_receiver(this.__wbg_ptr);
|
|
2683
|
-
return ret >>> 0;
|
|
2684
|
-
}
|
|
2685
|
-
}
|
|
2686
|
-
if (Symbol.dispose) wbg_rayon_PoolBuilder.prototype[Symbol.dispose] = wbg_rayon_PoolBuilder.prototype.free;
|
|
2687
|
-
|
|
2688
|
-
/**
|
|
2689
|
-
* @param {number} receiver
|
|
2690
|
-
*/
|
|
2691
|
-
export function wbg_rayon_start_worker(receiver) {
|
|
2692
|
-
wasm.wbg_rayon_start_worker(receiver);
|
|
2693
|
-
}
|
|
2694
|
-
|
|
2695
2728
|
const EXPECTED_RESPONSE_TYPES = new Set(['basic', 'cors', 'default']);
|
|
2696
2729
|
|
|
2697
2730
|
async function __wbg_load(module, imports) {
|
|
@@ -2724,7 +2757,7 @@ async function __wbg_load(module, imports) {
|
|
|
2724
2757
|
}
|
|
2725
2758
|
}
|
|
2726
2759
|
|
|
2727
|
-
function __wbg_get_imports(
|
|
2760
|
+
function __wbg_get_imports() {
|
|
2728
2761
|
const imports = {};
|
|
2729
2762
|
imports.wbg = {};
|
|
2730
2763
|
imports.wbg.__wbg_Error_52673b7de5a0ca89 = function(arg0, arg1) {
|
|
@@ -2743,33 +2776,18 @@ function __wbg_get_imports(memory) {
|
|
|
2743
2776
|
const ret = wasm.memory;
|
|
2744
2777
|
return addHeapObject(ret);
|
|
2745
2778
|
};
|
|
2746
|
-
imports.wbg.__wbg___wbindgen_module_967adef62ea6cbf8 = function() {
|
|
2747
|
-
const ret = __wbg_init.__wbindgen_wasm_module;
|
|
2748
|
-
return addHeapObject(ret);
|
|
2749
|
-
};
|
|
2750
2779
|
imports.wbg.__wbg___wbindgen_number_get_9619185a74197f95 = function(arg0, arg1) {
|
|
2751
2780
|
const obj = getObject(arg1);
|
|
2752
2781
|
const ret = typeof(obj) === 'number' ? obj : undefined;
|
|
2753
2782
|
getDataViewMemory0().setFloat64(arg0 + 8 * 1, isLikeNone(ret) ? 0 : ret, true);
|
|
2754
2783
|
getDataViewMemory0().setInt32(arg0 + 4 * 0, !isLikeNone(ret), true);
|
|
2755
2784
|
};
|
|
2756
|
-
imports.wbg.__wbg___wbindgen_rethrow_78714972834ecdf1 = function(arg0) {
|
|
2757
|
-
throw takeObject(arg0);
|
|
2758
|
-
};
|
|
2759
2785
|
imports.wbg.__wbg___wbindgen_throw_dd24417ed36fc46e = function(arg0, arg1) {
|
|
2760
2786
|
throw new Error(getStringFromWasm0(arg0, arg1));
|
|
2761
2787
|
};
|
|
2762
2788
|
imports.wbg.__wbg__wbg_cb_unref_87dfb5aaa0cbcea7 = function(arg0) {
|
|
2763
2789
|
getObject(arg0)._wbg_cb_unref();
|
|
2764
2790
|
};
|
|
2765
|
-
imports.wbg.__wbg_async_bba5a2ac54b734df = function(arg0) {
|
|
2766
|
-
const ret = getObject(arg0).async;
|
|
2767
|
-
return ret;
|
|
2768
|
-
};
|
|
2769
|
-
imports.wbg.__wbg_buffer_063cd102cc769a1c = function(arg0) {
|
|
2770
|
-
const ret = getObject(arg0).buffer;
|
|
2771
|
-
return addHeapObject(ret);
|
|
2772
|
-
};
|
|
2773
2791
|
imports.wbg.__wbg_call_3020136f7a2d6e44 = function() { return handleError(function (arg0, arg1, arg2) {
|
|
2774
2792
|
const ret = getObject(arg0).call(getObject(arg1), getObject(arg2));
|
|
2775
2793
|
return addHeapObject(ret);
|
|
@@ -2782,14 +2800,6 @@ function __wbg_get_imports(memory) {
|
|
|
2782
2800
|
const ret = getObject(arg0).call(getObject(arg1), getObject(arg2), getObject(arg3));
|
|
2783
2801
|
return addHeapObject(ret);
|
|
2784
2802
|
}, arguments) };
|
|
2785
|
-
imports.wbg.__wbg_clearTimeout_5a54f8841c30079a = function(arg0) {
|
|
2786
|
-
const ret = clearTimeout(takeObject(arg0));
|
|
2787
|
-
return addHeapObject(ret);
|
|
2788
|
-
};
|
|
2789
|
-
imports.wbg.__wbg_data_8bf4ae669a78a688 = function(arg0) {
|
|
2790
|
-
const ret = getObject(arg0).data;
|
|
2791
|
-
return addHeapObject(ret);
|
|
2792
|
-
};
|
|
2793
2803
|
imports.wbg.__wbg_debug_9d0c87ddda3dc485 = function(arg0) {
|
|
2794
2804
|
console.debug(getObject(arg0));
|
|
2795
2805
|
};
|
|
@@ -2816,16 +2826,6 @@ function __wbg_get_imports(memory) {
|
|
|
2816
2826
|
const ret = InstancedGeometry.__wrap(arg0);
|
|
2817
2827
|
return addHeapObject(ret);
|
|
2818
2828
|
};
|
|
2819
|
-
imports.wbg.__wbg_instanceof_Window_b5cf7783caa68180 = function(arg0) {
|
|
2820
|
-
let result;
|
|
2821
|
-
try {
|
|
2822
|
-
result = getObject(arg0) instanceof Window;
|
|
2823
|
-
} catch (_) {
|
|
2824
|
-
result = false;
|
|
2825
|
-
}
|
|
2826
|
-
const ret = result;
|
|
2827
|
-
return ret;
|
|
2828
|
-
};
|
|
2829
2829
|
imports.wbg.__wbg_length_86ce4877baf913bb = function(arg0) {
|
|
2830
2830
|
const ret = getObject(arg0).length;
|
|
2831
2831
|
return ret;
|
|
@@ -2846,18 +2846,10 @@ function __wbg_get_imports(memory) {
|
|
|
2846
2846
|
const ret = new Array();
|
|
2847
2847
|
return addHeapObject(ret);
|
|
2848
2848
|
};
|
|
2849
|
-
imports.wbg.__wbg_new_53cb1e86c1ef5d2a = function() { return handleError(function (arg0, arg1) {
|
|
2850
|
-
const ret = new Worker(getStringFromWasm0(arg0, arg1));
|
|
2851
|
-
return addHeapObject(ret);
|
|
2852
|
-
}, arguments) };
|
|
2853
2849
|
imports.wbg.__wbg_new_8a6f238a6ece86ea = function() {
|
|
2854
2850
|
const ret = new Error();
|
|
2855
2851
|
return addHeapObject(ret);
|
|
2856
2852
|
};
|
|
2857
|
-
imports.wbg.__wbg_new_de1e660b88fc921f = function(arg0) {
|
|
2858
|
-
const ret = new Int32Array(getObject(arg0));
|
|
2859
|
-
return addHeapObject(ret);
|
|
2860
|
-
};
|
|
2861
2853
|
imports.wbg.__wbg_new_ff12d2b041fb48f1 = function(arg0, arg1) {
|
|
2862
2854
|
try {
|
|
2863
2855
|
var state0 = {a: arg0, b: arg1};
|
|
@@ -2865,7 +2857,7 @@ function __wbg_get_imports(memory) {
|
|
|
2865
2857
|
const a = state0.a;
|
|
2866
2858
|
state0.a = 0;
|
|
2867
2859
|
try {
|
|
2868
|
-
return
|
|
2860
|
+
return __wasm_bindgen_func_elem_1132(a, state0.b, arg0, arg1);
|
|
2869
2861
|
} finally {
|
|
2870
2862
|
state0.a = a;
|
|
2871
2863
|
}
|
|
@@ -2888,13 +2880,18 @@ function __wbg_get_imports(memory) {
|
|
|
2888
2880
|
const ret = new Function(getStringFromWasm0(arg0, arg1));
|
|
2889
2881
|
return addHeapObject(ret);
|
|
2890
2882
|
};
|
|
2891
|
-
imports.wbg.
|
|
2892
|
-
const ret =
|
|
2883
|
+
imports.wbg.__wbg_new_with_length_202b3db94ba5fc86 = function(arg0) {
|
|
2884
|
+
const ret = new Uint32Array(arg0 >>> 0);
|
|
2885
|
+
return addHeapObject(ret);
|
|
2886
|
+
};
|
|
2887
|
+
imports.wbg.__wbg_new_with_length_806b9e5b8290af7c = function(arg0) {
|
|
2888
|
+
const ret = new Float64Array(arg0 >>> 0);
|
|
2889
|
+
return addHeapObject(ret);
|
|
2890
|
+
};
|
|
2891
|
+
imports.wbg.__wbg_new_with_length_aa5eaf41d35235e5 = function(arg0) {
|
|
2892
|
+
const ret = new Uint8Array(arg0 >>> 0);
|
|
2893
2893
|
return addHeapObject(ret);
|
|
2894
2894
|
};
|
|
2895
|
-
imports.wbg.__wbg_postMessage_07504dbe15265d5c = function() { return handleError(function (arg0, arg1) {
|
|
2896
|
-
getObject(arg0).postMessage(getObject(arg1));
|
|
2897
|
-
}, arguments) };
|
|
2898
2895
|
imports.wbg.__wbg_prototypesetcall_96cc7097487b926d = function(arg0, arg1, arg2) {
|
|
2899
2896
|
Float32Array.prototype.set.call(getArrayF32FromWasm0(arg0, arg1), getObject(arg2));
|
|
2900
2897
|
};
|
|
@@ -2913,10 +2910,6 @@ function __wbg_get_imports(memory) {
|
|
|
2913
2910
|
const ret = Promise.resolve(getObject(arg0));
|
|
2914
2911
|
return addHeapObject(ret);
|
|
2915
2912
|
};
|
|
2916
|
-
imports.wbg.__wbg_setTimeout_db2dbaeefb6f39c7 = function() { return handleError(function (arg0, arg1) {
|
|
2917
|
-
const ret = setTimeout(getObject(arg0), arg1);
|
|
2918
|
-
return addHeapObject(ret);
|
|
2919
|
-
}, arguments) };
|
|
2920
2913
|
imports.wbg.__wbg_set_3f1d0b984ed272ed = function(arg0, arg1, arg2) {
|
|
2921
2914
|
getObject(arg0)[takeObject(arg1)] = takeObject(arg2);
|
|
2922
2915
|
};
|
|
@@ -2927,8 +2920,14 @@ function __wbg_get_imports(memory) {
|
|
|
2927
2920
|
imports.wbg.__wbg_set_7df433eea03a5c14 = function(arg0, arg1, arg2) {
|
|
2928
2921
|
getObject(arg0)[arg1 >>> 0] = takeObject(arg2);
|
|
2929
2922
|
};
|
|
2930
|
-
imports.wbg.
|
|
2931
|
-
getObject(arg0)
|
|
2923
|
+
imports.wbg.__wbg_set_index_021489b2916af13e = function(arg0, arg1, arg2) {
|
|
2924
|
+
getObject(arg0)[arg1 >>> 0] = arg2;
|
|
2925
|
+
};
|
|
2926
|
+
imports.wbg.__wbg_set_index_04c4b93e64d08a52 = function(arg0, arg1, arg2) {
|
|
2927
|
+
getObject(arg0)[arg1 >>> 0] = arg2;
|
|
2928
|
+
};
|
|
2929
|
+
imports.wbg.__wbg_set_index_42abe35f117e614e = function(arg0, arg1, arg2) {
|
|
2930
|
+
getObject(arg0)[arg1 >>> 0] = arg2 >>> 0;
|
|
2932
2931
|
};
|
|
2933
2932
|
imports.wbg.__wbg_stack_0ed75d68575b0f3c = function(arg0, arg1) {
|
|
2934
2933
|
const ret = getObject(arg1).stack;
|
|
@@ -2937,10 +2936,6 @@ function __wbg_get_imports(memory) {
|
|
|
2937
2936
|
getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
|
|
2938
2937
|
getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
|
|
2939
2938
|
};
|
|
2940
|
-
imports.wbg.__wbg_startWorkers_2ca11761e08ff5d5 = function(arg0, arg1, arg2) {
|
|
2941
|
-
const ret = startWorkers(takeObject(arg0), takeObject(arg1), wbg_rayon_PoolBuilder.__wrap(arg2));
|
|
2942
|
-
return addHeapObject(ret);
|
|
2943
|
-
};
|
|
2944
2939
|
imports.wbg.__wbg_static_accessor_GLOBAL_769e6b65d6557335 = function() {
|
|
2945
2940
|
const ret = typeof global === 'undefined' ? null : global;
|
|
2946
2941
|
return isLikeNone(ret) ? 0 : addHeapObject(ret);
|
|
@@ -2961,26 +2956,9 @@ function __wbg_get_imports(memory) {
|
|
|
2961
2956
|
const ret = getObject(arg0).then(getObject(arg1));
|
|
2962
2957
|
return addHeapObject(ret);
|
|
2963
2958
|
};
|
|
2964
|
-
imports.wbg.__wbg_value_4cd497eeadba94bd = function(arg0) {
|
|
2965
|
-
const ret = getObject(arg0).value;
|
|
2966
|
-
return addHeapObject(ret);
|
|
2967
|
-
};
|
|
2968
|
-
imports.wbg.__wbg_waitAsync_8afec80ffd213eca = function(arg0, arg1, arg2) {
|
|
2969
|
-
const ret = Atomics.waitAsync(getObject(arg0), arg1 >>> 0, arg2);
|
|
2970
|
-
return addHeapObject(ret);
|
|
2971
|
-
};
|
|
2972
|
-
imports.wbg.__wbg_waitAsync_c186cb97ffacd552 = function() {
|
|
2973
|
-
const ret = Atomics.waitAsync;
|
|
2974
|
-
return addHeapObject(ret);
|
|
2975
|
-
};
|
|
2976
2959
|
imports.wbg.__wbg_warn_6e567d0d926ff881 = function(arg0) {
|
|
2977
2960
|
console.warn(getObject(arg0));
|
|
2978
2961
|
};
|
|
2979
|
-
imports.wbg.__wbindgen_cast_188ff5bafa3120b4 = function(arg0, arg1) {
|
|
2980
|
-
// Cast intrinsic for `Closure(Closure { dtor_idx: 56, function: Function { arguments: [], shim_idx: 57, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`.
|
|
2981
|
-
const ret = makeMutClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_497, __wasm_bindgen_func_elem_498);
|
|
2982
|
-
return addHeapObject(ret);
|
|
2983
|
-
};
|
|
2984
2962
|
imports.wbg.__wbindgen_cast_2241b6af4c4b2941 = function(arg0, arg1) {
|
|
2985
2963
|
// Cast intrinsic for `Ref(String) -> Externref`.
|
|
2986
2964
|
const ret = getStringFromWasm0(arg0, arg1);
|
|
@@ -2991,14 +2969,9 @@ function __wbg_get_imports(memory) {
|
|
|
2991
2969
|
const ret = BigInt.asUintN(64, arg0);
|
|
2992
2970
|
return addHeapObject(ret);
|
|
2993
2971
|
};
|
|
2994
|
-
imports.wbg.
|
|
2995
|
-
// Cast intrinsic for `Closure(Closure { dtor_idx:
|
|
2996
|
-
const ret = makeMutClosure(arg0, arg1, wasm.
|
|
2997
|
-
return addHeapObject(ret);
|
|
2998
|
-
};
|
|
2999
|
-
imports.wbg.__wbindgen_cast_96f117460864886d = function(arg0, arg1) {
|
|
3000
|
-
// Cast intrinsic for `Closure(Closure { dtor_idx: 161, function: Function { arguments: [NamedExternref("MessageEvent")], shim_idx: 162, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`.
|
|
3001
|
-
const ret = makeMutClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_958, __wasm_bindgen_func_elem_959);
|
|
2972
|
+
imports.wbg.__wbindgen_cast_8410bcb836a2825d = function(arg0, arg1) {
|
|
2973
|
+
// Cast intrinsic for `Closure(Closure { dtor_idx: 145, function: Function { arguments: [Externref], shim_idx: 146, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`.
|
|
2974
|
+
const ret = makeMutClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_1091, __wasm_bindgen_func_elem_1092);
|
|
3002
2975
|
return addHeapObject(ret);
|
|
3003
2976
|
};
|
|
3004
2977
|
imports.wbg.__wbindgen_cast_d6cd19b81560fd6e = function(arg0) {
|
|
@@ -3006,20 +2979,6 @@ function __wbg_get_imports(memory) {
|
|
|
3006
2979
|
const ret = arg0;
|
|
3007
2980
|
return addHeapObject(ret);
|
|
3008
2981
|
};
|
|
3009
|
-
imports.wbg.__wbindgen_link_203404ece0e9bab9 = function(arg0) {
|
|
3010
|
-
const val = `onmessage = function (ev) {
|
|
3011
|
-
let [ia, index, value] = ev.data;
|
|
3012
|
-
ia = new Int32Array(ia.buffer);
|
|
3013
|
-
let result = Atomics.wait(ia, index, value);
|
|
3014
|
-
postMessage(result);
|
|
3015
|
-
};
|
|
3016
|
-
`;
|
|
3017
|
-
const ret = typeof URL.createObjectURL === 'undefined' ? "data:application/javascript," + encodeURIComponent(val) : URL.createObjectURL(new Blob([val], { type: "text/javascript" }));
|
|
3018
|
-
const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_export3, wasm.__wbindgen_export4);
|
|
3019
|
-
const len1 = WASM_VECTOR_LEN;
|
|
3020
|
-
getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
|
|
3021
|
-
getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
|
|
3022
|
-
};
|
|
3023
2982
|
imports.wbg.__wbindgen_object_clone_ref = function(arg0) {
|
|
3024
2983
|
const ret = getObject(arg0);
|
|
3025
2984
|
return addHeapObject(ret);
|
|
@@ -3027,12 +2986,11 @@ function __wbg_get_imports(memory) {
|
|
|
3027
2986
|
imports.wbg.__wbindgen_object_drop_ref = function(arg0) {
|
|
3028
2987
|
takeObject(arg0);
|
|
3029
2988
|
};
|
|
3030
|
-
imports.wbg.memory = memory || new WebAssembly.Memory({initial:20,maximum:65536,shared:true});
|
|
3031
2989
|
|
|
3032
2990
|
return imports;
|
|
3033
2991
|
}
|
|
3034
2992
|
|
|
3035
|
-
function __wbg_finalize_init(instance, module
|
|
2993
|
+
function __wbg_finalize_init(instance, module) {
|
|
3036
2994
|
wasm = instance.exports;
|
|
3037
2995
|
__wbg_init.__wbindgen_wasm_module = module;
|
|
3038
2996
|
cachedDataViewMemory0 = null;
|
|
@@ -3041,38 +2999,38 @@ function __wbg_finalize_init(instance, module, thread_stack_size) {
|
|
|
3041
2999
|
cachedUint32ArrayMemory0 = null;
|
|
3042
3000
|
cachedUint8ArrayMemory0 = null;
|
|
3043
3001
|
|
|
3044
|
-
|
|
3045
|
-
wasm.__wbindgen_start(
|
|
3002
|
+
|
|
3003
|
+
wasm.__wbindgen_start();
|
|
3046
3004
|
return wasm;
|
|
3047
3005
|
}
|
|
3048
3006
|
|
|
3049
|
-
function initSync(module
|
|
3007
|
+
function initSync(module) {
|
|
3050
3008
|
if (wasm !== undefined) return wasm;
|
|
3051
3009
|
|
|
3052
|
-
|
|
3010
|
+
|
|
3053
3011
|
if (typeof module !== 'undefined') {
|
|
3054
3012
|
if (Object.getPrototypeOf(module) === Object.prototype) {
|
|
3055
|
-
({module
|
|
3013
|
+
({module} = module)
|
|
3056
3014
|
} else {
|
|
3057
3015
|
console.warn('using deprecated parameters for `initSync()`; pass a single object instead')
|
|
3058
3016
|
}
|
|
3059
3017
|
}
|
|
3060
3018
|
|
|
3061
|
-
const imports = __wbg_get_imports(
|
|
3019
|
+
const imports = __wbg_get_imports();
|
|
3062
3020
|
if (!(module instanceof WebAssembly.Module)) {
|
|
3063
3021
|
module = new WebAssembly.Module(module);
|
|
3064
3022
|
}
|
|
3065
3023
|
const instance = new WebAssembly.Instance(module, imports);
|
|
3066
|
-
return __wbg_finalize_init(instance, module
|
|
3024
|
+
return __wbg_finalize_init(instance, module);
|
|
3067
3025
|
}
|
|
3068
3026
|
|
|
3069
|
-
async function __wbg_init(module_or_path
|
|
3027
|
+
async function __wbg_init(module_or_path) {
|
|
3070
3028
|
if (wasm !== undefined) return wasm;
|
|
3071
3029
|
|
|
3072
|
-
|
|
3030
|
+
|
|
3073
3031
|
if (typeof module_or_path !== 'undefined') {
|
|
3074
3032
|
if (Object.getPrototypeOf(module_or_path) === Object.prototype) {
|
|
3075
|
-
({module_or_path
|
|
3033
|
+
({module_or_path} = module_or_path)
|
|
3076
3034
|
} else {
|
|
3077
3035
|
console.warn('using deprecated parameters for the initialization function; pass a single object instead')
|
|
3078
3036
|
}
|
|
@@ -3081,7 +3039,7 @@ async function __wbg_init(module_or_path, memory) {
|
|
|
3081
3039
|
if (typeof module_or_path === 'undefined') {
|
|
3082
3040
|
module_or_path = new URL('ifc-lite_bg.wasm', import.meta.url);
|
|
3083
3041
|
}
|
|
3084
|
-
const imports = __wbg_get_imports(
|
|
3042
|
+
const imports = __wbg_get_imports();
|
|
3085
3043
|
|
|
3086
3044
|
if (typeof module_or_path === 'string' || (typeof Request === 'function' && module_or_path instanceof Request) || (typeof URL === 'function' && module_or_path instanceof URL)) {
|
|
3087
3045
|
module_or_path = fetch(module_or_path);
|
|
@@ -3089,7 +3047,7 @@ async function __wbg_init(module_or_path, memory) {
|
|
|
3089
3047
|
|
|
3090
3048
|
const { instance, module } = await __wbg_load(await module_or_path, imports);
|
|
3091
3049
|
|
|
3092
|
-
return __wbg_finalize_init(instance, module
|
|
3050
|
+
return __wbg_finalize_init(instance, module);
|
|
3093
3051
|
}
|
|
3094
3052
|
|
|
3095
3053
|
export { initSync };
|
package/pkg/ifc-lite_bg.wasm
CHANGED
|
Binary file
|