weblab-instrument
Version:
communication with instrument through usb
79 lines (71 loc) • 1.78 kB
JavaScript
const propMethod = require('../dev/propMethod.js');
// const debug = require('debug');
// const log = debug('pm_channel:log');
function PM() {
this.temp = '';
this.type = 'SIN';
this.source = 'INTernal';
this.freq = '1E+3';
this.state = 'OFF';
this.deviation = '1E+1';
}
PM.prototype.cmdHandler = {
PMInteFunc: {
setHelper(pmObj, arg) {
pmObj.type = arg;
},
getHandler(pmObj, res) {
res = res.slice(0, -1);
pmObj.type = res.toString();
return true;
},
},
PMInteFreq: {
setHelper(pmObj, arg) {
pmObj.freq = arg;
return true;
},
getHandler(pmObj, res) {
res = res.slice(0, -1);
pmObj.freq = res.toString();
return true;
},
},
PMSource: {
setHelper(pmObj, arg) {
pmObj.source = arg;
},
getHandler(pmObj, res) {
res = res.slice(0, -1);
pmObj.source = res.toString();
return true;
},
},
PMState: {
setHelper(pmObj, arg) {
pmObj.state = arg;
},
getHandler(pmObj, res) {
res = res.slice(0, -1);
pmObj.state = res.toString();
return true;
},
},
PMDeviation: {
setHelper(pmObj, arg) {
pmObj.deviation = arg;
return true;
},
getHandler(pmObj, res) {
res = res.slice(0, -1);
pmObj.deviation = res.toString();
return true;
},
},
};
exports.initPMObj = function initPMObj(id) {
const pmCmd = new PM();
pmCmd.id = id;
pmCmd.prop = propMethod.CreatMethod.call(this, id);
return pmCmd;
};