@mediapipe/tasks-vision 0.1.0-alpha-11 → 0.1.0-alpha-13
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/README.md +23 -5
- package/package.json +1 -1
- package/vision.d.ts +533 -94
- package/vision_bundle.js +1 -1
- package/wasm/vision_wasm_internal.js +528 -595
- package/wasm/vision_wasm_internal.wasm +0 -0
- package/wasm/vision_wasm_nosimd_internal.js +518 -585
- package/wasm/vision_wasm_nosimd_internal.wasm +0 -0
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
// Build
|
|
1
|
+
// Build 527689245
|
|
2
2
|
|
|
3
3
|
var ModuleFactory = (() => {
|
|
4
4
|
var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined;
|
|
5
5
|
if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename;
|
|
6
6
|
return (
|
|
7
|
-
function(ModuleFactory
|
|
8
|
-
ModuleFactory = ModuleFactory || {};
|
|
7
|
+
function(ModuleFactory = {}) {
|
|
9
8
|
|
|
10
9
|
var Module = typeof ModuleFactory != "undefined" ? ModuleFactory : {};
|
|
11
10
|
|
|
@@ -43,12 +42,6 @@ function locateFile(path) {
|
|
|
43
42
|
|
|
44
43
|
var read_, readAsync, readBinary, setWindowTitle;
|
|
45
44
|
|
|
46
|
-
function logExceptionOnExit(e) {
|
|
47
|
-
if (e instanceof ExitStatus) return;
|
|
48
|
-
let toLog = e;
|
|
49
|
-
err("exiting due to exception: " + toLog);
|
|
50
|
-
}
|
|
51
|
-
|
|
52
45
|
if (ENVIRONMENT_IS_NODE) {
|
|
53
46
|
var fs = require("fs");
|
|
54
47
|
var nodePath = require("path");
|
|
@@ -74,25 +67,13 @@ if (ENVIRONMENT_IS_NODE) {
|
|
|
74
67
|
if (err) onerror(err); else onload(data.buffer);
|
|
75
68
|
});
|
|
76
69
|
};
|
|
77
|
-
if (
|
|
78
|
-
thisProgram = process
|
|
70
|
+
if (!Module["thisProgram"] && process.argv.length > 1) {
|
|
71
|
+
thisProgram = process.argv[1].replace(/\\/g, "/");
|
|
79
72
|
}
|
|
80
|
-
arguments_ = process
|
|
81
|
-
process["on"]("uncaughtException", function(ex) {
|
|
82
|
-
if (!(ex instanceof ExitStatus)) {
|
|
83
|
-
throw ex;
|
|
84
|
-
}
|
|
85
|
-
});
|
|
86
|
-
process["on"]("unhandledRejection", function(reason) {
|
|
87
|
-
throw reason;
|
|
88
|
-
});
|
|
73
|
+
arguments_ = process.argv.slice(2);
|
|
89
74
|
quit_ = (status, toThrow) => {
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
throw toThrow;
|
|
93
|
-
}
|
|
94
|
-
logExceptionOnExit(toThrow);
|
|
95
|
-
process["exit"](status);
|
|
75
|
+
process.exitCode = status;
|
|
76
|
+
throw toThrow;
|
|
96
77
|
};
|
|
97
78
|
Module["inspect"] = function() {
|
|
98
79
|
return "[Emscripten Module object]";
|
|
@@ -181,119 +162,20 @@ function assert(condition, text) {
|
|
|
181
162
|
}
|
|
182
163
|
}
|
|
183
164
|
|
|
184
|
-
var
|
|
165
|
+
var HEAP8, HEAPU8, HEAP16, HEAPU16, HEAP32, HEAPU32, HEAPF32, HEAPF64;
|
|
185
166
|
|
|
186
|
-
function
|
|
187
|
-
var
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
if (!(u0 & 128)) {
|
|
197
|
-
str += String.fromCharCode(u0);
|
|
198
|
-
continue;
|
|
199
|
-
}
|
|
200
|
-
var u1 = heapOrArray[idx++] & 63;
|
|
201
|
-
if ((u0 & 224) == 192) {
|
|
202
|
-
str += String.fromCharCode((u0 & 31) << 6 | u1);
|
|
203
|
-
continue;
|
|
204
|
-
}
|
|
205
|
-
var u2 = heapOrArray[idx++] & 63;
|
|
206
|
-
if ((u0 & 240) == 224) {
|
|
207
|
-
u0 = (u0 & 15) << 12 | u1 << 6 | u2;
|
|
208
|
-
} else {
|
|
209
|
-
u0 = (u0 & 7) << 18 | u1 << 12 | u2 << 6 | heapOrArray[idx++] & 63;
|
|
210
|
-
}
|
|
211
|
-
if (u0 < 65536) {
|
|
212
|
-
str += String.fromCharCode(u0);
|
|
213
|
-
} else {
|
|
214
|
-
var ch = u0 - 65536;
|
|
215
|
-
str += String.fromCharCode(55296 | ch >> 10, 56320 | ch & 1023);
|
|
216
|
-
}
|
|
217
|
-
}
|
|
218
|
-
return str;
|
|
167
|
+
function updateMemoryViews() {
|
|
168
|
+
var b = wasmMemory.buffer;
|
|
169
|
+
Module["HEAP8"] = HEAP8 = new Int8Array(b);
|
|
170
|
+
Module["HEAP16"] = HEAP16 = new Int16Array(b);
|
|
171
|
+
Module["HEAP32"] = HEAP32 = new Int32Array(b);
|
|
172
|
+
Module["HEAPU8"] = HEAPU8 = new Uint8Array(b);
|
|
173
|
+
Module["HEAPU16"] = HEAPU16 = new Uint16Array(b);
|
|
174
|
+
Module["HEAPU32"] = HEAPU32 = new Uint32Array(b);
|
|
175
|
+
Module["HEAPF32"] = HEAPF32 = new Float32Array(b);
|
|
176
|
+
Module["HEAPF64"] = HEAPF64 = new Float64Array(b);
|
|
219
177
|
}
|
|
220
178
|
|
|
221
|
-
function UTF8ToString(ptr, maxBytesToRead) {
|
|
222
|
-
return ptr ? UTF8ArrayToString(HEAPU8, ptr, maxBytesToRead) : "";
|
|
223
|
-
}
|
|
224
|
-
|
|
225
|
-
function stringToUTF8Array(str, heap, outIdx, maxBytesToWrite) {
|
|
226
|
-
if (!(maxBytesToWrite > 0)) return 0;
|
|
227
|
-
var startIdx = outIdx;
|
|
228
|
-
var endIdx = outIdx + maxBytesToWrite - 1;
|
|
229
|
-
for (var i = 0; i < str.length; ++i) {
|
|
230
|
-
var u = str.charCodeAt(i);
|
|
231
|
-
if (u >= 55296 && u <= 57343) {
|
|
232
|
-
var u1 = str.charCodeAt(++i);
|
|
233
|
-
u = 65536 + ((u & 1023) << 10) | u1 & 1023;
|
|
234
|
-
}
|
|
235
|
-
if (u <= 127) {
|
|
236
|
-
if (outIdx >= endIdx) break;
|
|
237
|
-
heap[outIdx++] = u;
|
|
238
|
-
} else if (u <= 2047) {
|
|
239
|
-
if (outIdx + 1 >= endIdx) break;
|
|
240
|
-
heap[outIdx++] = 192 | u >> 6;
|
|
241
|
-
heap[outIdx++] = 128 | u & 63;
|
|
242
|
-
} else if (u <= 65535) {
|
|
243
|
-
if (outIdx + 2 >= endIdx) break;
|
|
244
|
-
heap[outIdx++] = 224 | u >> 12;
|
|
245
|
-
heap[outIdx++] = 128 | u >> 6 & 63;
|
|
246
|
-
heap[outIdx++] = 128 | u & 63;
|
|
247
|
-
} else {
|
|
248
|
-
if (outIdx + 3 >= endIdx) break;
|
|
249
|
-
heap[outIdx++] = 240 | u >> 18;
|
|
250
|
-
heap[outIdx++] = 128 | u >> 12 & 63;
|
|
251
|
-
heap[outIdx++] = 128 | u >> 6 & 63;
|
|
252
|
-
heap[outIdx++] = 128 | u & 63;
|
|
253
|
-
}
|
|
254
|
-
}
|
|
255
|
-
heap[outIdx] = 0;
|
|
256
|
-
return outIdx - startIdx;
|
|
257
|
-
}
|
|
258
|
-
|
|
259
|
-
function stringToUTF8(str, outPtr, maxBytesToWrite) {
|
|
260
|
-
return stringToUTF8Array(str, HEAPU8, outPtr, maxBytesToWrite);
|
|
261
|
-
}
|
|
262
|
-
|
|
263
|
-
function lengthBytesUTF8(str) {
|
|
264
|
-
var len = 0;
|
|
265
|
-
for (var i = 0; i < str.length; ++i) {
|
|
266
|
-
var c = str.charCodeAt(i);
|
|
267
|
-
if (c <= 127) {
|
|
268
|
-
len++;
|
|
269
|
-
} else if (c <= 2047) {
|
|
270
|
-
len += 2;
|
|
271
|
-
} else if (c >= 55296 && c <= 57343) {
|
|
272
|
-
len += 4;
|
|
273
|
-
++i;
|
|
274
|
-
} else {
|
|
275
|
-
len += 3;
|
|
276
|
-
}
|
|
277
|
-
}
|
|
278
|
-
return len;
|
|
279
|
-
}
|
|
280
|
-
|
|
281
|
-
var buffer, HEAP8, HEAPU8, HEAP16, HEAPU16, HEAP32, HEAPU32, HEAPF32, HEAPF64;
|
|
282
|
-
|
|
283
|
-
function updateGlobalBufferAndViews(buf) {
|
|
284
|
-
buffer = buf;
|
|
285
|
-
Module["HEAP8"] = HEAP8 = new Int8Array(buf);
|
|
286
|
-
Module["HEAP16"] = HEAP16 = new Int16Array(buf);
|
|
287
|
-
Module["HEAP32"] = HEAP32 = new Int32Array(buf);
|
|
288
|
-
Module["HEAPU8"] = HEAPU8 = new Uint8Array(buf);
|
|
289
|
-
Module["HEAPU16"] = HEAPU16 = new Uint16Array(buf);
|
|
290
|
-
Module["HEAPU32"] = HEAPU32 = new Uint32Array(buf);
|
|
291
|
-
Module["HEAPF32"] = HEAPF32 = new Float32Array(buf);
|
|
292
|
-
Module["HEAPF64"] = HEAPF64 = new Float64Array(buf);
|
|
293
|
-
}
|
|
294
|
-
|
|
295
|
-
var INITIAL_MEMORY = Module["INITIAL_MEMORY"] || 16777216;
|
|
296
|
-
|
|
297
179
|
var wasmTable;
|
|
298
180
|
|
|
299
181
|
var __ATPRERUN__ = [];
|
|
@@ -306,8 +188,10 @@ var __ATPOSTRUN__ = [];
|
|
|
306
188
|
|
|
307
189
|
var runtimeInitialized = false;
|
|
308
190
|
|
|
191
|
+
var runtimeKeepaliveCounter = 0;
|
|
192
|
+
|
|
309
193
|
function keepRuntimeAlive() {
|
|
310
|
-
return noExitRuntime;
|
|
194
|
+
return noExitRuntime || runtimeKeepaliveCounter > 0;
|
|
311
195
|
}
|
|
312
196
|
|
|
313
197
|
function preRun() {
|
|
@@ -431,23 +315,23 @@ function getBinary(file) {
|
|
|
431
315
|
}
|
|
432
316
|
}
|
|
433
317
|
|
|
434
|
-
function getBinaryPromise() {
|
|
318
|
+
function getBinaryPromise(binaryFile) {
|
|
435
319
|
if (!wasmBinary && (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER)) {
|
|
436
|
-
if (typeof fetch == "function" && !isFileURI(
|
|
437
|
-
return fetch(
|
|
320
|
+
if (typeof fetch == "function" && !isFileURI(binaryFile)) {
|
|
321
|
+
return fetch(binaryFile, {
|
|
438
322
|
credentials: "same-origin"
|
|
439
323
|
}).then(function(response) {
|
|
440
324
|
if (!response["ok"]) {
|
|
441
|
-
throw "failed to load wasm binary file at '" +
|
|
325
|
+
throw "failed to load wasm binary file at '" + binaryFile + "'";
|
|
442
326
|
}
|
|
443
327
|
return response["arrayBuffer"]();
|
|
444
328
|
}).catch(function() {
|
|
445
|
-
return getBinary(
|
|
329
|
+
return getBinary(binaryFile);
|
|
446
330
|
});
|
|
447
331
|
} else {
|
|
448
332
|
if (readAsync) {
|
|
449
333
|
return new Promise(function(resolve, reject) {
|
|
450
|
-
readAsync(
|
|
334
|
+
readAsync(binaryFile, function(response) {
|
|
451
335
|
resolve(new Uint8Array(response));
|
|
452
336
|
}, reject);
|
|
453
337
|
});
|
|
@@ -455,63 +339,65 @@ function getBinaryPromise() {
|
|
|
455
339
|
}
|
|
456
340
|
}
|
|
457
341
|
return Promise.resolve().then(function() {
|
|
458
|
-
return getBinary(
|
|
342
|
+
return getBinary(binaryFile);
|
|
343
|
+
});
|
|
344
|
+
}
|
|
345
|
+
|
|
346
|
+
function instantiateArrayBuffer(binaryFile, imports, receiver) {
|
|
347
|
+
return getBinaryPromise(binaryFile).then(function(binary) {
|
|
348
|
+
return WebAssembly.instantiate(binary, imports);
|
|
349
|
+
}).then(function(instance) {
|
|
350
|
+
return instance;
|
|
351
|
+
}).then(receiver, function(reason) {
|
|
352
|
+
err("failed to asynchronously prepare wasm: " + reason);
|
|
353
|
+
abort(reason);
|
|
459
354
|
});
|
|
460
355
|
}
|
|
461
356
|
|
|
357
|
+
function instantiateAsync(binary, binaryFile, imports, callback) {
|
|
358
|
+
if (!binary && typeof WebAssembly.instantiateStreaming == "function" && !isDataURI(binaryFile) && !isFileURI(binaryFile) && !ENVIRONMENT_IS_NODE && typeof fetch == "function") {
|
|
359
|
+
return fetch(binaryFile, {
|
|
360
|
+
credentials: "same-origin"
|
|
361
|
+
}).then(function(response) {
|
|
362
|
+
var result = WebAssembly.instantiateStreaming(response, imports);
|
|
363
|
+
return result.then(callback, function(reason) {
|
|
364
|
+
err("wasm streaming compile failed: " + reason);
|
|
365
|
+
err("falling back to ArrayBuffer instantiation");
|
|
366
|
+
return instantiateArrayBuffer(binaryFile, imports, callback);
|
|
367
|
+
});
|
|
368
|
+
});
|
|
369
|
+
} else {
|
|
370
|
+
return instantiateArrayBuffer(binaryFile, imports, callback);
|
|
371
|
+
}
|
|
372
|
+
}
|
|
373
|
+
|
|
462
374
|
function createWasm() {
|
|
463
375
|
var info = {
|
|
464
|
-
"a":
|
|
376
|
+
"a": wasmImports
|
|
465
377
|
};
|
|
466
378
|
function receiveInstance(instance, module) {
|
|
467
379
|
var exports = instance.exports;
|
|
468
380
|
Module["asm"] = exports;
|
|
469
381
|
wasmMemory = Module["asm"]["jd"];
|
|
470
|
-
|
|
382
|
+
updateMemoryViews();
|
|
471
383
|
wasmTable = Module["asm"]["ld"];
|
|
472
384
|
addOnInit(Module["asm"]["kd"]);
|
|
473
385
|
removeRunDependency("wasm-instantiate");
|
|
386
|
+
return exports;
|
|
474
387
|
}
|
|
475
388
|
addRunDependency("wasm-instantiate");
|
|
476
389
|
function receiveInstantiationResult(result) {
|
|
477
390
|
receiveInstance(result["instance"]);
|
|
478
391
|
}
|
|
479
|
-
function instantiateArrayBuffer(receiver) {
|
|
480
|
-
return getBinaryPromise().then(function(binary) {
|
|
481
|
-
return WebAssembly.instantiate(binary, info);
|
|
482
|
-
}).then(function(instance) {
|
|
483
|
-
return instance;
|
|
484
|
-
}).then(receiver, function(reason) {
|
|
485
|
-
err("failed to asynchronously prepare wasm: " + reason);
|
|
486
|
-
abort(reason);
|
|
487
|
-
});
|
|
488
|
-
}
|
|
489
|
-
function instantiateAsync() {
|
|
490
|
-
if (!wasmBinary && typeof WebAssembly.instantiateStreaming == "function" && !isDataURI(wasmBinaryFile) && !isFileURI(wasmBinaryFile) && !ENVIRONMENT_IS_NODE && typeof fetch == "function") {
|
|
491
|
-
return fetch(wasmBinaryFile, {
|
|
492
|
-
credentials: "same-origin"
|
|
493
|
-
}).then(function(response) {
|
|
494
|
-
var result = WebAssembly.instantiateStreaming(response, info);
|
|
495
|
-
return result.then(receiveInstantiationResult, function(reason) {
|
|
496
|
-
err("wasm streaming compile failed: " + reason);
|
|
497
|
-
err("falling back to ArrayBuffer instantiation");
|
|
498
|
-
return instantiateArrayBuffer(receiveInstantiationResult);
|
|
499
|
-
});
|
|
500
|
-
});
|
|
501
|
-
} else {
|
|
502
|
-
return instantiateArrayBuffer(receiveInstantiationResult);
|
|
503
|
-
}
|
|
504
|
-
}
|
|
505
392
|
if (Module["instantiateWasm"]) {
|
|
506
393
|
try {
|
|
507
|
-
|
|
508
|
-
return exports;
|
|
394
|
+
return Module["instantiateWasm"](info, receiveInstance);
|
|
509
395
|
} catch (e) {
|
|
510
396
|
err("Module.instantiateWasm callback failed with error: " + e);
|
|
511
397
|
readyPromiseReject(e);
|
|
512
398
|
}
|
|
513
399
|
}
|
|
514
|
-
instantiateAsync().catch(readyPromiseReject);
|
|
400
|
+
instantiateAsync(wasmBinary, wasmBinaryFile, info, receiveInstantiationResult).catch(readyPromiseReject);
|
|
515
401
|
return {};
|
|
516
402
|
}
|
|
517
403
|
|
|
@@ -520,15 +406,15 @@ var tempDouble;
|
|
|
520
406
|
var tempI64;
|
|
521
407
|
|
|
522
408
|
var ASM_CONSTS = {
|
|
523
|
-
|
|
409
|
+
1030022: $0 => {
|
|
524
410
|
const canvas = Emval.toValue($0);
|
|
525
411
|
const context = canvas.getContext("webgpu");
|
|
526
412
|
return JsValStore.add(context.getCurrentTexture());
|
|
527
413
|
},
|
|
528
|
-
|
|
414
|
+
1030157: () => {
|
|
529
415
|
return typeof HTMLCanvasElement !== "undefined";
|
|
530
416
|
},
|
|
531
|
-
|
|
417
|
+
1030212: ($0, $1, $2, $3, $4) => {
|
|
532
418
|
const drawable = Emval.toValue($0);
|
|
533
419
|
const device = JsValStore.get($1);
|
|
534
420
|
const texture = JsValStore.get($2);
|
|
@@ -540,7 +426,7 @@ var ASM_CONSTS = {
|
|
|
540
426
|
texture: texture
|
|
541
427
|
}, [ width, height ]);
|
|
542
428
|
},
|
|
543
|
-
|
|
429
|
+
1030463: ($0, $1, $2, $3) => {
|
|
544
430
|
const sourceExtTex = Emval.toValue($0);
|
|
545
431
|
const device = JsValStore.get($1);
|
|
546
432
|
const sampler = JsValStore.get($2);
|
|
@@ -557,56 +443,33 @@ var ASM_CONSTS = {
|
|
|
557
443
|
});
|
|
558
444
|
return JsValStore.add(bindGroup);
|
|
559
445
|
},
|
|
560
|
-
|
|
446
|
+
1030811: ($0, $1) => {
|
|
561
447
|
const inputArray = Emval.toValue($0);
|
|
562
448
|
const output = Emval.toValue($1);
|
|
563
449
|
const ctx = output.getContext("2d");
|
|
564
450
|
const image_data = new ImageData(inputArray, output.width, output.height);
|
|
565
451
|
ctx.putImageData(image_data, 0, 0);
|
|
566
452
|
},
|
|
567
|
-
|
|
453
|
+
1031035: ($0, $1) => {
|
|
568
454
|
const input = Emval.toValue($0);
|
|
569
455
|
const outputArray = Emval.toValue($1);
|
|
570
456
|
const ctx = input.getContext("2d");
|
|
571
457
|
const data = ctx.getImageData(0, 0, input.width, input.height);
|
|
572
458
|
outputArray.set(data.data);
|
|
573
459
|
},
|
|
574
|
-
|
|
460
|
+
1031239: ($0, $1) => {
|
|
575
461
|
const input = Emval.toValue($0);
|
|
576
462
|
const output = Emval.toValue($1);
|
|
577
463
|
const ctx = output.getContext("2d");
|
|
578
464
|
ctx.drawImage(input, 0, 0);
|
|
579
465
|
},
|
|
580
|
-
|
|
466
|
+
1031375: () => {
|
|
581
467
|
return !!Module["preinitializedWebGPUDevice"];
|
|
582
468
|
},
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
if (init_once) {
|
|
586
|
-
const cachedFindCanvasEventTarget = findCanvasEventTarget;
|
|
587
|
-
if (typeof cachedFindCanvasEventTarget !== "function") {
|
|
588
|
-
if (typeof console !== "undefined") {
|
|
589
|
-
console.error("Expected Emscripten global function " + '"findCanvasEventTarget" not found. WebGL context creation ' + "may fail.");
|
|
590
|
-
}
|
|
591
|
-
return;
|
|
592
|
-
}
|
|
593
|
-
findCanvasEventTarget = function(target) {
|
|
594
|
-
if (target == 0) {
|
|
595
|
-
if (Module && Module.canvas) {
|
|
596
|
-
return Module.canvas;
|
|
597
|
-
} else if (Module && Module.canvasCssSelector) {
|
|
598
|
-
return cachedFindCanvasEventTarget(Module.canvasCssSelector);
|
|
599
|
-
}
|
|
600
|
-
if (typeof console !== "undefined") {
|
|
601
|
-
console.warn("Module properties canvas and canvasCssSelector not " + "found during WebGL context creation.");
|
|
602
|
-
}
|
|
603
|
-
}
|
|
604
|
-
return cachedFindCanvasEventTarget(target);
|
|
605
|
-
};
|
|
606
|
-
init_once = false;
|
|
607
|
-
}
|
|
469
|
+
1031426: () => {
|
|
470
|
+
specialHTMLTargets["#canvas"] = Module.canvas;
|
|
608
471
|
},
|
|
609
|
-
|
|
472
|
+
1031477: () => {
|
|
610
473
|
return typeof wasmOffsetConverter !== "undefined";
|
|
611
474
|
}
|
|
612
475
|
};
|
|
@@ -828,11 +691,75 @@ var _emscripten_get_now;
|
|
|
828
691
|
|
|
829
692
|
if (ENVIRONMENT_IS_NODE) {
|
|
830
693
|
_emscripten_get_now = () => {
|
|
831
|
-
var t = process
|
|
694
|
+
var t = process.hrtime();
|
|
832
695
|
return t[0] * 1e3 + t[1] / 1e6;
|
|
833
696
|
};
|
|
834
697
|
} else _emscripten_get_now = () => performance.now();
|
|
835
698
|
|
|
699
|
+
function setMainLoop(browserIterationFunc, fps, simulateInfiniteLoop, arg, noSetTiming) {
|
|
700
|
+
assert(!Browser.mainLoop.func, "emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters.");
|
|
701
|
+
Browser.mainLoop.func = browserIterationFunc;
|
|
702
|
+
Browser.mainLoop.arg = arg;
|
|
703
|
+
var thisMainLoopId = Browser.mainLoop.currentlyRunningMainloop;
|
|
704
|
+
function checkIsRunning() {
|
|
705
|
+
if (thisMainLoopId < Browser.mainLoop.currentlyRunningMainloop) {
|
|
706
|
+
return false;
|
|
707
|
+
}
|
|
708
|
+
return true;
|
|
709
|
+
}
|
|
710
|
+
Browser.mainLoop.running = false;
|
|
711
|
+
Browser.mainLoop.runner = function Browser_mainLoop_runner() {
|
|
712
|
+
if (ABORT) return;
|
|
713
|
+
if (Browser.mainLoop.queue.length > 0) {
|
|
714
|
+
var start = Date.now();
|
|
715
|
+
var blocker = Browser.mainLoop.queue.shift();
|
|
716
|
+
blocker.func(blocker.arg);
|
|
717
|
+
if (Browser.mainLoop.remainingBlockers) {
|
|
718
|
+
var remaining = Browser.mainLoop.remainingBlockers;
|
|
719
|
+
var next = remaining % 1 == 0 ? remaining - 1 : Math.floor(remaining);
|
|
720
|
+
if (blocker.counted) {
|
|
721
|
+
Browser.mainLoop.remainingBlockers = next;
|
|
722
|
+
} else {
|
|
723
|
+
next = next + .5;
|
|
724
|
+
Browser.mainLoop.remainingBlockers = (8 * remaining + next) / 9;
|
|
725
|
+
}
|
|
726
|
+
}
|
|
727
|
+
out('main loop blocker "' + blocker.name + '" took ' + (Date.now() - start) + " ms");
|
|
728
|
+
Browser.mainLoop.updateStatus();
|
|
729
|
+
if (!checkIsRunning()) return;
|
|
730
|
+
setTimeout(Browser.mainLoop.runner, 0);
|
|
731
|
+
return;
|
|
732
|
+
}
|
|
733
|
+
if (!checkIsRunning()) return;
|
|
734
|
+
Browser.mainLoop.currentFrameNumber = Browser.mainLoop.currentFrameNumber + 1 | 0;
|
|
735
|
+
if (Browser.mainLoop.timingMode == 1 && Browser.mainLoop.timingValue > 1 && Browser.mainLoop.currentFrameNumber % Browser.mainLoop.timingValue != 0) {
|
|
736
|
+
Browser.mainLoop.scheduler();
|
|
737
|
+
return;
|
|
738
|
+
} else if (Browser.mainLoop.timingMode == 0) {
|
|
739
|
+
Browser.mainLoop.tickStartTime = _emscripten_get_now();
|
|
740
|
+
}
|
|
741
|
+
GL.newRenderingFrameStarted();
|
|
742
|
+
Browser.mainLoop.runIter(browserIterationFunc);
|
|
743
|
+
if (!checkIsRunning()) return;
|
|
744
|
+
if (typeof SDL == "object" && SDL.audio && SDL.audio.queueNewAudioData) SDL.audio.queueNewAudioData();
|
|
745
|
+
Browser.mainLoop.scheduler();
|
|
746
|
+
};
|
|
747
|
+
if (!noSetTiming) {
|
|
748
|
+
if (fps && fps > 0) _emscripten_set_main_loop_timing(0, 1e3 / fps); else _emscripten_set_main_loop_timing(1, 1);
|
|
749
|
+
Browser.mainLoop.scheduler();
|
|
750
|
+
}
|
|
751
|
+
if (simulateInfiniteLoop) {
|
|
752
|
+
throw "unwind";
|
|
753
|
+
}
|
|
754
|
+
}
|
|
755
|
+
|
|
756
|
+
function handleException(e) {
|
|
757
|
+
if (e instanceof ExitStatus || e == "unwind") {
|
|
758
|
+
return EXITSTATUS;
|
|
759
|
+
}
|
|
760
|
+
quit_(1, e);
|
|
761
|
+
}
|
|
762
|
+
|
|
836
763
|
function ExitStatus(status) {
|
|
837
764
|
this.name = "ExitStatus";
|
|
838
765
|
this.message = "Program terminated with exit(" + status + ")";
|
|
@@ -904,20 +831,25 @@ var PATH = {
|
|
|
904
831
|
}
|
|
905
832
|
};
|
|
906
833
|
|
|
907
|
-
function
|
|
834
|
+
function initRandomFill() {
|
|
908
835
|
if (typeof crypto == "object" && typeof crypto["getRandomValues"] == "function") {
|
|
909
|
-
|
|
910
|
-
return () => {
|
|
911
|
-
crypto.getRandomValues(randomBuffer);
|
|
912
|
-
return randomBuffer[0];
|
|
913
|
-
};
|
|
836
|
+
return view => crypto.getRandomValues(view);
|
|
914
837
|
} else if (ENVIRONMENT_IS_NODE) {
|
|
915
838
|
try {
|
|
916
839
|
var crypto_module = require("crypto");
|
|
917
|
-
|
|
840
|
+
var randomFillSync = crypto_module["randomFillSync"];
|
|
841
|
+
if (randomFillSync) {
|
|
842
|
+
return view => crypto_module["randomFillSync"](view);
|
|
843
|
+
}
|
|
844
|
+
var randomBytes = crypto_module["randomBytes"];
|
|
845
|
+
return view => (view.set(randomBytes(view.byteLength)), view);
|
|
918
846
|
} catch (e) {}
|
|
919
847
|
}
|
|
920
|
-
|
|
848
|
+
abort("initRandomDevice");
|
|
849
|
+
}
|
|
850
|
+
|
|
851
|
+
function randomFill(view) {
|
|
852
|
+
return (randomFill = initRandomFill())(view);
|
|
921
853
|
}
|
|
922
854
|
|
|
923
855
|
var PATH_FS = {
|
|
@@ -970,6 +902,58 @@ var PATH_FS = {
|
|
|
970
902
|
}
|
|
971
903
|
};
|
|
972
904
|
|
|
905
|
+
function lengthBytesUTF8(str) {
|
|
906
|
+
var len = 0;
|
|
907
|
+
for (var i = 0; i < str.length; ++i) {
|
|
908
|
+
var c = str.charCodeAt(i);
|
|
909
|
+
if (c <= 127) {
|
|
910
|
+
len++;
|
|
911
|
+
} else if (c <= 2047) {
|
|
912
|
+
len += 2;
|
|
913
|
+
} else if (c >= 55296 && c <= 57343) {
|
|
914
|
+
len += 4;
|
|
915
|
+
++i;
|
|
916
|
+
} else {
|
|
917
|
+
len += 3;
|
|
918
|
+
}
|
|
919
|
+
}
|
|
920
|
+
return len;
|
|
921
|
+
}
|
|
922
|
+
|
|
923
|
+
function stringToUTF8Array(str, heap, outIdx, maxBytesToWrite) {
|
|
924
|
+
if (!(maxBytesToWrite > 0)) return 0;
|
|
925
|
+
var startIdx = outIdx;
|
|
926
|
+
var endIdx = outIdx + maxBytesToWrite - 1;
|
|
927
|
+
for (var i = 0; i < str.length; ++i) {
|
|
928
|
+
var u = str.charCodeAt(i);
|
|
929
|
+
if (u >= 55296 && u <= 57343) {
|
|
930
|
+
var u1 = str.charCodeAt(++i);
|
|
931
|
+
u = 65536 + ((u & 1023) << 10) | u1 & 1023;
|
|
932
|
+
}
|
|
933
|
+
if (u <= 127) {
|
|
934
|
+
if (outIdx >= endIdx) break;
|
|
935
|
+
heap[outIdx++] = u;
|
|
936
|
+
} else if (u <= 2047) {
|
|
937
|
+
if (outIdx + 1 >= endIdx) break;
|
|
938
|
+
heap[outIdx++] = 192 | u >> 6;
|
|
939
|
+
heap[outIdx++] = 128 | u & 63;
|
|
940
|
+
} else if (u <= 65535) {
|
|
941
|
+
if (outIdx + 2 >= endIdx) break;
|
|
942
|
+
heap[outIdx++] = 224 | u >> 12;
|
|
943
|
+
heap[outIdx++] = 128 | u >> 6 & 63;
|
|
944
|
+
heap[outIdx++] = 128 | u & 63;
|
|
945
|
+
} else {
|
|
946
|
+
if (outIdx + 3 >= endIdx) break;
|
|
947
|
+
heap[outIdx++] = 240 | u >> 18;
|
|
948
|
+
heap[outIdx++] = 128 | u >> 12 & 63;
|
|
949
|
+
heap[outIdx++] = 128 | u >> 6 & 63;
|
|
950
|
+
heap[outIdx++] = 128 | u & 63;
|
|
951
|
+
}
|
|
952
|
+
}
|
|
953
|
+
heap[outIdx] = 0;
|
|
954
|
+
return outIdx - startIdx;
|
|
955
|
+
}
|
|
956
|
+
|
|
973
957
|
function intArrayFromString(stringy, dontAddNull, length) {
|
|
974
958
|
var len = length > 0 ? length : lengthBytesUTF8(stringy) + 1;
|
|
975
959
|
var u8array = new Array(len);
|
|
@@ -1407,7 +1391,7 @@ var MEMFS = {
|
|
|
1407
1391
|
var ptr;
|
|
1408
1392
|
var allocated;
|
|
1409
1393
|
var contents = stream.node.contents;
|
|
1410
|
-
if (!(flags & 2) && contents.buffer === buffer) {
|
|
1394
|
+
if (!(flags & 2) && contents.buffer === HEAP8.buffer) {
|
|
1411
1395
|
allocated = false;
|
|
1412
1396
|
ptr = contents.byteOffset;
|
|
1413
1397
|
} else {
|
|
@@ -2480,9 +2464,15 @@ var FS = {
|
|
|
2480
2464
|
TTY.register(FS.makedev(6, 0), TTY.default_tty1_ops);
|
|
2481
2465
|
FS.mkdev("/dev/tty", FS.makedev(5, 0));
|
|
2482
2466
|
FS.mkdev("/dev/tty1", FS.makedev(6, 0));
|
|
2483
|
-
var
|
|
2484
|
-
|
|
2485
|
-
|
|
2467
|
+
var randomBuffer = new Uint8Array(1024), randomLeft = 0;
|
|
2468
|
+
var randomByte = () => {
|
|
2469
|
+
if (randomLeft === 0) {
|
|
2470
|
+
randomLeft = randomFill(randomBuffer).byteLength;
|
|
2471
|
+
}
|
|
2472
|
+
return randomBuffer[--randomLeft];
|
|
2473
|
+
};
|
|
2474
|
+
FS.createDevice("/dev", "random", randomByte);
|
|
2475
|
+
FS.createDevice("/dev", "urandom", randomByte);
|
|
2486
2476
|
FS.mkdir("/dev/shm");
|
|
2487
2477
|
FS.mkdir("/dev/shm/tmp");
|
|
2488
2478
|
},
|
|
@@ -2538,6 +2528,7 @@ var FS = {
|
|
|
2538
2528
|
ensureErrnoError: () => {
|
|
2539
2529
|
if (FS.ErrnoError) return;
|
|
2540
2530
|
FS.ErrnoError = function ErrnoError(errno, node) {
|
|
2531
|
+
this.name = "ErrnoError";
|
|
2541
2532
|
this.node = node;
|
|
2542
2533
|
this.setErrno = function(errno) {
|
|
2543
2534
|
this.errno = errno;
|
|
@@ -2919,95 +2910,49 @@ var FS = {
|
|
|
2919
2910
|
} else {
|
|
2920
2911
|
processData(url);
|
|
2921
2912
|
}
|
|
2922
|
-
}
|
|
2923
|
-
|
|
2924
|
-
|
|
2925
|
-
|
|
2926
|
-
|
|
2927
|
-
|
|
2928
|
-
|
|
2929
|
-
|
|
2930
|
-
|
|
2931
|
-
|
|
2932
|
-
|
|
2933
|
-
|
|
2934
|
-
|
|
2935
|
-
|
|
2936
|
-
|
|
2937
|
-
|
|
2938
|
-
|
|
2913
|
+
}
|
|
2914
|
+
};
|
|
2915
|
+
|
|
2916
|
+
var UTF8Decoder = typeof TextDecoder != "undefined" ? new TextDecoder("utf8") : undefined;
|
|
2917
|
+
|
|
2918
|
+
function UTF8ArrayToString(heapOrArray, idx, maxBytesToRead) {
|
|
2919
|
+
var endIdx = idx + maxBytesToRead;
|
|
2920
|
+
var endPtr = idx;
|
|
2921
|
+
while (heapOrArray[endPtr] && !(endPtr >= endIdx)) ++endPtr;
|
|
2922
|
+
if (endPtr - idx > 16 && heapOrArray.buffer && UTF8Decoder) {
|
|
2923
|
+
return UTF8Decoder.decode(heapOrArray.subarray(idx, endPtr));
|
|
2924
|
+
}
|
|
2925
|
+
var str = "";
|
|
2926
|
+
while (idx < endPtr) {
|
|
2927
|
+
var u0 = heapOrArray[idx++];
|
|
2928
|
+
if (!(u0 & 128)) {
|
|
2929
|
+
str += String.fromCharCode(u0);
|
|
2930
|
+
continue;
|
|
2939
2931
|
}
|
|
2940
|
-
|
|
2941
|
-
|
|
2942
|
-
|
|
2943
|
-
|
|
2944
|
-
}
|
|
2945
|
-
|
|
2946
|
-
|
|
2947
|
-
|
|
2948
|
-
|
|
2949
|
-
|
|
2950
|
-
|
|
2951
|
-
|
|
2952
|
-
|
|
2953
|
-
|
|
2954
|
-
|
|
2955
|
-
|
|
2956
|
-
ok++;
|
|
2957
|
-
if (ok + fail == total) finish();
|
|
2958
|
-
};
|
|
2959
|
-
putRequest.onerror = () => {
|
|
2960
|
-
fail++;
|
|
2961
|
-
if (ok + fail == total) finish();
|
|
2962
|
-
};
|
|
2963
|
-
});
|
|
2964
|
-
transaction.onerror = onerror;
|
|
2965
|
-
};
|
|
2966
|
-
openRequest.onerror = onerror;
|
|
2967
|
-
},
|
|
2968
|
-
loadFilesFromDB: (paths, onload, onerror) => {
|
|
2969
|
-
onload = onload || (() => {});
|
|
2970
|
-
onerror = onerror || (() => {});
|
|
2971
|
-
var indexedDB = FS.indexedDB();
|
|
2972
|
-
try {
|
|
2973
|
-
var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION);
|
|
2974
|
-
} catch (e) {
|
|
2975
|
-
return onerror(e);
|
|
2932
|
+
var u1 = heapOrArray[idx++] & 63;
|
|
2933
|
+
if ((u0 & 224) == 192) {
|
|
2934
|
+
str += String.fromCharCode((u0 & 31) << 6 | u1);
|
|
2935
|
+
continue;
|
|
2936
|
+
}
|
|
2937
|
+
var u2 = heapOrArray[idx++] & 63;
|
|
2938
|
+
if ((u0 & 240) == 224) {
|
|
2939
|
+
u0 = (u0 & 15) << 12 | u1 << 6 | u2;
|
|
2940
|
+
} else {
|
|
2941
|
+
u0 = (u0 & 7) << 18 | u1 << 12 | u2 << 6 | heapOrArray[idx++] & 63;
|
|
2942
|
+
}
|
|
2943
|
+
if (u0 < 65536) {
|
|
2944
|
+
str += String.fromCharCode(u0);
|
|
2945
|
+
} else {
|
|
2946
|
+
var ch = u0 - 65536;
|
|
2947
|
+
str += String.fromCharCode(55296 | ch >> 10, 56320 | ch & 1023);
|
|
2976
2948
|
}
|
|
2977
|
-
openRequest.onupgradeneeded = onerror;
|
|
2978
|
-
openRequest.onsuccess = () => {
|
|
2979
|
-
var db = openRequest.result;
|
|
2980
|
-
try {
|
|
2981
|
-
var transaction = db.transaction([ FS.DB_STORE_NAME ], "readonly");
|
|
2982
|
-
} catch (e) {
|
|
2983
|
-
onerror(e);
|
|
2984
|
-
return;
|
|
2985
|
-
}
|
|
2986
|
-
var files = transaction.objectStore(FS.DB_STORE_NAME);
|
|
2987
|
-
var ok = 0, fail = 0, total = paths.length;
|
|
2988
|
-
function finish() {
|
|
2989
|
-
if (fail == 0) onload(); else onerror();
|
|
2990
|
-
}
|
|
2991
|
-
paths.forEach(path => {
|
|
2992
|
-
var getRequest = files.get(path);
|
|
2993
|
-
getRequest.onsuccess = () => {
|
|
2994
|
-
if (FS.analyzePath(path).exists) {
|
|
2995
|
-
FS.unlink(path);
|
|
2996
|
-
}
|
|
2997
|
-
FS.createDataFile(PATH.dirname(path), PATH.basename(path), getRequest.result, true, true, true);
|
|
2998
|
-
ok++;
|
|
2999
|
-
if (ok + fail == total) finish();
|
|
3000
|
-
};
|
|
3001
|
-
getRequest.onerror = () => {
|
|
3002
|
-
fail++;
|
|
3003
|
-
if (ok + fail == total) finish();
|
|
3004
|
-
};
|
|
3005
|
-
});
|
|
3006
|
-
transaction.onerror = onerror;
|
|
3007
|
-
};
|
|
3008
|
-
openRequest.onerror = onerror;
|
|
3009
2949
|
}
|
|
3010
|
-
|
|
2950
|
+
return str;
|
|
2951
|
+
}
|
|
2952
|
+
|
|
2953
|
+
function UTF8ToString(ptr, maxBytesToRead) {
|
|
2954
|
+
return ptr ? UTF8ArrayToString(HEAPU8, ptr, maxBytesToRead) : "";
|
|
2955
|
+
}
|
|
3011
2956
|
|
|
3012
2957
|
var SYSCALLS = {
|
|
3013
2958
|
DEFAULT_POLLMASK: 5,
|
|
@@ -3050,18 +2995,21 @@ var SYSCALLS = {
|
|
|
3050
2995
|
HEAP32[buf + 40 >> 2] = tempI64[0], HEAP32[buf + 44 >> 2] = tempI64[1];
|
|
3051
2996
|
HEAP32[buf + 48 >> 2] = 4096;
|
|
3052
2997
|
HEAP32[buf + 52 >> 2] = stat.blocks;
|
|
3053
|
-
|
|
2998
|
+
var atime = stat.atime.getTime();
|
|
2999
|
+
var mtime = stat.mtime.getTime();
|
|
3000
|
+
var ctime = stat.ctime.getTime();
|
|
3001
|
+
tempI64 = [ Math.floor(atime / 1e3) >>> 0, (tempDouble = Math.floor(atime / 1e3),
|
|
3054
3002
|
+Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math.min(+Math.floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0) ],
|
|
3055
3003
|
HEAP32[buf + 56 >> 2] = tempI64[0], HEAP32[buf + 60 >> 2] = tempI64[1];
|
|
3056
|
-
HEAPU32[buf + 64 >> 2] =
|
|
3057
|
-
tempI64 = [ Math.floor(
|
|
3004
|
+
HEAPU32[buf + 64 >> 2] = atime % 1e3 * 1e3;
|
|
3005
|
+
tempI64 = [ Math.floor(mtime / 1e3) >>> 0, (tempDouble = Math.floor(mtime / 1e3),
|
|
3058
3006
|
+Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math.min(+Math.floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0) ],
|
|
3059
3007
|
HEAP32[buf + 72 >> 2] = tempI64[0], HEAP32[buf + 76 >> 2] = tempI64[1];
|
|
3060
|
-
HEAPU32[buf + 80 >> 2] =
|
|
3061
|
-
tempI64 = [ Math.floor(
|
|
3008
|
+
HEAPU32[buf + 80 >> 2] = mtime % 1e3 * 1e3;
|
|
3009
|
+
tempI64 = [ Math.floor(ctime / 1e3) >>> 0, (tempDouble = Math.floor(ctime / 1e3),
|
|
3062
3010
|
+Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math.min(+Math.floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0) ],
|
|
3063
3011
|
HEAP32[buf + 88 >> 2] = tempI64[0], HEAP32[buf + 92 >> 2] = tempI64[1];
|
|
3064
|
-
HEAPU32[buf + 96 >> 2] =
|
|
3012
|
+
HEAPU32[buf + 96 >> 2] = ctime % 1e3 * 1e3;
|
|
3065
3013
|
tempI64 = [ stat.ino >>> 0, (tempDouble = stat.ino, +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math.min(+Math.floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0) ],
|
|
3066
3014
|
HEAP32[buf + 104 >> 2] = tempI64[0], HEAP32[buf + 108 >> 2] = tempI64[1];
|
|
3067
3015
|
return 0;
|
|
@@ -3109,70 +3057,13 @@ function exitJS(status, implicit) {
|
|
|
3109
3057
|
|
|
3110
3058
|
var _exit = exitJS;
|
|
3111
3059
|
|
|
3112
|
-
function
|
|
3113
|
-
if (
|
|
3114
|
-
|
|
3115
|
-
|
|
3116
|
-
|
|
3117
|
-
|
|
3118
|
-
|
|
3119
|
-
function maybeExit() {}
|
|
3120
|
-
|
|
3121
|
-
function setMainLoop(browserIterationFunc, fps, simulateInfiniteLoop, arg, noSetTiming) {
|
|
3122
|
-
assert(!Browser.mainLoop.func, "emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters.");
|
|
3123
|
-
Browser.mainLoop.func = browserIterationFunc;
|
|
3124
|
-
Browser.mainLoop.arg = arg;
|
|
3125
|
-
var thisMainLoopId = Browser.mainLoop.currentlyRunningMainloop;
|
|
3126
|
-
function checkIsRunning() {
|
|
3127
|
-
if (thisMainLoopId < Browser.mainLoop.currentlyRunningMainloop) {
|
|
3128
|
-
maybeExit();
|
|
3129
|
-
return false;
|
|
3130
|
-
}
|
|
3131
|
-
return true;
|
|
3132
|
-
}
|
|
3133
|
-
Browser.mainLoop.running = false;
|
|
3134
|
-
Browser.mainLoop.runner = function Browser_mainLoop_runner() {
|
|
3135
|
-
if (ABORT) return;
|
|
3136
|
-
if (Browser.mainLoop.queue.length > 0) {
|
|
3137
|
-
var start = Date.now();
|
|
3138
|
-
var blocker = Browser.mainLoop.queue.shift();
|
|
3139
|
-
blocker.func(blocker.arg);
|
|
3140
|
-
if (Browser.mainLoop.remainingBlockers) {
|
|
3141
|
-
var remaining = Browser.mainLoop.remainingBlockers;
|
|
3142
|
-
var next = remaining % 1 == 0 ? remaining - 1 : Math.floor(remaining);
|
|
3143
|
-
if (blocker.counted) {
|
|
3144
|
-
Browser.mainLoop.remainingBlockers = next;
|
|
3145
|
-
} else {
|
|
3146
|
-
next = next + .5;
|
|
3147
|
-
Browser.mainLoop.remainingBlockers = (8 * remaining + next) / 9;
|
|
3148
|
-
}
|
|
3149
|
-
}
|
|
3150
|
-
out('main loop blocker "' + blocker.name + '" took ' + (Date.now() - start) + " ms");
|
|
3151
|
-
Browser.mainLoop.updateStatus();
|
|
3152
|
-
if (!checkIsRunning()) return;
|
|
3153
|
-
setTimeout(Browser.mainLoop.runner, 0);
|
|
3154
|
-
return;
|
|
3155
|
-
}
|
|
3156
|
-
if (!checkIsRunning()) return;
|
|
3157
|
-
Browser.mainLoop.currentFrameNumber = Browser.mainLoop.currentFrameNumber + 1 | 0;
|
|
3158
|
-
if (Browser.mainLoop.timingMode == 1 && Browser.mainLoop.timingValue > 1 && Browser.mainLoop.currentFrameNumber % Browser.mainLoop.timingValue != 0) {
|
|
3159
|
-
Browser.mainLoop.scheduler();
|
|
3160
|
-
return;
|
|
3161
|
-
} else if (Browser.mainLoop.timingMode == 0) {
|
|
3162
|
-
Browser.mainLoop.tickStartTime = _emscripten_get_now();
|
|
3060
|
+
function maybeExit() {
|
|
3061
|
+
if (!keepRuntimeAlive()) {
|
|
3062
|
+
try {
|
|
3063
|
+
_exit(EXITSTATUS);
|
|
3064
|
+
} catch (e) {
|
|
3065
|
+
handleException(e);
|
|
3163
3066
|
}
|
|
3164
|
-
GL.newRenderingFrameStarted();
|
|
3165
|
-
Browser.mainLoop.runIter(browserIterationFunc);
|
|
3166
|
-
if (!checkIsRunning()) return;
|
|
3167
|
-
if (typeof SDL == "object" && SDL.audio && SDL.audio.queueNewAudioData) SDL.audio.queueNewAudioData();
|
|
3168
|
-
Browser.mainLoop.scheduler();
|
|
3169
|
-
};
|
|
3170
|
-
if (!noSetTiming) {
|
|
3171
|
-
if (fps && fps > 0) _emscripten_set_main_loop_timing(0, 1e3 / fps); else _emscripten_set_main_loop_timing(1, 1);
|
|
3172
|
-
Browser.mainLoop.scheduler();
|
|
3173
|
-
}
|
|
3174
|
-
if (simulateInfiniteLoop) {
|
|
3175
|
-
throw "unwind";
|
|
3176
3067
|
}
|
|
3177
3068
|
}
|
|
3178
3069
|
|
|
@@ -3182,6 +3073,7 @@ function callUserCallback(func) {
|
|
|
3182
3073
|
}
|
|
3183
3074
|
try {
|
|
3184
3075
|
func();
|
|
3076
|
+
maybeExit();
|
|
3185
3077
|
} catch (e) {
|
|
3186
3078
|
handleException(e);
|
|
3187
3079
|
}
|
|
@@ -3752,8 +3644,19 @@ function callRuntimeCallbacks(callbacks) {
|
|
|
3752
3644
|
}
|
|
3753
3645
|
}
|
|
3754
3646
|
|
|
3755
|
-
|
|
3756
|
-
|
|
3647
|
+
var wasmTableMirror = [];
|
|
3648
|
+
|
|
3649
|
+
function getWasmTableEntry(funcPtr) {
|
|
3650
|
+
var func = wasmTableMirror[funcPtr];
|
|
3651
|
+
if (!func) {
|
|
3652
|
+
if (funcPtr >= wasmTableMirror.length) wasmTableMirror.length = funcPtr + 1;
|
|
3653
|
+
wasmTableMirror[funcPtr] = func = wasmTable.get(funcPtr);
|
|
3654
|
+
}
|
|
3655
|
+
return func;
|
|
3656
|
+
}
|
|
3657
|
+
|
|
3658
|
+
function ___call_sighandler(fp, sig) {
|
|
3659
|
+
getWasmTableEntry(fp)(sig);
|
|
3757
3660
|
}
|
|
3758
3661
|
|
|
3759
3662
|
function ExceptionInfo(excPtr) {
|
|
@@ -3831,7 +3734,7 @@ function ___cxa_throw(ptr, type, destructor) {
|
|
|
3831
3734
|
info.init(type, destructor);
|
|
3832
3735
|
exceptionLast = ptr;
|
|
3833
3736
|
uncaughtExceptionCount++;
|
|
3834
|
-
throw
|
|
3737
|
+
throw exceptionLast;
|
|
3835
3738
|
}
|
|
3836
3739
|
|
|
3837
3740
|
function setErrNo(value) {
|
|
@@ -3895,7 +3798,7 @@ function ___syscall_fcntl64(fd, cmd, varargs) {
|
|
|
3895
3798
|
}
|
|
3896
3799
|
}
|
|
3897
3800
|
} catch (e) {
|
|
3898
|
-
if (typeof FS == "undefined" || !(e
|
|
3801
|
+
if (typeof FS == "undefined" || !(e.name === "ErrnoError")) throw e;
|
|
3899
3802
|
return -e.errno;
|
|
3900
3803
|
}
|
|
3901
3804
|
}
|
|
@@ -3905,7 +3808,7 @@ function ___syscall_fstat64(fd, buf) {
|
|
|
3905
3808
|
var stream = SYSCALLS.getStreamFromFD(fd);
|
|
3906
3809
|
return SYSCALLS.doStat(FS.stat, stream.path, buf);
|
|
3907
3810
|
} catch (e) {
|
|
3908
|
-
if (typeof FS == "undefined" || !(e
|
|
3811
|
+
if (typeof FS == "undefined" || !(e.name === "ErrnoError")) throw e;
|
|
3909
3812
|
return -e.errno;
|
|
3910
3813
|
}
|
|
3911
3814
|
}
|
|
@@ -3969,7 +3872,7 @@ function ___syscall_ioctl(fd, op, varargs) {
|
|
|
3969
3872
|
return -28;
|
|
3970
3873
|
}
|
|
3971
3874
|
} catch (e) {
|
|
3972
|
-
if (typeof FS == "undefined" || !(e
|
|
3875
|
+
if (typeof FS == "undefined" || !(e.name === "ErrnoError")) throw e;
|
|
3973
3876
|
return -e.errno;
|
|
3974
3877
|
}
|
|
3975
3878
|
}
|
|
@@ -3979,7 +3882,7 @@ function ___syscall_lstat64(path, buf) {
|
|
|
3979
3882
|
path = SYSCALLS.getStr(path);
|
|
3980
3883
|
return SYSCALLS.doStat(FS.lstat, path, buf);
|
|
3981
3884
|
} catch (e) {
|
|
3982
|
-
if (typeof FS == "undefined" || !(e
|
|
3885
|
+
if (typeof FS == "undefined" || !(e.name === "ErrnoError")) throw e;
|
|
3983
3886
|
return -e.errno;
|
|
3984
3887
|
}
|
|
3985
3888
|
}
|
|
@@ -3993,7 +3896,7 @@ function ___syscall_newfstatat(dirfd, path, buf, flags) {
|
|
|
3993
3896
|
path = SYSCALLS.calculateAt(dirfd, path, allowEmpty);
|
|
3994
3897
|
return SYSCALLS.doStat(nofollow ? FS.lstat : FS.stat, path, buf);
|
|
3995
3898
|
} catch (e) {
|
|
3996
|
-
if (typeof FS == "undefined" || !(e
|
|
3899
|
+
if (typeof FS == "undefined" || !(e.name === "ErrnoError")) throw e;
|
|
3997
3900
|
return -e.errno;
|
|
3998
3901
|
}
|
|
3999
3902
|
}
|
|
@@ -4006,7 +3909,7 @@ function ___syscall_openat(dirfd, path, flags, varargs) {
|
|
|
4006
3909
|
var mode = varargs ? SYSCALLS.get() : 0;
|
|
4007
3910
|
return FS.open(path, flags, mode).fd;
|
|
4008
3911
|
} catch (e) {
|
|
4009
|
-
if (typeof FS == "undefined" || !(e
|
|
3912
|
+
if (typeof FS == "undefined" || !(e.name === "ErrnoError")) throw e;
|
|
4010
3913
|
return -e.errno;
|
|
4011
3914
|
}
|
|
4012
3915
|
}
|
|
@@ -4016,16 +3919,14 @@ function ___syscall_stat64(path, buf) {
|
|
|
4016
3919
|
path = SYSCALLS.getStr(path);
|
|
4017
3920
|
return SYSCALLS.doStat(FS.stat, path, buf);
|
|
4018
3921
|
} catch (e) {
|
|
4019
|
-
if (typeof FS == "undefined" || !(e
|
|
3922
|
+
if (typeof FS == "undefined" || !(e.name === "ErrnoError")) throw e;
|
|
4020
3923
|
return -e.errno;
|
|
4021
3924
|
}
|
|
4022
3925
|
}
|
|
4023
3926
|
|
|
4024
|
-
function __dlinit(main_dso_handle) {}
|
|
4025
|
-
|
|
4026
3927
|
var dlopenMissingError = "To use dlopen, you need enable dynamic linking, see https://github.com/emscripten-core/emscripten/wiki/Linking";
|
|
4027
3928
|
|
|
4028
|
-
function __dlopen_js(
|
|
3929
|
+
function __dlopen_js(handle) {
|
|
4029
3930
|
abort(dlopenMissingError);
|
|
4030
3931
|
}
|
|
4031
3932
|
|
|
@@ -4097,10 +3998,11 @@ function makeLegalFunctionName(name) {
|
|
|
4097
3998
|
|
|
4098
3999
|
function createNamedFunction(name, body) {
|
|
4099
4000
|
name = makeLegalFunctionName(name);
|
|
4100
|
-
return
|
|
4101
|
-
|
|
4102
|
-
|
|
4103
|
-
|
|
4001
|
+
return {
|
|
4002
|
+
[name]: function() {
|
|
4003
|
+
return body.apply(this, arguments);
|
|
4004
|
+
}
|
|
4005
|
+
}[name];
|
|
4104
4006
|
}
|
|
4105
4007
|
|
|
4106
4008
|
function extendError(baseErrorType, errorName) {
|
|
@@ -4185,47 +4087,53 @@ function __embind_register_bool(rawType, name, size, trueValue, falseValue) {
|
|
|
4185
4087
|
});
|
|
4186
4088
|
}
|
|
4187
4089
|
|
|
4188
|
-
|
|
4090
|
+
function HandleAllocator() {
|
|
4091
|
+
this.allocated = [ undefined ];
|
|
4092
|
+
this.freelist = [];
|
|
4093
|
+
this.get = function(id) {
|
|
4094
|
+
return this.allocated[id];
|
|
4095
|
+
};
|
|
4096
|
+
this.allocate = function(handle) {
|
|
4097
|
+
let id = this.freelist.pop() || this.allocated.length;
|
|
4098
|
+
this.allocated[id] = handle;
|
|
4099
|
+
return id;
|
|
4100
|
+
};
|
|
4101
|
+
this.free = function(id) {
|
|
4102
|
+
this.allocated[id] = undefined;
|
|
4103
|
+
this.freelist.push(id);
|
|
4104
|
+
};
|
|
4105
|
+
}
|
|
4189
4106
|
|
|
4190
|
-
var
|
|
4191
|
-
value: undefined
|
|
4192
|
-
}, {
|
|
4193
|
-
value: null
|
|
4194
|
-
}, {
|
|
4195
|
-
value: true
|
|
4196
|
-
}, {
|
|
4197
|
-
value: false
|
|
4198
|
-
} ];
|
|
4107
|
+
var emval_handles = new HandleAllocator();
|
|
4199
4108
|
|
|
4200
4109
|
function __emval_decref(handle) {
|
|
4201
|
-
if (handle
|
|
4202
|
-
|
|
4203
|
-
emval_free_list.push(handle);
|
|
4110
|
+
if (handle >= emval_handles.reserved && 0 === --emval_handles.get(handle).refcount) {
|
|
4111
|
+
emval_handles.free(handle);
|
|
4204
4112
|
}
|
|
4205
4113
|
}
|
|
4206
4114
|
|
|
4207
4115
|
function count_emval_handles() {
|
|
4208
4116
|
var count = 0;
|
|
4209
|
-
for (var i =
|
|
4210
|
-
if (
|
|
4117
|
+
for (var i = emval_handles.reserved; i < emval_handles.allocated.length; ++i) {
|
|
4118
|
+
if (emval_handles.allocated[i] !== undefined) {
|
|
4211
4119
|
++count;
|
|
4212
4120
|
}
|
|
4213
4121
|
}
|
|
4214
4122
|
return count;
|
|
4215
4123
|
}
|
|
4216
4124
|
|
|
4217
|
-
function get_first_emval() {
|
|
4218
|
-
for (var i = 5; i < emval_handle_array.length; ++i) {
|
|
4219
|
-
if (emval_handle_array[i] !== undefined) {
|
|
4220
|
-
return emval_handle_array[i];
|
|
4221
|
-
}
|
|
4222
|
-
}
|
|
4223
|
-
return null;
|
|
4224
|
-
}
|
|
4225
|
-
|
|
4226
4125
|
function init_emval() {
|
|
4126
|
+
emval_handles.allocated.push({
|
|
4127
|
+
value: undefined
|
|
4128
|
+
}, {
|
|
4129
|
+
value: null
|
|
4130
|
+
}, {
|
|
4131
|
+
value: true
|
|
4132
|
+
}, {
|
|
4133
|
+
value: false
|
|
4134
|
+
});
|
|
4135
|
+
emval_handles.reserved = emval_handles.allocated.length;
|
|
4227
4136
|
Module["count_emval_handles"] = count_emval_handles;
|
|
4228
|
-
Module["get_first_emval"] = get_first_emval;
|
|
4229
4137
|
}
|
|
4230
4138
|
|
|
4231
4139
|
var Emval = {
|
|
@@ -4233,7 +4141,7 @@ var Emval = {
|
|
|
4233
4141
|
if (!handle) {
|
|
4234
4142
|
throwBindingError("Cannot use deleted val. handle = " + handle);
|
|
4235
4143
|
}
|
|
4236
|
-
return
|
|
4144
|
+
return emval_handles.get(handle).value;
|
|
4237
4145
|
},
|
|
4238
4146
|
toHandle: value => {
|
|
4239
4147
|
switch (value) {
|
|
@@ -4251,12 +4159,10 @@ var Emval = {
|
|
|
4251
4159
|
|
|
4252
4160
|
default:
|
|
4253
4161
|
{
|
|
4254
|
-
|
|
4255
|
-
emval_handle_array[handle] = {
|
|
4162
|
+
return emval_handles.allocate({
|
|
4256
4163
|
refcount: 1,
|
|
4257
4164
|
value: value
|
|
4258
|
-
};
|
|
4259
|
-
return handle;
|
|
4165
|
+
});
|
|
4260
4166
|
}
|
|
4261
4167
|
}
|
|
4262
4168
|
}
|
|
@@ -4389,7 +4295,7 @@ function __embind_register_memory_view(rawType, dataTypeIndex, name) {
|
|
|
4389
4295
|
var heap = HEAPU32;
|
|
4390
4296
|
var size = heap[handle];
|
|
4391
4297
|
var data = heap[handle + 1];
|
|
4392
|
-
return new TA(buffer, data, size);
|
|
4298
|
+
return new TA(heap.buffer, data, size);
|
|
4393
4299
|
}
|
|
4394
4300
|
name = readLatin1String(name);
|
|
4395
4301
|
registerType(rawType, {
|
|
@@ -4402,6 +4308,10 @@ function __embind_register_memory_view(rawType, dataTypeIndex, name) {
|
|
|
4402
4308
|
});
|
|
4403
4309
|
}
|
|
4404
4310
|
|
|
4311
|
+
function stringToUTF8(str, outPtr, maxBytesToWrite) {
|
|
4312
|
+
return stringToUTF8Array(str, HEAPU8, outPtr, maxBytesToWrite);
|
|
4313
|
+
}
|
|
4314
|
+
|
|
4405
4315
|
function __embind_register_std_string(rawType, name) {
|
|
4406
4316
|
name = readLatin1String(name);
|
|
4407
4317
|
var stdStringIsUTF8 = name === "std::string";
|
|
@@ -4731,7 +4641,7 @@ function __emval_get_property(handle, key) {
|
|
|
4731
4641
|
|
|
4732
4642
|
function __emval_incref(handle) {
|
|
4733
4643
|
if (handle > 4) {
|
|
4734
|
-
|
|
4644
|
+
emval_handles.get(handle).refcount += 1;
|
|
4735
4645
|
}
|
|
4736
4646
|
}
|
|
4737
4647
|
|
|
@@ -4795,17 +4705,17 @@ function __gmtime_js(time, tmPtr) {
|
|
|
4795
4705
|
HEAP32[tmPtr + 28 >> 2] = yday;
|
|
4796
4706
|
}
|
|
4797
4707
|
|
|
4798
|
-
function
|
|
4708
|
+
function isLeapYear(year) {
|
|
4799
4709
|
return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);
|
|
4800
4710
|
}
|
|
4801
4711
|
|
|
4802
|
-
var
|
|
4712
|
+
var MONTH_DAYS_LEAP_CUMULATIVE = [ 0, 31, 60, 91, 121, 152, 182, 213, 244, 274, 305, 335 ];
|
|
4803
4713
|
|
|
4804
|
-
var
|
|
4714
|
+
var MONTH_DAYS_REGULAR_CUMULATIVE = [ 0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334 ];
|
|
4805
4715
|
|
|
4806
|
-
function
|
|
4807
|
-
var
|
|
4808
|
-
var monthDaysCumulative =
|
|
4716
|
+
function ydayFromDate(date) {
|
|
4717
|
+
var leap = isLeapYear(date.getFullYear());
|
|
4718
|
+
var monthDaysCumulative = leap ? MONTH_DAYS_LEAP_CUMULATIVE : MONTH_DAYS_REGULAR_CUMULATIVE;
|
|
4809
4719
|
var yday = monthDaysCumulative[date.getMonth()] + date.getDate() - 1;
|
|
4810
4720
|
return yday;
|
|
4811
4721
|
}
|
|
@@ -4819,7 +4729,7 @@ function __localtime_js(time, tmPtr) {
|
|
|
4819
4729
|
HEAP32[tmPtr + 16 >> 2] = date.getMonth();
|
|
4820
4730
|
HEAP32[tmPtr + 20 >> 2] = date.getFullYear() - 1900;
|
|
4821
4731
|
HEAP32[tmPtr + 24 >> 2] = date.getDay();
|
|
4822
|
-
var yday =
|
|
4732
|
+
var yday = ydayFromDate(date) | 0;
|
|
4823
4733
|
HEAP32[tmPtr + 28 >> 2] = yday;
|
|
4824
4734
|
HEAP32[tmPtr + 36 >> 2] = -(date.getTimezoneOffset() * 60);
|
|
4825
4735
|
var start = new Date(date.getFullYear(), 0, 1);
|
|
@@ -4845,7 +4755,7 @@ function __mktime_js(tmPtr) {
|
|
|
4845
4755
|
date.setTime(date.getTime() + (trueOffset - guessedOffset) * 6e4);
|
|
4846
4756
|
}
|
|
4847
4757
|
HEAP32[tmPtr + 24 >> 2] = date.getDay();
|
|
4848
|
-
var yday =
|
|
4758
|
+
var yday = ydayFromDate(date) | 0;
|
|
4849
4759
|
HEAP32[tmPtr + 28 >> 2] = yday;
|
|
4850
4760
|
HEAP32[tmPtr >> 2] = date.getSeconds();
|
|
4851
4761
|
HEAP32[tmPtr + 4 >> 2] = date.getMinutes();
|
|
@@ -4865,7 +4775,7 @@ function __mmap_js(len, prot, flags, fd, off, allocated, addr) {
|
|
|
4865
4775
|
HEAPU32[addr >> 2] = ptr;
|
|
4866
4776
|
return 0;
|
|
4867
4777
|
} catch (e) {
|
|
4868
|
-
if (typeof FS == "undefined" || !(e
|
|
4778
|
+
if (typeof FS == "undefined" || !(e.name === "ErrnoError")) throw e;
|
|
4869
4779
|
return -e.errno;
|
|
4870
4780
|
}
|
|
4871
4781
|
}
|
|
@@ -4878,15 +4788,34 @@ function __munmap_js(addr, len, prot, flags, fd, offset) {
|
|
|
4878
4788
|
}
|
|
4879
4789
|
FS.munmap(stream);
|
|
4880
4790
|
} catch (e) {
|
|
4881
|
-
if (typeof FS == "undefined" || !(e
|
|
4791
|
+
if (typeof FS == "undefined" || !(e.name === "ErrnoError")) throw e;
|
|
4882
4792
|
return -e.errno;
|
|
4883
4793
|
}
|
|
4884
4794
|
}
|
|
4885
4795
|
|
|
4886
|
-
|
|
4796
|
+
var timers = {};
|
|
4797
|
+
|
|
4798
|
+
function __setitimer_js(which, timeout_ms) {
|
|
4799
|
+
if (timers[which]) {
|
|
4800
|
+
clearTimeout(timers[which].id);
|
|
4801
|
+
delete timers[which];
|
|
4802
|
+
}
|
|
4803
|
+
if (!timeout_ms) return 0;
|
|
4804
|
+
var id = setTimeout(() => {
|
|
4805
|
+
delete timers[which];
|
|
4806
|
+
callUserCallback(() => __emscripten_timeout(which, _emscripten_get_now()));
|
|
4807
|
+
}, timeout_ms);
|
|
4808
|
+
timers[which] = {
|
|
4809
|
+
id: id,
|
|
4810
|
+
timeout_ms: timeout_ms
|
|
4811
|
+
};
|
|
4812
|
+
return 0;
|
|
4813
|
+
}
|
|
4814
|
+
|
|
4815
|
+
function stringToNewUTF8(str) {
|
|
4887
4816
|
var size = lengthBytesUTF8(str) + 1;
|
|
4888
4817
|
var ret = _malloc(size);
|
|
4889
|
-
if (ret)
|
|
4818
|
+
if (ret) stringToUTF8(str, ret, size);
|
|
4890
4819
|
return ret;
|
|
4891
4820
|
}
|
|
4892
4821
|
|
|
@@ -4905,8 +4834,8 @@ function __tzset_js(timezone, daylight, tzname) {
|
|
|
4905
4834
|
}
|
|
4906
4835
|
var winterName = extractZone(winter);
|
|
4907
4836
|
var summerName = extractZone(summer);
|
|
4908
|
-
var winterNamePtr =
|
|
4909
|
-
var summerNamePtr =
|
|
4837
|
+
var winterNamePtr = stringToNewUTF8(winterName);
|
|
4838
|
+
var summerNamePtr = stringToNewUTF8(summerName);
|
|
4910
4839
|
if (summerOffset < winterOffset) {
|
|
4911
4840
|
HEAPU32[tzname >> 2] = winterNamePtr;
|
|
4912
4841
|
HEAPU32[tzname + 4 >> 2] = summerNamePtr;
|
|
@@ -4964,9 +4893,10 @@ function _emscripten_pc_get_function(pc) {
|
|
|
4964
4893
|
}
|
|
4965
4894
|
|
|
4966
4895
|
function emscripten_realloc_buffer(size) {
|
|
4896
|
+
var b = wasmMemory.buffer;
|
|
4967
4897
|
try {
|
|
4968
|
-
wasmMemory.grow(size -
|
|
4969
|
-
|
|
4898
|
+
wasmMemory.grow(size - b.byteLength + 65535 >>> 16);
|
|
4899
|
+
updateMemoryViews();
|
|
4970
4900
|
return 1;
|
|
4971
4901
|
} catch (e) {}
|
|
4972
4902
|
}
|
|
@@ -5054,7 +4984,7 @@ function _emscripten_stack_unwind_buffer(addr, buffer, count) {
|
|
|
5054
4984
|
return i;
|
|
5055
4985
|
}
|
|
5056
4986
|
|
|
5057
|
-
function
|
|
4987
|
+
function webgl_enable_ANGLE_instanced_arrays(ctx) {
|
|
5058
4988
|
var ext = ctx.getExtension("ANGLE_instanced_arrays");
|
|
5059
4989
|
if (ext) {
|
|
5060
4990
|
ctx["vertexAttribDivisor"] = function(index, divisor) {
|
|
@@ -5070,7 +5000,7 @@ function __webgl_enable_ANGLE_instanced_arrays(ctx) {
|
|
|
5070
5000
|
}
|
|
5071
5001
|
}
|
|
5072
5002
|
|
|
5073
|
-
function
|
|
5003
|
+
function webgl_enable_OES_vertex_array_object(ctx) {
|
|
5074
5004
|
var ext = ctx.getExtension("OES_vertex_array_object");
|
|
5075
5005
|
if (ext) {
|
|
5076
5006
|
ctx["createVertexArray"] = function() {
|
|
@@ -5089,7 +5019,7 @@ function __webgl_enable_OES_vertex_array_object(ctx) {
|
|
|
5089
5019
|
}
|
|
5090
5020
|
}
|
|
5091
5021
|
|
|
5092
|
-
function
|
|
5022
|
+
function webgl_enable_WEBGL_draw_buffers(ctx) {
|
|
5093
5023
|
var ext = ctx.getExtension("WEBGL_draw_buffers");
|
|
5094
5024
|
if (ext) {
|
|
5095
5025
|
ctx["drawBuffers"] = function(n, bufs) {
|
|
@@ -5099,15 +5029,15 @@ function __webgl_enable_WEBGL_draw_buffers(ctx) {
|
|
|
5099
5029
|
}
|
|
5100
5030
|
}
|
|
5101
5031
|
|
|
5102
|
-
function
|
|
5032
|
+
function webgl_enable_WEBGL_draw_instanced_base_vertex_base_instance(ctx) {
|
|
5103
5033
|
return !!(ctx.dibvbi = ctx.getExtension("WEBGL_draw_instanced_base_vertex_base_instance"));
|
|
5104
5034
|
}
|
|
5105
5035
|
|
|
5106
|
-
function
|
|
5036
|
+
function webgl_enable_WEBGL_multi_draw_instanced_base_vertex_base_instance(ctx) {
|
|
5107
5037
|
return !!(ctx.mdibvbi = ctx.getExtension("WEBGL_multi_draw_instanced_base_vertex_base_instance"));
|
|
5108
5038
|
}
|
|
5109
5039
|
|
|
5110
|
-
function
|
|
5040
|
+
function webgl_enable_WEBGL_multi_draw(ctx) {
|
|
5111
5041
|
return !!(ctx.multiDrawWebgl = ctx.getExtension("WEBGL_multi_draw"));
|
|
5112
5042
|
}
|
|
5113
5043
|
|
|
@@ -5338,18 +5268,18 @@ var GL = {
|
|
|
5338
5268
|
if (context.initExtensionsDone) return;
|
|
5339
5269
|
context.initExtensionsDone = true;
|
|
5340
5270
|
var GLctx = context.GLctx;
|
|
5341
|
-
|
|
5342
|
-
|
|
5343
|
-
|
|
5344
|
-
|
|
5345
|
-
|
|
5271
|
+
webgl_enable_ANGLE_instanced_arrays(GLctx);
|
|
5272
|
+
webgl_enable_OES_vertex_array_object(GLctx);
|
|
5273
|
+
webgl_enable_WEBGL_draw_buffers(GLctx);
|
|
5274
|
+
webgl_enable_WEBGL_draw_instanced_base_vertex_base_instance(GLctx);
|
|
5275
|
+
webgl_enable_WEBGL_multi_draw_instanced_base_vertex_base_instance(GLctx);
|
|
5346
5276
|
if (context.version >= 2) {
|
|
5347
5277
|
GLctx.disjointTimerQueryExt = GLctx.getExtension("EXT_disjoint_timer_query_webgl2");
|
|
5348
5278
|
}
|
|
5349
5279
|
if (context.version < 2 || !GLctx.disjointTimerQueryExt) {
|
|
5350
5280
|
GLctx.disjointTimerQueryExt = GLctx.getExtension("EXT_disjoint_timer_query");
|
|
5351
5281
|
}
|
|
5352
|
-
|
|
5282
|
+
webgl_enable_WEBGL_multi_draw(GLctx);
|
|
5353
5283
|
var exts = GLctx.getSupportedExtensions() || [];
|
|
5354
5284
|
exts.forEach(function(ext) {
|
|
5355
5285
|
if (!ext.includes("lose_context") && !ext.includes("debug")) {
|
|
@@ -5466,7 +5396,7 @@ var JSEvents = {
|
|
|
5466
5396
|
}
|
|
5467
5397
|
};
|
|
5468
5398
|
|
|
5469
|
-
var
|
|
5399
|
+
var emscripten_webgl_power_preferences = [ "default", "low-power", "high-performance" ];
|
|
5470
5400
|
|
|
5471
5401
|
var specialHTMLTargets = [ 0, typeof document != "undefined" ? document : 0, typeof window != "undefined" ? window : 0 ];
|
|
5472
5402
|
|
|
@@ -5501,7 +5431,7 @@ function _emscripten_webgl_do_create_context(target, attributes) {
|
|
|
5501
5431
|
"antialias": !!HEAP32[a + (12 >> 2)],
|
|
5502
5432
|
"premultipliedAlpha": !!HEAP32[a + (16 >> 2)],
|
|
5503
5433
|
"preserveDrawingBuffer": !!HEAP32[a + (20 >> 2)],
|
|
5504
|
-
"powerPreference":
|
|
5434
|
+
"powerPreference": emscripten_webgl_power_preferences[powerPreference],
|
|
5505
5435
|
"failIfMajorPerformanceCaveat": !!HEAP32[a + (28 >> 2)],
|
|
5506
5436
|
majorVersion: HEAP32[a + (32 >> 2)],
|
|
5507
5437
|
minorVersion: HEAP32[a + (36 >> 2)],
|
|
@@ -5541,7 +5471,7 @@ function _emscripten_webgl_get_context_attributes(c, a) {
|
|
|
5541
5471
|
HEAP32[a + 12 >> 2] = t.antialias;
|
|
5542
5472
|
HEAP32[a + 16 >> 2] = t.premultipliedAlpha;
|
|
5543
5473
|
HEAP32[a + 20 >> 2] = t.preserveDrawingBuffer;
|
|
5544
|
-
var power = t["powerPreference"] &&
|
|
5474
|
+
var power = t["powerPreference"] && emscripten_webgl_power_preferences.indexOf(t["powerPreference"]);
|
|
5545
5475
|
HEAP32[a + 24 >> 2] = power;
|
|
5546
5476
|
HEAP32[a + 28 >> 2] = t.failIfMajorPerformanceCaveat;
|
|
5547
5477
|
HEAP32[a + 32 >> 2] = c.version;
|
|
@@ -5575,8 +5505,7 @@ var WebGPU = {
|
|
|
5575
5505
|
function Manager() {
|
|
5576
5506
|
this.objects = {};
|
|
5577
5507
|
this.nextId = 1;
|
|
5578
|
-
this.create = function(object, wrapper) {
|
|
5579
|
-
wrapper = wrapper || {};
|
|
5508
|
+
this.create = function(object, wrapper = {}) {
|
|
5580
5509
|
var id = this.nextId++;
|
|
5581
5510
|
wrapper.refcount = 1;
|
|
5582
5511
|
wrapper.object = object;
|
|
@@ -5832,11 +5761,11 @@ function getEnvStrings() {
|
|
|
5832
5761
|
return getEnvStrings.strings;
|
|
5833
5762
|
}
|
|
5834
5763
|
|
|
5835
|
-
function
|
|
5764
|
+
function stringToAscii(str, buffer) {
|
|
5836
5765
|
for (var i = 0; i < str.length; ++i) {
|
|
5837
5766
|
HEAP8[buffer++ >> 0] = str.charCodeAt(i);
|
|
5838
5767
|
}
|
|
5839
|
-
|
|
5768
|
+
HEAP8[buffer >> 0] = 0;
|
|
5840
5769
|
}
|
|
5841
5770
|
|
|
5842
5771
|
function _environ_get(__environ, environ_buf) {
|
|
@@ -5844,7 +5773,7 @@ function _environ_get(__environ, environ_buf) {
|
|
|
5844
5773
|
getEnvStrings().forEach(function(string, i) {
|
|
5845
5774
|
var ptr = environ_buf + bufSize;
|
|
5846
5775
|
HEAPU32[__environ + i * 4 >> 2] = ptr;
|
|
5847
|
-
|
|
5776
|
+
stringToAscii(string, ptr);
|
|
5848
5777
|
bufSize += string.length + 1;
|
|
5849
5778
|
});
|
|
5850
5779
|
return 0;
|
|
@@ -5867,7 +5796,7 @@ function _fd_close(fd) {
|
|
|
5867
5796
|
FS.close(stream);
|
|
5868
5797
|
return 0;
|
|
5869
5798
|
} catch (e) {
|
|
5870
|
-
if (typeof FS == "undefined" || !(e
|
|
5799
|
+
if (typeof FS == "undefined" || !(e.name === "ErrnoError")) throw e;
|
|
5871
5800
|
return e.errno;
|
|
5872
5801
|
}
|
|
5873
5802
|
}
|
|
@@ -5882,6 +5811,9 @@ function doReadv(stream, iov, iovcnt, offset) {
|
|
|
5882
5811
|
if (curr < 0) return -1;
|
|
5883
5812
|
ret += curr;
|
|
5884
5813
|
if (curr < len) break;
|
|
5814
|
+
if (typeof offset !== "undefined") {
|
|
5815
|
+
offset += curr;
|
|
5816
|
+
}
|
|
5885
5817
|
}
|
|
5886
5818
|
return ret;
|
|
5887
5819
|
}
|
|
@@ -5893,7 +5825,7 @@ function _fd_read(fd, iov, iovcnt, pnum) {
|
|
|
5893
5825
|
HEAPU32[pnum >> 2] = num;
|
|
5894
5826
|
return 0;
|
|
5895
5827
|
} catch (e) {
|
|
5896
|
-
if (typeof FS == "undefined" || !(e
|
|
5828
|
+
if (typeof FS == "undefined" || !(e.name === "ErrnoError")) throw e;
|
|
5897
5829
|
return e.errno;
|
|
5898
5830
|
}
|
|
5899
5831
|
}
|
|
@@ -5913,7 +5845,7 @@ function _fd_seek(fd, offset_low, offset_high, whence, newOffset) {
|
|
|
5913
5845
|
if (stream.getdents && offset === 0 && whence === 0) stream.getdents = null;
|
|
5914
5846
|
return 0;
|
|
5915
5847
|
} catch (e) {
|
|
5916
|
-
if (typeof FS == "undefined" || !(e
|
|
5848
|
+
if (typeof FS == "undefined" || !(e.name === "ErrnoError")) throw e;
|
|
5917
5849
|
return e.errno;
|
|
5918
5850
|
}
|
|
5919
5851
|
}
|
|
@@ -5927,6 +5859,9 @@ function doWritev(stream, iov, iovcnt, offset) {
|
|
|
5927
5859
|
var curr = FS.write(stream, HEAP8, ptr, len, offset);
|
|
5928
5860
|
if (curr < 0) return -1;
|
|
5929
5861
|
ret += curr;
|
|
5862
|
+
if (typeof offset !== "undefined") {
|
|
5863
|
+
offset += curr;
|
|
5864
|
+
}
|
|
5930
5865
|
}
|
|
5931
5866
|
return ret;
|
|
5932
5867
|
}
|
|
@@ -5938,18 +5873,13 @@ function _fd_write(fd, iov, iovcnt, pnum) {
|
|
|
5938
5873
|
HEAPU32[pnum >> 2] = num;
|
|
5939
5874
|
return 0;
|
|
5940
5875
|
} catch (e) {
|
|
5941
|
-
if (typeof FS == "undefined" || !(e
|
|
5876
|
+
if (typeof FS == "undefined" || !(e.name === "ErrnoError")) throw e;
|
|
5942
5877
|
return e.errno;
|
|
5943
5878
|
}
|
|
5944
5879
|
}
|
|
5945
5880
|
|
|
5946
5881
|
function _getentropy(buffer, size) {
|
|
5947
|
-
|
|
5948
|
-
_getentropy.randomDevice = getRandomDevice();
|
|
5949
|
-
}
|
|
5950
|
-
for (var i = 0; i < size; i++) {
|
|
5951
|
-
HEAP8[buffer + i >> 0] = _getentropy.randomDevice();
|
|
5952
|
-
}
|
|
5882
|
+
randomFill(HEAPU8.subarray(buffer, buffer + size));
|
|
5953
5883
|
return 0;
|
|
5954
5884
|
}
|
|
5955
5885
|
|
|
@@ -6029,8 +5959,9 @@ function convertI32PairToI53(lo, hi) {
|
|
|
6029
5959
|
return (lo >>> 0) + hi * 4294967296;
|
|
6030
5960
|
}
|
|
6031
5961
|
|
|
6032
|
-
function _glClientWaitSync(sync, flags,
|
|
6033
|
-
|
|
5962
|
+
function _glClientWaitSync(sync, flags, timeout_low, timeout_high) {
|
|
5963
|
+
var timeout = convertI32PairToI53(timeout_low, timeout_high);
|
|
5964
|
+
return GLctx.clientWaitSync(GL.syncs[sync], flags, timeout);
|
|
6034
5965
|
}
|
|
6035
5966
|
|
|
6036
5967
|
function _glCompileShader(shader) {
|
|
@@ -6457,13 +6388,6 @@ function _glGetShaderiv(shader, pname, p) {
|
|
|
6457
6388
|
}
|
|
6458
6389
|
}
|
|
6459
6390
|
|
|
6460
|
-
function stringToNewUTF8(jsString) {
|
|
6461
|
-
var length = lengthBytesUTF8(jsString) + 1;
|
|
6462
|
-
var cString = _malloc(length);
|
|
6463
|
-
stringToUTF8(jsString, cString, length);
|
|
6464
|
-
return cString;
|
|
6465
|
-
}
|
|
6466
|
-
|
|
6467
6391
|
function _glGetString(name_) {
|
|
6468
6392
|
var ret = GL.stringCache[name_];
|
|
6469
6393
|
if (!ret) {
|
|
@@ -6596,7 +6520,7 @@ function computeUnpackAlignedImageSize(width, height, sizePerPixel, alignment) {
|
|
|
6596
6520
|
return height * alignedRowSize;
|
|
6597
6521
|
}
|
|
6598
6522
|
|
|
6599
|
-
function
|
|
6523
|
+
function colorChannelsInGlTextureFormat(format) {
|
|
6600
6524
|
var colorChannels = {
|
|
6601
6525
|
5: 3,
|
|
6602
6526
|
6: 4,
|
|
@@ -6630,7 +6554,7 @@ function emscriptenWebGLGetTexPixelData(type, format, width, height, pixels, int
|
|
|
6630
6554
|
var heap = heapObjectForWebGLType(type);
|
|
6631
6555
|
var shift = heapAccessShiftForWebGLHeap(heap);
|
|
6632
6556
|
var byteSize = 1 << shift;
|
|
6633
|
-
var sizePerPixel =
|
|
6557
|
+
var sizePerPixel = colorChannelsInGlTextureFormat(format) * byteSize;
|
|
6634
6558
|
var bytes = computeUnpackAlignedImageSize(width, height, sizePerPixel, GL.unpackAlignment);
|
|
6635
6559
|
return heap.subarray(pixels >> shift, pixels + bytes >> shift);
|
|
6636
6560
|
}
|
|
@@ -6784,7 +6708,7 @@ function _glUniform4fv(location, count, value) {
|
|
|
6784
6708
|
GLctx.uniform4fv(webglGetUniformLocation(location), view);
|
|
6785
6709
|
}
|
|
6786
6710
|
|
|
6787
|
-
var
|
|
6711
|
+
var miniTempWebGLIntBuffers = [];
|
|
6788
6712
|
|
|
6789
6713
|
function _glUniform4iv(location, count, value) {
|
|
6790
6714
|
if (GL.currentContext.version >= 2) {
|
|
@@ -6792,7 +6716,7 @@ function _glUniform4iv(location, count, value) {
|
|
|
6792
6716
|
return;
|
|
6793
6717
|
}
|
|
6794
6718
|
if (count <= 72) {
|
|
6795
|
-
var view =
|
|
6719
|
+
var view = miniTempWebGLIntBuffers[4 * count - 1];
|
|
6796
6720
|
for (var i = 0; i < 4 * count; i += 4) {
|
|
6797
6721
|
view[i] = HEAP32[value + 4 * i >> 2];
|
|
6798
6722
|
view[i + 1] = HEAP32[value + (4 * i + 4) >> 2];
|
|
@@ -6885,22 +6809,22 @@ function _mediapipe_webgl_tex_image_drawable(drawableHandle) {
|
|
|
6885
6809
|
GLctx.texImage2D(GLctx.TEXTURE_2D, 0, GLctx.RGBA, GLctx.RGBA, GLctx.UNSIGNED_BYTE, drawable);
|
|
6886
6810
|
}
|
|
6887
6811
|
|
|
6888
|
-
function
|
|
6812
|
+
function arraySum(array, index) {
|
|
6889
6813
|
var sum = 0;
|
|
6890
6814
|
for (var i = 0; i <= index; sum += array[i++]) {}
|
|
6891
6815
|
return sum;
|
|
6892
6816
|
}
|
|
6893
6817
|
|
|
6894
|
-
var
|
|
6818
|
+
var MONTH_DAYS_LEAP = [ 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 ];
|
|
6895
6819
|
|
|
6896
|
-
var
|
|
6820
|
+
var MONTH_DAYS_REGULAR = [ 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 ];
|
|
6897
6821
|
|
|
6898
|
-
function
|
|
6822
|
+
function addDays(date, days) {
|
|
6899
6823
|
var newDate = new Date(date.getTime());
|
|
6900
6824
|
while (days > 0) {
|
|
6901
|
-
var leap =
|
|
6825
|
+
var leap = isLeapYear(newDate.getFullYear());
|
|
6902
6826
|
var currentMonth = newDate.getMonth();
|
|
6903
|
-
var daysInCurrentMonth = (leap ?
|
|
6827
|
+
var daysInCurrentMonth = (leap ? MONTH_DAYS_LEAP : MONTH_DAYS_REGULAR)[currentMonth];
|
|
6904
6828
|
if (days > daysInCurrentMonth - newDate.getDate()) {
|
|
6905
6829
|
days -= daysInCurrentMonth - newDate.getDate() + 1;
|
|
6906
6830
|
newDate.setDate(1);
|
|
@@ -7020,7 +6944,7 @@ function _strftime(s, maxsize, format, tm) {
|
|
|
7020
6944
|
}
|
|
7021
6945
|
}
|
|
7022
6946
|
function getWeekBasedYear(date) {
|
|
7023
|
-
var thisDate =
|
|
6947
|
+
var thisDate = addDays(new Date(date.tm_year + 1900, 0, 1), date.tm_yday);
|
|
7024
6948
|
var janFourthThisYear = new Date(thisDate.getFullYear(), 0, 4);
|
|
7025
6949
|
var janFourthNextYear = new Date(thisDate.getFullYear() + 1, 0, 4);
|
|
7026
6950
|
var firstWeekStartThisYear = getFirstWeekStartDate(janFourthThisYear);
|
|
@@ -7071,7 +6995,7 @@ function _strftime(s, maxsize, format, tm) {
|
|
|
7071
6995
|
return leadingNulls(twelveHour, 2);
|
|
7072
6996
|
},
|
|
7073
6997
|
"%j": function(date) {
|
|
7074
|
-
return leadingNulls(date.tm_mday +
|
|
6998
|
+
return leadingNulls(date.tm_mday + arraySum(isLeapYear(date.tm_year + 1900) ? MONTH_DAYS_LEAP : MONTH_DAYS_REGULAR, date.tm_mon - 1), 3);
|
|
7075
6999
|
},
|
|
7076
7000
|
"%m": function(date) {
|
|
7077
7001
|
return leadingNulls(date.tm_mon + 1, 2);
|
|
@@ -7109,12 +7033,12 @@ function _strftime(s, maxsize, format, tm) {
|
|
|
7109
7033
|
if (!val) {
|
|
7110
7034
|
val = 52;
|
|
7111
7035
|
var dec31 = (date.tm_wday + 7 - date.tm_yday - 1) % 7;
|
|
7112
|
-
if (dec31 == 4 || dec31 == 5 &&
|
|
7036
|
+
if (dec31 == 4 || dec31 == 5 && isLeapYear(date.tm_year % 400 - 1)) {
|
|
7113
7037
|
val++;
|
|
7114
7038
|
}
|
|
7115
7039
|
} else if (val == 53) {
|
|
7116
7040
|
var jan1 = (date.tm_wday + 371 - date.tm_yday) % 7;
|
|
7117
|
-
if (jan1 != 4 && (jan1 != 3 || !
|
|
7041
|
+
if (jan1 != 4 && (jan1 != 3 || !isLeapYear(date.tm_year))) val = 1;
|
|
7118
7042
|
}
|
|
7119
7043
|
return leadingNulls(val, 2);
|
|
7120
7044
|
},
|
|
@@ -7351,11 +7275,7 @@ function _wgpuCommandEncoderRelease(id) {
|
|
|
7351
7275
|
|
|
7352
7276
|
function _wgpuComputePassEncoderDispatchWorkgroups(passId, x, y, z) {
|
|
7353
7277
|
var pass = WebGPU.mgrComputePassEncoder.get(passId);
|
|
7354
|
-
|
|
7355
|
-
pass["dispatchWorkgroups"](x, y, z);
|
|
7356
|
-
} else {
|
|
7357
|
-
pass["dispatch"](x, y, z);
|
|
7358
|
-
}
|
|
7278
|
+
pass["dispatchWorkgroups"](x, y, z);
|
|
7359
7279
|
}
|
|
7360
7280
|
|
|
7361
7281
|
function _wgpuComputePassEncoderEnd(passId) {
|
|
@@ -7403,9 +7323,9 @@ function _wgpuDeviceCreateBindGroup(deviceId, descriptor) {
|
|
|
7403
7323
|
var textureViewId = HEAPU32[entryPtr + 36 >> 2];
|
|
7404
7324
|
var binding = HEAPU32[entryPtr + 4 >> 2];
|
|
7405
7325
|
if (bufferId) {
|
|
7406
|
-
var size_low =
|
|
7407
|
-
var size_high =
|
|
7408
|
-
var size = size_high === -1 && size_low === -1 ? undefined : size_high * 4294967296 + size_low;
|
|
7326
|
+
var size_low = HEAP32[entryPtr + 24 >> 2];
|
|
7327
|
+
var size_high = HEAP32[entryPtr + 28 >> 2];
|
|
7328
|
+
var size = size_high === -1 && size_low === -1 ? undefined : (size_high >>> 0) * 4294967296 + (size_low >>> 0);
|
|
7409
7329
|
return {
|
|
7410
7330
|
"binding": binding,
|
|
7411
7331
|
"resource": {
|
|
@@ -7734,7 +7654,7 @@ function _wgpuQueueSubmit(queueId, commandCount, commands) {
|
|
|
7734
7654
|
function _wgpuQueueWriteBuffer(queueId, bufferId, bufferOffset_low, bufferOffset_high, data, size) {
|
|
7735
7655
|
var queue = WebGPU.mgrQueue.get(queueId);
|
|
7736
7656
|
var buffer = WebGPU.mgrBuffer.get(bufferId);
|
|
7737
|
-
var bufferOffset = bufferOffset_high * 4294967296 + bufferOffset_low;
|
|
7657
|
+
var bufferOffset = (bufferOffset_high >>> 0) * 4294967296 + (bufferOffset_low >>> 0);
|
|
7738
7658
|
var subarray = HEAPU8.subarray(data, data + size);
|
|
7739
7659
|
queue["writeBuffer"](buffer, bufferOffset, subarray, 0, size);
|
|
7740
7660
|
}
|
|
@@ -7844,14 +7764,19 @@ function getCFunc(ident) {
|
|
|
7844
7764
|
return func;
|
|
7845
7765
|
}
|
|
7846
7766
|
|
|
7767
|
+
function stringToUTF8OnStack(str) {
|
|
7768
|
+
var size = lengthBytesUTF8(str) + 1;
|
|
7769
|
+
var ret = stackAlloc(size);
|
|
7770
|
+
stringToUTF8(str, ret, size);
|
|
7771
|
+
return ret;
|
|
7772
|
+
}
|
|
7773
|
+
|
|
7847
7774
|
function ccall(ident, returnType, argTypes, args, opts) {
|
|
7848
7775
|
var toC = {
|
|
7849
7776
|
"string": str => {
|
|
7850
7777
|
var ret = 0;
|
|
7851
7778
|
if (str !== null && str !== undefined && str !== 0) {
|
|
7852
|
-
|
|
7853
|
-
ret = stackAlloc(len);
|
|
7854
|
-
stringToUTF8(str, ret, len);
|
|
7779
|
+
ret = stringToUTF8OnStack(str);
|
|
7855
7780
|
}
|
|
7856
7781
|
return ret;
|
|
7857
7782
|
},
|
|
@@ -8007,13 +7932,13 @@ for (var i = 0; i < 288; ++i) {
|
|
|
8007
7932
|
miniTempWebGLFloatBuffers[i] = miniTempWebGLFloatBuffersStorage.subarray(0, i + 1);
|
|
8008
7933
|
}
|
|
8009
7934
|
|
|
8010
|
-
var
|
|
7935
|
+
var miniTempWebGLIntBuffersStorage = new Int32Array(288);
|
|
8011
7936
|
|
|
8012
7937
|
for (var i = 0; i < 288; ++i) {
|
|
8013
|
-
|
|
7938
|
+
miniTempWebGLIntBuffers[i] = miniTempWebGLIntBuffersStorage.subarray(0, i + 1);
|
|
8014
7939
|
}
|
|
8015
7940
|
|
|
8016
|
-
var
|
|
7941
|
+
var wasmImports = {
|
|
8017
7942
|
"id": HaveOffsetConverter,
|
|
8018
7943
|
"hd": JsOnEmptyPacketListener,
|
|
8019
7944
|
"gd": JsOnFloat32ArrayImageListener,
|
|
@@ -8026,7 +7951,7 @@ var asmLibraryArg = {
|
|
|
8026
7951
|
"ad": JsOnSimpleListenerString,
|
|
8027
7952
|
"$c": JsOnUint8ClampedArrayImageListener,
|
|
8028
7953
|
"_c": JsOnUint8ClampedArrayImageVectorListener,
|
|
8029
|
-
"
|
|
7954
|
+
"J": JsOnVectorFinishedListener,
|
|
8030
7955
|
"Zc": JsOnVectorListenerBool,
|
|
8031
7956
|
"Yc": JsOnVectorListenerDouble,
|
|
8032
7957
|
"Xc": JsOnVectorListenerFloat,
|
|
@@ -8035,19 +7960,18 @@ var asmLibraryArg = {
|
|
|
8035
7960
|
"Uc": JsOnVectorListenerString,
|
|
8036
7961
|
"Tc": JsOnWebGLTextureListener,
|
|
8037
7962
|
"Sc": JsOnWebGLTextureVectorListener,
|
|
8038
|
-
"
|
|
7963
|
+
"C": JsWrapErrorListener,
|
|
8039
7964
|
"Ja": JsWrapImageConverter,
|
|
8040
7965
|
"r": JsWrapSimpleListeners,
|
|
8041
|
-
"
|
|
7966
|
+
"Rc": ___call_sighandler,
|
|
8042
7967
|
"i": ___cxa_throw,
|
|
8043
7968
|
"Ia": ___syscall_fcntl64,
|
|
8044
|
-
"
|
|
8045
|
-
"
|
|
8046
|
-
"
|
|
8047
|
-
"
|
|
7969
|
+
"Qc": ___syscall_fstat64,
|
|
7970
|
+
"Pc": ___syscall_ioctl,
|
|
7971
|
+
"Oc": ___syscall_lstat64,
|
|
7972
|
+
"Nc": ___syscall_newfstatat,
|
|
8048
7973
|
"Ha": ___syscall_openat,
|
|
8049
|
-
"
|
|
8050
|
-
"Jc": __dlinit,
|
|
7974
|
+
"Mc": ___syscall_stat64,
|
|
8051
7975
|
"Ic": __dlopen_js,
|
|
8052
7976
|
"Hc": __dlsym_js,
|
|
8053
7977
|
"Qb": __embind_register_bigint,
|
|
@@ -8055,33 +7979,34 @@ var asmLibraryArg = {
|
|
|
8055
7979
|
"Fc": __embind_register_emval,
|
|
8056
7980
|
"Fa": __embind_register_float,
|
|
8057
7981
|
"B": __embind_register_integer,
|
|
8058
|
-
"
|
|
7982
|
+
"k": __embind_register_memory_view,
|
|
8059
7983
|
"Ea": __embind_register_std_string,
|
|
8060
7984
|
"ha": __embind_register_std_wstring,
|
|
8061
7985
|
"Ec": __embind_register_void,
|
|
8062
7986
|
"Dc": __emscripten_get_now_is_monotonic,
|
|
8063
7987
|
"ga": __emval_as,
|
|
8064
|
-
"
|
|
7988
|
+
"j": __emval_decref,
|
|
8065
7989
|
"fa": __emval_get_global,
|
|
8066
7990
|
"Da": __emval_get_property,
|
|
8067
7991
|
"Ca": __emval_incref,
|
|
8068
7992
|
"ea": __emval_instanceof,
|
|
8069
|
-
"
|
|
7993
|
+
"Z": __emval_new_cstring,
|
|
8070
7994
|
"da": __emval_run_destructors,
|
|
8071
7995
|
"Ba": __emval_set_property,
|
|
8072
|
-
"
|
|
7996
|
+
"Y": __emval_take_value,
|
|
8073
7997
|
"Cc": __emval_typeof,
|
|
8074
7998
|
"Bc": __gmtime_js,
|
|
8075
7999
|
"Ac": __localtime_js,
|
|
8076
8000
|
"zc": __mktime_js,
|
|
8077
8001
|
"yc": __mmap_js,
|
|
8078
8002
|
"xc": __munmap_js,
|
|
8003
|
+
"Aa": __setitimer_js,
|
|
8079
8004
|
"wc": __tzset_js,
|
|
8080
8005
|
"a": _abort,
|
|
8081
8006
|
"A": _emscripten_asm_const_int,
|
|
8082
8007
|
"vc": _emscripten_date_now,
|
|
8083
8008
|
"uc": _emscripten_get_heap_max,
|
|
8084
|
-
"
|
|
8009
|
+
"q": _emscripten_get_now,
|
|
8085
8010
|
"tc": _emscripten_memcpy_big,
|
|
8086
8011
|
"sc": _emscripten_pc_get_function,
|
|
8087
8012
|
"rc": _emscripten_resize_heap,
|
|
@@ -8090,85 +8015,85 @@ var asmLibraryArg = {
|
|
|
8090
8015
|
"oc": _emscripten_webgl_create_context,
|
|
8091
8016
|
"nc": _emscripten_webgl_destroy_context,
|
|
8092
8017
|
"mc": _emscripten_webgl_get_context_attributes,
|
|
8093
|
-
"
|
|
8018
|
+
"za": _emscripten_webgl_get_current_context,
|
|
8094
8019
|
"lc": _emscripten_webgl_init_context_attributes,
|
|
8095
8020
|
"kc": _emscripten_webgl_make_context_current,
|
|
8096
8021
|
"jc": _emscripten_webgpu_export_bind_group_layout,
|
|
8097
|
-
"
|
|
8022
|
+
"ya": _emscripten_webgpu_export_device,
|
|
8098
8023
|
"ic": _emscripten_webgpu_export_sampler,
|
|
8099
8024
|
"hc": _emscripten_webgpu_export_texture,
|
|
8100
|
-
"
|
|
8025
|
+
"I": _emscripten_webgpu_get_device,
|
|
8101
8026
|
"gc": _emscripten_webgpu_import_bind_group,
|
|
8102
8027
|
"fc": _emscripten_webgpu_import_texture,
|
|
8103
|
-
"
|
|
8104
|
-
"
|
|
8105
|
-
"
|
|
8106
|
-
"
|
|
8028
|
+
"Q": _emscripten_webgpu_release_js_handle,
|
|
8029
|
+
"Lc": _environ_get,
|
|
8030
|
+
"Kc": _environ_sizes_get,
|
|
8031
|
+
"xa": _exit,
|
|
8107
8032
|
"ja": _fd_close,
|
|
8108
8033
|
"Ga": _fd_read,
|
|
8109
8034
|
"Rb": _fd_seek,
|
|
8110
8035
|
"ia": _fd_write,
|
|
8111
8036
|
"ec": _getentropy,
|
|
8112
8037
|
"d": _glActiveTexture,
|
|
8113
|
-
"
|
|
8038
|
+
"X": _glAttachShader,
|
|
8114
8039
|
"dc": _glBindAttribLocation,
|
|
8115
8040
|
"e": _glBindBuffer,
|
|
8116
8041
|
"cc": _glBindBufferBase,
|
|
8117
8042
|
"t": _glBindFramebuffer,
|
|
8118
8043
|
"b": _glBindTexture,
|
|
8119
8044
|
"y": _glBindVertexArray,
|
|
8120
|
-
"
|
|
8045
|
+
"wa": _glBlendEquation,
|
|
8121
8046
|
"bc": _glBlendFunc,
|
|
8122
8047
|
"s": _glBufferData,
|
|
8123
8048
|
"v": _glClear,
|
|
8124
8049
|
"ca": _glClearColor,
|
|
8125
8050
|
"Pb": _glClientWaitSync,
|
|
8126
|
-
"
|
|
8127
|
-
"
|
|
8128
|
-
"
|
|
8129
|
-
"
|
|
8130
|
-
"
|
|
8051
|
+
"va": _glCompileShader,
|
|
8052
|
+
"ua": _glCreateProgram,
|
|
8053
|
+
"ta": _glCreateShader,
|
|
8054
|
+
"H": _glDeleteBuffers,
|
|
8055
|
+
"M": _glDeleteFramebuffers,
|
|
8131
8056
|
"l": _glDeleteProgram,
|
|
8132
|
-
"
|
|
8133
|
-
"
|
|
8057
|
+
"P": _glDeleteShader,
|
|
8058
|
+
"O": _glDeleteSync,
|
|
8134
8059
|
"x": _glDeleteTextures,
|
|
8135
|
-
"
|
|
8136
|
-
"
|
|
8060
|
+
"W": _glDeleteVertexArrays,
|
|
8061
|
+
"G": _glDisable,
|
|
8137
8062
|
"w": _glDisableVertexAttribArray,
|
|
8138
|
-
"
|
|
8139
|
-
"
|
|
8063
|
+
"m": _glDrawArrays,
|
|
8064
|
+
"N": _glDrawBuffers,
|
|
8140
8065
|
"ac": _glEnable,
|
|
8141
|
-
"
|
|
8142
|
-
"
|
|
8143
|
-
"
|
|
8144
|
-
"
|
|
8066
|
+
"p": _glEnableVertexAttribArray,
|
|
8067
|
+
"sa": _glFenceSync,
|
|
8068
|
+
"V": _glFinish,
|
|
8069
|
+
"ba": _glFlush,
|
|
8145
8070
|
"u": _glFramebufferTexture2D,
|
|
8146
8071
|
"ra": _glFramebufferTextureLayer,
|
|
8147
8072
|
"z": _glGenBuffers,
|
|
8148
|
-
"
|
|
8149
|
-
"
|
|
8150
|
-
"
|
|
8073
|
+
"L": _glGenFramebuffers,
|
|
8074
|
+
"F": _glGenTextures,
|
|
8075
|
+
"U": _glGenVertexArrays,
|
|
8151
8076
|
"qa": _glGetAttribLocation,
|
|
8152
|
-
"
|
|
8153
|
-
"
|
|
8077
|
+
"T": _glGetError,
|
|
8078
|
+
"o": _glGetIntegerv,
|
|
8154
8079
|
"$b": _glGetProgramiv,
|
|
8155
8080
|
"_b": _glGetShaderInfoLog,
|
|
8156
8081
|
"Zb": _glGetShaderiv,
|
|
8157
|
-
"
|
|
8082
|
+
"E": _glGetString,
|
|
8158
8083
|
"Yb": _glGetUniformBlockIndex,
|
|
8159
|
-
"
|
|
8084
|
+
"h": _glGetUniformLocation,
|
|
8160
8085
|
"pa": _glLinkProgram,
|
|
8161
|
-
"
|
|
8086
|
+
"S": _glPixelStorei,
|
|
8162
8087
|
"oa": _glReadPixels,
|
|
8163
8088
|
"na": _glShaderSource,
|
|
8164
|
-
"
|
|
8089
|
+
"D": _glTexImage2D,
|
|
8165
8090
|
"ma": _glTexParameterfv,
|
|
8166
8091
|
"c": _glTexParameteri,
|
|
8167
|
-
"
|
|
8092
|
+
"aa": _glTexStorage2D,
|
|
8168
8093
|
"Xb": _glTexStorage3D,
|
|
8169
|
-
"
|
|
8094
|
+
"$": _glTexSubImage2D,
|
|
8170
8095
|
"Wb": _glTexSubImage3D,
|
|
8171
|
-
"
|
|
8096
|
+
"_": _glUniform1f,
|
|
8172
8097
|
"f": _glUniform1i,
|
|
8173
8098
|
"Vb": _glUniform2f,
|
|
8174
8099
|
"Ub": _glUniform2fv,
|
|
@@ -8176,15 +8101,15 @@ var asmLibraryArg = {
|
|
|
8176
8101
|
"Tb": _glUniform4iv,
|
|
8177
8102
|
"Sb": _glUniformBlockBinding,
|
|
8178
8103
|
"ka": _glUniformMatrix4fv,
|
|
8179
|
-
"
|
|
8180
|
-
"
|
|
8181
|
-
"
|
|
8104
|
+
"g": _glUseProgram,
|
|
8105
|
+
"n": _glVertexAttribPointer,
|
|
8106
|
+
"K": _glViewport,
|
|
8182
8107
|
"Nb": mediapipe_create_utility_canvas2d,
|
|
8183
8108
|
"Mb": _mediapipe_find_canvas_event_target,
|
|
8184
8109
|
"Lb": mediapipe_import_external_texture,
|
|
8185
8110
|
"Kb": _mediapipe_webgl_tex_image_drawable,
|
|
8186
|
-
"
|
|
8187
|
-
"
|
|
8111
|
+
"Jc": _proc_exit,
|
|
8112
|
+
"R": _strftime,
|
|
8188
8113
|
"Jb": _strftime_l,
|
|
8189
8114
|
"Ib": _wgpuBindGroupLayoutRelease,
|
|
8190
8115
|
"Hb": _wgpuBindGroupRelease,
|
|
@@ -8243,8 +8168,8 @@ var asmLibraryArg = {
|
|
|
8243
8168
|
|
|
8244
8169
|
var asm = createWasm();
|
|
8245
8170
|
|
|
8246
|
-
var ___wasm_call_ctors =
|
|
8247
|
-
return (___wasm_call_ctors = Module["
|
|
8171
|
+
var ___wasm_call_ctors = function() {
|
|
8172
|
+
return (___wasm_call_ctors = Module["asm"]["kd"]).apply(null, arguments);
|
|
8248
8173
|
};
|
|
8249
8174
|
|
|
8250
8175
|
var _free = Module["_free"] = function() {
|
|
@@ -8271,8 +8196,8 @@ var _registerModelResourcesGraphService = Module["_registerModelResourcesGraphSe
|
|
|
8271
8196
|
return (_registerModelResourcesGraphService = Module["_registerModelResourcesGraphService"] = Module["asm"]["rd"]).apply(null, arguments);
|
|
8272
8197
|
};
|
|
8273
8198
|
|
|
8274
|
-
var ___errno_location =
|
|
8275
|
-
return (___errno_location = Module["
|
|
8199
|
+
var ___errno_location = function() {
|
|
8200
|
+
return (___errno_location = Module["asm"]["sd"]).apply(null, arguments);
|
|
8276
8201
|
};
|
|
8277
8202
|
|
|
8278
8203
|
var _bindTextureToStream = Module["_bindTextureToStream"] = function() {
|
|
@@ -8443,29 +8368,37 @@ var __embind_initialize_bindings = Module["__embind_initialize_bindings"] = func
|
|
|
8443
8368
|
return (__embind_initialize_bindings = Module["__embind_initialize_bindings"] = Module["asm"]["ge"]).apply(null, arguments);
|
|
8444
8369
|
};
|
|
8445
8370
|
|
|
8446
|
-
var
|
|
8447
|
-
return (
|
|
8371
|
+
var ___dl_seterr = function() {
|
|
8372
|
+
return (___dl_seterr = Module["asm"]["__dl_seterr"]).apply(null, arguments);
|
|
8448
8373
|
};
|
|
8449
8374
|
|
|
8450
|
-
var
|
|
8451
|
-
return (
|
|
8375
|
+
var __emscripten_timeout = function() {
|
|
8376
|
+
return (__emscripten_timeout = Module["asm"]["he"]).apply(null, arguments);
|
|
8452
8377
|
};
|
|
8453
8378
|
|
|
8454
|
-
var
|
|
8455
|
-
return (
|
|
8379
|
+
var _emscripten_builtin_memalign = function() {
|
|
8380
|
+
return (_emscripten_builtin_memalign = Module["asm"]["ie"]).apply(null, arguments);
|
|
8456
8381
|
};
|
|
8457
8382
|
|
|
8458
|
-
var
|
|
8459
|
-
return (
|
|
8383
|
+
var stackSave = function() {
|
|
8384
|
+
return (stackSave = Module["asm"]["je"]).apply(null, arguments);
|
|
8460
8385
|
};
|
|
8461
8386
|
|
|
8462
|
-
var
|
|
8463
|
-
return (
|
|
8387
|
+
var stackRestore = function() {
|
|
8388
|
+
return (stackRestore = Module["asm"]["ke"]).apply(null, arguments);
|
|
8464
8389
|
};
|
|
8465
8390
|
|
|
8466
|
-
var
|
|
8391
|
+
var stackAlloc = function() {
|
|
8392
|
+
return (stackAlloc = Module["asm"]["le"]).apply(null, arguments);
|
|
8393
|
+
};
|
|
8394
|
+
|
|
8395
|
+
var ___cxa_is_pointer_type = function() {
|
|
8396
|
+
return (___cxa_is_pointer_type = Module["asm"]["me"]).apply(null, arguments);
|
|
8397
|
+
};
|
|
8467
8398
|
|
|
8468
|
-
var
|
|
8399
|
+
var ___start_em_js = Module["___start_em_js"] = 1023460;
|
|
8400
|
+
|
|
8401
|
+
var ___stop_em_js = Module["___stop_em_js"] = 1030022;
|
|
8469
8402
|
|
|
8470
8403
|
Module["addRunDependency"] = addRunDependency;
|
|
8471
8404
|
|
|
@@ -8483,10 +8416,10 @@ Module["FS_createDevice"] = FS.createDevice;
|
|
|
8483
8416
|
|
|
8484
8417
|
Module["FS_unlink"] = FS.unlink;
|
|
8485
8418
|
|
|
8486
|
-
Module["stringToNewUTF8"] = stringToNewUTF8;
|
|
8487
|
-
|
|
8488
8419
|
Module["ccall"] = ccall;
|
|
8489
8420
|
|
|
8421
|
+
Module["stringToNewUTF8"] = stringToNewUTF8;
|
|
8422
|
+
|
|
8490
8423
|
var calledRun;
|
|
8491
8424
|
|
|
8492
8425
|
dependenciesFulfilled = function runCaller() {
|
|
@@ -8494,8 +8427,7 @@ dependenciesFulfilled = function runCaller() {
|
|
|
8494
8427
|
if (!calledRun) dependenciesFulfilled = runCaller;
|
|
8495
8428
|
};
|
|
8496
8429
|
|
|
8497
|
-
function run(
|
|
8498
|
-
args = args || arguments_;
|
|
8430
|
+
function run() {
|
|
8499
8431
|
if (runDependencies > 0) {
|
|
8500
8432
|
return;
|
|
8501
8433
|
}
|
|
@@ -8538,6 +8470,7 @@ run();
|
|
|
8538
8470
|
|
|
8539
8471
|
return ModuleFactory.ready
|
|
8540
8472
|
}
|
|
8473
|
+
|
|
8541
8474
|
);
|
|
8542
8475
|
})();
|
|
8543
8476
|
if (typeof exports === 'object' && typeof module === 'object')
|