87 lines
1.6 KiB
TypeScript
87 lines
1.6 KiB
TypeScript
|
|
namespace pxsim {
|
|
|
|
export class SensorNode extends BaseNode {
|
|
|
|
protected mode: number;
|
|
protected valueChanged: boolean;
|
|
protected modeChanged: boolean;
|
|
|
|
constructor(port: number) {
|
|
super(port);
|
|
}
|
|
|
|
public isUart() {
|
|
return true;
|
|
}
|
|
|
|
public isAnalog() {
|
|
return false;
|
|
}
|
|
|
|
public getValue() {
|
|
return 0;
|
|
}
|
|
|
|
setMode(mode: number) {
|
|
this.mode = mode;
|
|
this.changed = true;
|
|
this.modeChanged = true;
|
|
}
|
|
|
|
getMode() {
|
|
return this.mode;
|
|
}
|
|
|
|
getDeviceType() {
|
|
return DAL.DEVICE_TYPE_NONE;
|
|
}
|
|
|
|
public hasData() {
|
|
return true;
|
|
}
|
|
|
|
valueChange() {
|
|
const res = this.valueChanged;
|
|
this.valueChanged = false;
|
|
return res;
|
|
}
|
|
|
|
modeChange() {
|
|
const res = this.modeChanged;
|
|
this.modeChanged = false;
|
|
return res;
|
|
}
|
|
|
|
setChangedState() {
|
|
this.changed = true;
|
|
this.valueChanged = false;
|
|
}
|
|
}
|
|
|
|
export class AnalogSensorNode extends SensorNode {
|
|
|
|
constructor(port: number) {
|
|
super(port);
|
|
}
|
|
|
|
public isUart() {
|
|
return false;
|
|
}
|
|
|
|
public isAnalog() {
|
|
return true;
|
|
}
|
|
}
|
|
|
|
export class UartSensorNode extends SensorNode {
|
|
|
|
constructor(port: number) {
|
|
super(port);
|
|
}
|
|
|
|
hasChanged() {
|
|
return this.changed;
|
|
}
|
|
}
|
|
} |