Sequence now runs entirely in the main process. Renderer no longer stores the sequence, it is a for loop inside the main process.
This commit is contained in:
parent
11e9176cb8
commit
43ee0d0672
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"version": "1.3.3",
|
||||
"version": "1.4.0",
|
||||
"ext_port": 1111,
|
||||
"profiles": {
|
||||
"mcopy": {
|
||||
|
|
|
@ -2568,4 +2568,5 @@ async function init () {
|
|||
light.init();
|
||||
proj.init();
|
||||
cam.init();
|
||||
seq.init();
|
||||
};
|
|
@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|||
const Log = require("log");
|
||||
let seq;
|
||||
class Sequencer {
|
||||
constructor(cfg, cmd) {
|
||||
constructor(cfg, cmd, ui) {
|
||||
this.running = false;
|
||||
this.paused = false;
|
||||
this.arr = [];
|
||||
|
@ -12,19 +12,19 @@ class Sequencer {
|
|||
this.id = 'sequence';
|
||||
this.cfg = cfg;
|
||||
this.cmd = cmd;
|
||||
this.ui = ui;
|
||||
this.cmds(cfg.cmd);
|
||||
this.init();
|
||||
}
|
||||
cmds(obj) {
|
||||
let keys = Object.keys(obj);
|
||||
let key;
|
||||
for (key in keys) {
|
||||
this.CMDS[keys[key]] = key;
|
||||
for (let key of keys) {
|
||||
this.CMDS[obj[key]] = key;
|
||||
}
|
||||
}
|
||||
//currently called by ui
|
||||
async init() {
|
||||
this.log = Log({ label: this.id });
|
||||
this.log = await Log({ label: this.id });
|
||||
this.ipc = require('electron').ipcMain;
|
||||
this.listen();
|
||||
}
|
||||
|
@ -32,7 +32,6 @@ class Sequencer {
|
|||
this.ipc.on(this.id, this.listener.bind(this));
|
||||
}
|
||||
async listener(event, arg) {
|
||||
console.dir(arg);
|
||||
if (arg && arg.start) {
|
||||
this.start(arg);
|
||||
}
|
||||
|
@ -49,14 +48,23 @@ class Sequencer {
|
|||
this.unsetSteps(arg.unset);
|
||||
}
|
||||
else if (arg && arg.loops) {
|
||||
this.loops = arg.loops;
|
||||
this.setLoops(arg.loops);
|
||||
}
|
||||
event.returnValue = true;
|
||||
}
|
||||
setLoops(count) {
|
||||
this.loops = count;
|
||||
this.log.info(`Set loop count to ${count}`);
|
||||
}
|
||||
setSteps(steps) {
|
||||
console.dir(steps);
|
||||
for (let step of steps) {
|
||||
this.arr[step.x] = step;
|
||||
}
|
||||
}
|
||||
unsetSteps(steps) {
|
||||
for (let x of steps) {
|
||||
this.arr[x] = undefined;
|
||||
}
|
||||
}
|
||||
//new, replaces exec and init
|
||||
async start(arg) {
|
||||
|
@ -68,20 +76,35 @@ class Sequencer {
|
|||
}
|
||||
this.running = true;
|
||||
this.paused = false;
|
||||
//start sequence
|
||||
this.log.info(`Starting sequence...`);
|
||||
for (let x = 0; x < this.loops; x++) {
|
||||
//start loop
|
||||
this.log.info(`Starting loop ${x + 1}`);
|
||||
this.ui.send(this.id, { loop: x, start: true });
|
||||
for (let y = 0; y < this.arr.length; y++) {
|
||||
//start step
|
||||
this.log.info(`Starting step ${y + 1} of loop ${x + 1}`);
|
||||
this.ui.send(this.id, { step: y, start: true });
|
||||
if (this.running) {
|
||||
while (this.paused) {
|
||||
await delay(42);
|
||||
}
|
||||
await this.step(y);
|
||||
}
|
||||
else {
|
||||
break;
|
||||
}
|
||||
//end step
|
||||
this.log.info(`Ended step ${y + 1} of loop ${x + 1}`);
|
||||
this.ui.send(this.id, { step: y, stop: true });
|
||||
}
|
||||
//end loop
|
||||
this.log.info(`Ended loop ${x + 1}`);
|
||||
this.ui.send(this.id, { loop: x, stop: true });
|
||||
}
|
||||
//end sequence
|
||||
this.log.info(`Ended sequence`);
|
||||
}
|
||||
//new
|
||||
pause() {
|
||||
|
@ -94,21 +117,23 @@ class Sequencer {
|
|||
this.running = false;
|
||||
//clear?
|
||||
}
|
||||
async step(index) {
|
||||
async step(x) {
|
||||
try {
|
||||
await this.cmdMap(index);
|
||||
await this.cmdMap(x);
|
||||
}
|
||||
catch (err) {
|
||||
throw err;
|
||||
}
|
||||
}
|
||||
async cmdMap(index) {
|
||||
const cmdOriginal = this.arr[index].cmd;
|
||||
async cmdMap(x) {
|
||||
const cmdOriginal = this.arr[x].cmd;
|
||||
const cmd = this.CMDS[cmdOriginal];
|
||||
return await this.cmd[cmd];
|
||||
this.log.info(`CMD: '${cmdOriginal}' -> ${cmd}`);
|
||||
//I wrote this when I was very tired and delirious
|
||||
return await this.cmd[cmd]();
|
||||
}
|
||||
}
|
||||
module.exports = function (cfg, cmd) {
|
||||
return new Sequencer(cfg, cmd);
|
||||
module.exports = function (cfg, cmd, ui) {
|
||||
return new Sequencer(cfg, cmd, ui);
|
||||
};
|
||||
//# sourceMappingURL=index.js.map
|
|
@ -1 +1 @@
|
|||
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/sequencer/index.ts"],"names":[],"mappings":"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"}
|
||||
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/sequencer/index.ts"],"names":[],"mappings":"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"}
|
|
@ -81,7 +81,7 @@ class Settings {
|
|||
if (exists) {
|
||||
str = await fs.readFile(this.file, 'utf8');
|
||||
this.state = JSON.parse(str);
|
||||
console.dir(this.state);
|
||||
//console.dir(this.state)
|
||||
}
|
||||
else {
|
||||
this.save();
|
||||
|
|
|
@ -1 +1 @@
|
|||
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/settings/index.ts"],"names":[],"mappings":"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"}
|
||||
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/settings/index.ts"],"names":[],"mappings":"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"}
|
|
@ -91,6 +91,12 @@ devices.ready = function (event, arg) {
|
|||
}
|
||||
//devices.profile(arg.profile)
|
||||
}
|
||||
|
||||
seq.set(0, cfg.cmd.camera_forward);
|
||||
seq.set(1, cfg.cmd.projector_forward);
|
||||
grid.state(0);
|
||||
grid.state(1);
|
||||
|
||||
if (arg.projector_second) {
|
||||
//add second row of projector pads to grid
|
||||
}
|
||||
|
@ -220,7 +226,7 @@ devices.digitalCb = function (evt, args) {
|
|||
|
||||
seq.set(0, 'PF');
|
||||
grid.state(0);
|
||||
|
||||
|
||||
seq.set(1, 'CF');
|
||||
seq.setLight(1, color);
|
||||
grid.state(1);
|
||||
|
|
|
@ -10,6 +10,45 @@ seq.running = false;
|
|||
Sequence Object
|
||||
*******/
|
||||
|
||||
seq.init = function () {
|
||||
seq.listen();
|
||||
}
|
||||
|
||||
seq.listen = function () {
|
||||
ipcRenderer.on(seq.id, seq.listener);
|
||||
}
|
||||
|
||||
seq.listener = function (event, arg) {
|
||||
console.log(JSON.stringify(arg))
|
||||
if (typeof arg.loop !== 'undefined' && arg.start) {
|
||||
$('#loop_current').text(gui.fmtZero(arg.loop + 1, 6));
|
||||
} else if (typeof arg.loop !== 'undefined' && arg.stop) {
|
||||
$('#loop_current').text('');
|
||||
} else if (typeof arg.step !== 'undefined' && arg.start) {
|
||||
seq.activeStep(arg.step);
|
||||
log.info(`Step ${arg.step} active`, 'SERIAL', true);
|
||||
} else if (arg.step && arg.stop) {
|
||||
seq.inactiveAll();
|
||||
} else if (arg.stop) {
|
||||
log.info('Sequence stopped', 'SERIAL', true);
|
||||
} else if (arg.start) {
|
||||
//
|
||||
}
|
||||
return event.returnValue = true;
|
||||
}
|
||||
|
||||
seq.activeStep = function (x) {
|
||||
seq.inactiveAll();
|
||||
console.log(`.row input[x=${x + ''}]`)
|
||||
$(`.row input[x=${x + ''}]`).addClass('h');
|
||||
$(`#numbers div[x=${x + ''}]`).addClass('h');
|
||||
}
|
||||
|
||||
seq.inactiveAll = function () {
|
||||
$('.row input').removeClass('h');
|
||||
$('#numbers div').removeClass('h');
|
||||
}
|
||||
|
||||
seq.stop = function (s) {
|
||||
'use strict';
|
||||
ipcRenderer.send(seq.id, { stop : true });
|
||||
|
@ -18,7 +57,6 @@ seq.stop = function (s) {
|
|||
seq.start = function (start) {
|
||||
'use strict';
|
||||
seq.time = +new Date();
|
||||
|
||||
ipcRenderer.send(seq.id, { start : true });
|
||||
};
|
||||
|
||||
|
@ -76,7 +114,7 @@ seq.setLoops = function (count) {
|
|||
'use strict';
|
||||
seq.loops = count;
|
||||
seq.stats();
|
||||
ipcRenderer.send(seq.id, { loops : seq.count })
|
||||
ipcRenderer.send(seq.id, { loops : seq.loops })
|
||||
};
|
||||
|
||||
seq.stats = function () {
|
||||
|
|
|
@ -123,7 +123,7 @@ var init = async function () {
|
|||
proj = require('proj')(arduino, cfg, mainWindow.webContents, dig)
|
||||
|
||||
cmd = require('cmd')(cfg, proj, cam, light)
|
||||
seq = require('sequencer')(cfg, cmd)
|
||||
seq = require('sequencer')(cfg, cmd, mainWindow.webContents)
|
||||
}
|
||||
|
||||
app.on('ready', init)
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "mcopy-app",
|
||||
"version": "1.3.2",
|
||||
"version": "1.3.5",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "mcopy-app",
|
||||
"version": "1.3.4",
|
||||
"version": "1.4.0",
|
||||
"description": "GUI for the mcopy small gauge film optical printer platform",
|
||||
"main": "main.js",
|
||||
"scripts": {
|
||||
|
|
|
@ -94,4 +94,5 @@ async function init () {
|
|||
light.init();
|
||||
proj.init();
|
||||
cam.init();
|
||||
seq.init();
|
||||
};
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"version": "1.3.3",
|
||||
"version": "1.4.0",
|
||||
"ext_port": 1111,
|
||||
"profiles": {
|
||||
"mcopy": {
|
||||
|
|
|
@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|||
const Log = require("log");
|
||||
let seq;
|
||||
class Sequencer {
|
||||
constructor(cfg, cmd) {
|
||||
constructor(cfg, cmd, ui) {
|
||||
this.running = false;
|
||||
this.paused = false;
|
||||
this.arr = [];
|
||||
|
@ -12,19 +12,19 @@ class Sequencer {
|
|||
this.id = 'sequence';
|
||||
this.cfg = cfg;
|
||||
this.cmd = cmd;
|
||||
this.ui = ui;
|
||||
this.cmds(cfg.cmd);
|
||||
this.init();
|
||||
}
|
||||
cmds(obj) {
|
||||
let keys = Object.keys(obj);
|
||||
let key;
|
||||
for (key in keys) {
|
||||
this.CMDS[keys[key]] = key;
|
||||
for (let key of keys) {
|
||||
this.CMDS[obj[key]] = key;
|
||||
}
|
||||
}
|
||||
//currently called by ui
|
||||
async init() {
|
||||
this.log = Log({ label: this.id });
|
||||
this.log = await Log({ label: this.id });
|
||||
this.ipc = require('electron').ipcMain;
|
||||
this.listen();
|
||||
}
|
||||
|
@ -32,7 +32,6 @@ class Sequencer {
|
|||
this.ipc.on(this.id, this.listener.bind(this));
|
||||
}
|
||||
async listener(event, arg) {
|
||||
console.dir(arg);
|
||||
if (arg && arg.start) {
|
||||
this.start(arg);
|
||||
}
|
||||
|
@ -49,14 +48,23 @@ class Sequencer {
|
|||
this.unsetSteps(arg.unset);
|
||||
}
|
||||
else if (arg && arg.loops) {
|
||||
this.loops = arg.loops;
|
||||
this.setLoops(arg.loops);
|
||||
}
|
||||
event.returnValue = true;
|
||||
}
|
||||
setLoops(count) {
|
||||
this.loops = count;
|
||||
this.log.info(`Set loop count to ${count}`);
|
||||
}
|
||||
setSteps(steps) {
|
||||
console.dir(steps);
|
||||
for (let step of steps) {
|
||||
this.arr[step.x] = step;
|
||||
}
|
||||
}
|
||||
unsetSteps(steps) {
|
||||
for (let x of steps) {
|
||||
this.arr[x] = undefined;
|
||||
}
|
||||
}
|
||||
//new, replaces exec and init
|
||||
async start(arg) {
|
||||
|
@ -68,20 +76,35 @@ class Sequencer {
|
|||
}
|
||||
this.running = true;
|
||||
this.paused = false;
|
||||
//start sequence
|
||||
this.log.info(`Starting sequence...`);
|
||||
for (let x = 0; x < this.loops; x++) {
|
||||
//start loop
|
||||
this.log.info(`Starting loop ${x + 1}`);
|
||||
this.ui.send(this.id, { loop: x, start: true });
|
||||
for (let y = 0; y < this.arr.length; y++) {
|
||||
//start step
|
||||
this.log.info(`Starting step ${y + 1} of loop ${x + 1}`);
|
||||
this.ui.send(this.id, { step: y, start: true });
|
||||
if (this.running) {
|
||||
while (this.paused) {
|
||||
await delay(42);
|
||||
}
|
||||
await this.step(y);
|
||||
}
|
||||
else {
|
||||
break;
|
||||
}
|
||||
//end step
|
||||
this.log.info(`Ended step ${y + 1} of loop ${x + 1}`);
|
||||
this.ui.send(this.id, { step: y, stop: true });
|
||||
}
|
||||
//end loop
|
||||
this.log.info(`Ended loop ${x + 1}`);
|
||||
this.ui.send(this.id, { loop: x, stop: true });
|
||||
}
|
||||
//end sequence
|
||||
this.log.info(`Ended sequence`);
|
||||
}
|
||||
//new
|
||||
pause() {
|
||||
|
@ -94,21 +117,23 @@ class Sequencer {
|
|||
this.running = false;
|
||||
//clear?
|
||||
}
|
||||
async step(index) {
|
||||
async step(x) {
|
||||
try {
|
||||
await this.cmdMap(index);
|
||||
await this.cmdMap(x);
|
||||
}
|
||||
catch (err) {
|
||||
throw err;
|
||||
}
|
||||
}
|
||||
async cmdMap(index) {
|
||||
const cmdOriginal = this.arr[index].cmd;
|
||||
async cmdMap(x) {
|
||||
const cmdOriginal = this.arr[x].cmd;
|
||||
const cmd = this.CMDS[cmdOriginal];
|
||||
return await this.cmd[cmd];
|
||||
this.log.info(`CMD: '${cmdOriginal}' -> ${cmd}`);
|
||||
//I wrote this when I was very tired and delirious
|
||||
return await this.cmd[cmd]();
|
||||
}
|
||||
}
|
||||
module.exports = function (cfg, cmd) {
|
||||
return new Sequencer(cfg, cmd);
|
||||
module.exports = function (cfg, cmd, ui) {
|
||||
return new Sequencer(cfg, cmd, ui);
|
||||
};
|
||||
//# sourceMappingURL=index.js.map
|
|
@ -1 +1 @@
|
|||
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/sequencer/index.ts"],"names":[],"mappings":"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"}
|
||||
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/sequencer/index.ts"],"names":[],"mappings":"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"}
|
|
@ -81,7 +81,7 @@ class Settings {
|
|||
if (exists) {
|
||||
str = await fs.readFile(this.file, 'utf8');
|
||||
this.state = JSON.parse(str);
|
||||
console.dir(this.state);
|
||||
//console.dir(this.state)
|
||||
}
|
||||
else {
|
||||
this.save();
|
||||
|
|
|
@ -1 +1 @@
|
|||
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/settings/index.ts"],"names":[],"mappings":"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"}
|
||||
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/settings/index.ts"],"names":[],"mappings":"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"}
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "mcopy-cli",
|
||||
"version": "1.3.2",
|
||||
"version": "1.3.5",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "mcopy-cli",
|
||||
"version": "1.3.4",
|
||||
"version": "1.4.0",
|
||||
"description": "CLI for controlling the mcopy optical printer platform",
|
||||
"main": "index.js",
|
||||
"scripts": {
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"version": "1.3.4",
|
||||
"version": "1.4.0",
|
||||
"ext_port": 1111,
|
||||
"profiles": {
|
||||
"mcopy": {
|
||||
|
|
|
@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|||
const Log = require("log");
|
||||
let seq;
|
||||
class Sequencer {
|
||||
constructor(cfg, cmd) {
|
||||
constructor(cfg, cmd, ui) {
|
||||
this.running = false;
|
||||
this.paused = false;
|
||||
this.arr = [];
|
||||
|
@ -12,19 +12,19 @@ class Sequencer {
|
|||
this.id = 'sequence';
|
||||
this.cfg = cfg;
|
||||
this.cmd = cmd;
|
||||
this.ui = ui;
|
||||
this.cmds(cfg.cmd);
|
||||
this.init();
|
||||
}
|
||||
cmds(obj) {
|
||||
let keys = Object.keys(obj);
|
||||
let key;
|
||||
for (key in keys) {
|
||||
this.CMDS[keys[key]] = key;
|
||||
for (let key of keys) {
|
||||
this.CMDS[obj[key]] = key;
|
||||
}
|
||||
}
|
||||
//currently called by ui
|
||||
async init() {
|
||||
this.log = Log({ label: this.id });
|
||||
this.log = await Log({ label: this.id });
|
||||
this.ipc = require('electron').ipcMain;
|
||||
this.listen();
|
||||
}
|
||||
|
@ -32,7 +32,6 @@ class Sequencer {
|
|||
this.ipc.on(this.id, this.listener.bind(this));
|
||||
}
|
||||
async listener(event, arg) {
|
||||
console.dir(arg);
|
||||
if (arg && arg.start) {
|
||||
this.start(arg);
|
||||
}
|
||||
|
@ -49,14 +48,23 @@ class Sequencer {
|
|||
this.unsetSteps(arg.unset);
|
||||
}
|
||||
else if (arg && arg.loops) {
|
||||
this.loops = arg.loops;
|
||||
this.setLoops(arg.loops);
|
||||
}
|
||||
event.returnValue = true;
|
||||
}
|
||||
setLoops(count) {
|
||||
this.loops = count;
|
||||
this.log.info(`Set loop count to ${count}`);
|
||||
}
|
||||
setSteps(steps) {
|
||||
console.dir(steps);
|
||||
for (let step of steps) {
|
||||
this.arr[step.x] = step;
|
||||
}
|
||||
}
|
||||
unsetSteps(steps) {
|
||||
for (let x of steps) {
|
||||
this.arr[x] = undefined;
|
||||
}
|
||||
}
|
||||
//new, replaces exec and init
|
||||
async start(arg) {
|
||||
|
@ -68,20 +76,35 @@ class Sequencer {
|
|||
}
|
||||
this.running = true;
|
||||
this.paused = false;
|
||||
//start sequence
|
||||
this.log.info(`Starting sequence...`);
|
||||
for (let x = 0; x < this.loops; x++) {
|
||||
//start loop
|
||||
this.log.info(`Starting loop ${x + 1}`);
|
||||
this.ui.send(this.id, { loop: x, start: true });
|
||||
for (let y = 0; y < this.arr.length; y++) {
|
||||
//start step
|
||||
this.log.info(`Starting step ${y + 1} of loop ${x + 1}`);
|
||||
this.ui.send(this.id, { step: y, start: true });
|
||||
if (this.running) {
|
||||
while (this.paused) {
|
||||
await delay(42);
|
||||
}
|
||||
await this.step(y);
|
||||
}
|
||||
else {
|
||||
break;
|
||||
}
|
||||
//end step
|
||||
this.log.info(`Ended step ${y + 1} of loop ${x + 1}`);
|
||||
this.ui.send(this.id, { step: y, stop: true });
|
||||
}
|
||||
//end loop
|
||||
this.log.info(`Ended loop ${x + 1}`);
|
||||
this.ui.send(this.id, { loop: x, stop: true });
|
||||
}
|
||||
//end sequence
|
||||
this.log.info(`Ended sequence`);
|
||||
}
|
||||
//new
|
||||
pause() {
|
||||
|
@ -94,21 +117,23 @@ class Sequencer {
|
|||
this.running = false;
|
||||
//clear?
|
||||
}
|
||||
async step(index) {
|
||||
async step(x) {
|
||||
try {
|
||||
await this.cmdMap(index);
|
||||
await this.cmdMap(x);
|
||||
}
|
||||
catch (err) {
|
||||
throw err;
|
||||
}
|
||||
}
|
||||
async cmdMap(index) {
|
||||
const cmdOriginal = this.arr[index].cmd;
|
||||
async cmdMap(x) {
|
||||
const cmdOriginal = this.arr[x].cmd;
|
||||
const cmd = this.CMDS[cmdOriginal];
|
||||
return await this.cmd[cmd];
|
||||
this.log.info(`CMD: '${cmdOriginal}' -> ${cmd}`);
|
||||
//I wrote this when I was very tired and delirious
|
||||
return await this.cmd[cmd]();
|
||||
}
|
||||
}
|
||||
module.exports = function (cfg, cmd) {
|
||||
return new Sequencer(cfg, cmd);
|
||||
module.exports = function (cfg, cmd, ui) {
|
||||
return new Sequencer(cfg, cmd, ui);
|
||||
};
|
||||
//# sourceMappingURL=index.js.map
|
|
@ -1 +1 @@
|
|||
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/sequencer/index.ts"],"names":[],"mappings":"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"}
|
||||
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/sequencer/index.ts"],"names":[],"mappings":"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"}
|
|
@ -81,7 +81,7 @@ class Settings {
|
|||
if (exists) {
|
||||
str = await fs.readFile(this.file, 'utf8');
|
||||
this.state = JSON.parse(str);
|
||||
console.dir(this.state);
|
||||
//console.dir(this.state)
|
||||
}
|
||||
else {
|
||||
this.save();
|
||||
|
|
|
@ -1 +1 @@
|
|||
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/settings/index.ts"],"names":[],"mappings":"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"}
|
||||
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/settings/index.ts"],"names":[],"mappings":"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"}
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "mcopy",
|
||||
"version": "1.3.5",
|
||||
"version": "1.4.0",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "mcopy",
|
||||
"version": "1.3.5",
|
||||
"version": "1.4.0",
|
||||
"description": "Small gauge film optical printer platform",
|
||||
"main": "build.js",
|
||||
"directories": {
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
'use strict';
|
||||
|
||||
import uuid from 'uuid/v4';
|
||||
import Log = require('log');
|
||||
|
||||
let seq : Sequencer;
|
||||
|
@ -16,27 +17,28 @@ class Sequencer {
|
|||
private cmd : any;
|
||||
private CMDS : any = {};
|
||||
private ipc : any;
|
||||
private ui : any;
|
||||
private log : any;
|
||||
private id : string = 'sequence';
|
||||
|
||||
constructor (cfg : any, cmd : any) {
|
||||
constructor (cfg : any, cmd : any, ui : any) {
|
||||
this.cfg = cfg;
|
||||
this.cmd = cmd;
|
||||
this.ui = ui;
|
||||
this.cmds(cfg.cmd);
|
||||
this.init();
|
||||
}
|
||||
|
||||
private cmds (obj : any) {
|
||||
let keys : string[] = Object.keys(obj);
|
||||
let key : string;
|
||||
for (key in keys) {
|
||||
this.CMDS[keys[key]] = key;
|
||||
for (let key of keys) {
|
||||
this.CMDS[obj[key]] = key;
|
||||
}
|
||||
}
|
||||
|
||||
//currently called by ui
|
||||
private async init () {
|
||||
this.log = Log({ label : this.id })
|
||||
this.log = await Log({ label : this.id })
|
||||
this.ipc = require('electron').ipcMain;
|
||||
this.listen();
|
||||
}
|
||||
|
@ -46,7 +48,6 @@ class Sequencer {
|
|||
}
|
||||
|
||||
private async listener (event : any, arg : any) {
|
||||
console.dir(arg)
|
||||
if (arg && arg.start) {
|
||||
this.start(arg);
|
||||
} else if (arg && arg.stop) {
|
||||
|
@ -58,17 +59,28 @@ class Sequencer {
|
|||
} else if (arg && arg.unset) {
|
||||
this.unsetSteps(arg.unset);
|
||||
} else if (arg && arg.loops) {
|
||||
this.loops = arg.loops;
|
||||
this.setLoops(arg.loops);
|
||||
}
|
||||
event.returnValue = true;
|
||||
}
|
||||
|
||||
public setSteps (steps : any) {
|
||||
console.dir(steps)
|
||||
public setLoops (count : number) {
|
||||
this.loops = count;
|
||||
this.log.info(`Set loop count to ${count}`);
|
||||
}
|
||||
public unsetSteps (steps : number[]) {
|
||||
|
||||
public setSteps (steps : any[]) {
|
||||
for (let step of steps) {
|
||||
this.arr[step.x] = step;
|
||||
}
|
||||
}
|
||||
|
||||
public unsetSteps (steps : number[]) {
|
||||
for (let x of steps) {
|
||||
this.arr[x] = undefined;
|
||||
}
|
||||
}
|
||||
|
||||
//new, replaces exec and init
|
||||
public async start (arg : any) {
|
||||
if (arg && arg.arr) {
|
||||
|
@ -81,25 +93,44 @@ class Sequencer {
|
|||
this.running = true;
|
||||
this.paused = false;
|
||||
|
||||
//start sequence
|
||||
this.log.info(`Starting sequence...`)
|
||||
|
||||
for (let x = 0; x < this.loops; x++) {
|
||||
//start loop
|
||||
this.log.info(`Starting loop ${x + 1}`)
|
||||
this.ui.send(this.id, { loop : x, start : true });
|
||||
|
||||
for (let y = 0; y < this.arr.length; y++) {
|
||||
//start step
|
||||
this.log.info(`Starting step ${y + 1} of loop ${x + 1}`)
|
||||
this.ui.send(this.id, { step : y, start : true });
|
||||
|
||||
if (this.running) {
|
||||
while (this.paused) {
|
||||
await delay(42);
|
||||
}
|
||||
await this.step(y);
|
||||
} else {
|
||||
break
|
||||
}
|
||||
//end step
|
||||
this.log.info(`Ended step ${y + 1} of loop ${x + 1}`)
|
||||
this.ui.send(this.id, { step : y, stop : true });
|
||||
}
|
||||
//end loop
|
||||
this.log.info(`Ended loop ${x + 1}`)
|
||||
this.ui.send(this.id, { loop : x, stop : true });
|
||||
}
|
||||
//end sequence
|
||||
this.log.info(`Ended sequence`)
|
||||
}
|
||||
|
||||
//new
|
||||
public pause () {
|
||||
this.paused = true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Stop the sequence
|
||||
**/
|
||||
|
@ -109,22 +140,23 @@ class Sequencer {
|
|||
|
||||
}
|
||||
|
||||
private async step (index : number) {
|
||||
private async step (x: number) {
|
||||
try {
|
||||
await this.cmdMap(index)
|
||||
await this.cmdMap(x)
|
||||
} catch (err) {
|
||||
throw err;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private async cmdMap (index : number) {
|
||||
const cmdOriginal : string = this.arr[index].cmd;
|
||||
private async cmdMap (x : number) {
|
||||
const cmdOriginal : string = this.arr[x].cmd;
|
||||
const cmd : string = this.CMDS[cmdOriginal];
|
||||
return await this.cmd[cmd];
|
||||
this.log.info(`CMD: '${cmdOriginal}' -> ${cmd}`);
|
||||
//I wrote this when I was very tired and delirious
|
||||
return await this.cmd[cmd]();
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = function (cfg : any, cmd : any) {
|
||||
return new Sequencer(cfg, cmd);
|
||||
module.exports = function (cfg : any, cmd : any, ui : any) {
|
||||
return new Sequencer(cfg, cmd, ui);
|
||||
}
|
||||
|
|
|
@ -82,7 +82,7 @@ class Settings {
|
|||
if (exists) {
|
||||
str = await fs.readFile(this.file, 'utf8');
|
||||
this.state = JSON.parse(str);
|
||||
console.dir(this.state)
|
||||
//console.dir(this.state)
|
||||
} else {
|
||||
this.save();
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue