Initial LinuxCNC WebAssembly workspace snapshot
This commit is contained in:
20
web/worker/sim-worker.mjs
Normal file
20
web/worker/sim-worker.mjs
Normal file
@@ -0,0 +1,20 @@
|
||||
import createModule from "../../build-wasm/linuxcnc-sim-core.js";
|
||||
import { SimSession } from "./sim-session.mjs";
|
||||
|
||||
const core = await createModule();
|
||||
const session = new SimSession(core);
|
||||
|
||||
self.onmessage = (event) => {
|
||||
try {
|
||||
self.postMessage(session.accept(event.data));
|
||||
} catch (error) {
|
||||
self.postMessage({
|
||||
schema_version: 1,
|
||||
kind: "ERROR",
|
||||
context_id: session.contextId,
|
||||
session_id: session.sessionId,
|
||||
seq: event.data?.seq ?? 0,
|
||||
payload: { status: "error", code: "worker_exception", message_key: String(error?.message ?? error), retryable: false },
|
||||
});
|
||||
}
|
||||
};
|
||||
Reference in New Issue
Block a user