add engine and frame apis for enabling threading and wasm
This commit is contained in:
parent
703e63e08e
commit
0584357287
5 changed files with 48 additions and 12 deletions
|
|
@ -83,6 +83,17 @@ class Engine {
|
|||
return this;
|
||||
}
|
||||
|
||||
setController(controller) {
|
||||
let ctrl = this.settings.controller;
|
||||
Object.assign(ctrl, controller);
|
||||
if (ctrl.threaded) {
|
||||
kiri.client.pool.start();
|
||||
} else {
|
||||
kiri.client.pool.stop();
|
||||
}
|
||||
return this;
|
||||
}
|
||||
|
||||
setTools(tools) {
|
||||
this.settings.tools = tools;
|
||||
return this;
|
||||
|
|
|
|||
|
|
@ -63,6 +63,8 @@
|
|||
|
||||
setFeatures: (features) => { send({ features })},
|
||||
|
||||
setController: (controller) => { send({ controller })},
|
||||
|
||||
slice: () => { send({ function: "slice", callback: true }) },
|
||||
|
||||
prepare: () => { send({ function: "prepare", callback: true }) },
|
||||
|
|
|
|||
|
|
@ -57,18 +57,25 @@ window.addEventListener('message', msg => {
|
|||
|
||||
}
|
||||
|
||||
if (data.set) switch (data.set) {
|
||||
case "features":
|
||||
if (data.features) {
|
||||
Object.assign(feature, data.features);
|
||||
break;
|
||||
case "device":
|
||||
Object.assign(settings.dev(), data.options);
|
||||
}
|
||||
|
||||
if (data.device) {
|
||||
Object.assign(settings.dev(), data.device);
|
||||
conf.save();
|
||||
break;
|
||||
case "process":
|
||||
Object.assign(settings.proc(), data.options);
|
||||
}
|
||||
|
||||
if (data.process){
|
||||
Object.assign(settings.proc(), data.process);
|
||||
conf.save();
|
||||
}
|
||||
|
||||
if (data.controller){
|
||||
let ctrl = settings.ctrl();
|
||||
Object.assign(ctrl, data.controller);
|
||||
api.event.emit("set.threaded", ctrl.threaded);
|
||||
conf.save();
|
||||
break;
|
||||
}
|
||||
|
||||
if (data.parse) {
|
||||
|
|
|
|||
|
|
@ -165,6 +165,8 @@ gapp.register("kiri.init", [], (root, exports) => {
|
|||
return bool;
|
||||
}
|
||||
|
||||
api.event.on("set.threaded", bool => setThreaded(bool));
|
||||
|
||||
function booleanSave() {
|
||||
let control = settings().controller;
|
||||
let isDark = control.dark;
|
||||
|
|
|
|||
|
|
@ -684,6 +684,18 @@ function settingsPrusaConvert(data) {
|
|||
});
|
||||
}
|
||||
|
||||
function setThreaded(bool) {
|
||||
bool = bool ? true : false;
|
||||
settings.controller.threaded = bool;
|
||||
api.event.emit("set.threaded", bool);
|
||||
}
|
||||
|
||||
function setEnableWASM(bool) {
|
||||
bool = bool ? true : false;
|
||||
settings.controller.assembly = bool;
|
||||
api.event.emit("set.assembly", bool);
|
||||
}
|
||||
|
||||
api.conf = {
|
||||
dbo: () => { return ls2o('ws-settings') },
|
||||
get: getSettings,
|
||||
|
|
@ -695,6 +707,8 @@ api.conf = {
|
|||
update_from: updateSettingsFromFields,
|
||||
update_fields: updateFieldsFromSettings,
|
||||
update_fields_from_range: updateFieldsFromRange,
|
||||
set_enable_wasm: setEnableWASM,
|
||||
set_threaded: setThreaded,
|
||||
restore: restoreSettings,
|
||||
export: settingsExport,
|
||||
import: settingsImport,
|
||||
|
|
|
|||
Loading…
Reference in a new issue