From 9a7b5a93ed4d7d303560f70c956228e248d10c79 Mon Sep 17 00:00:00 2001
From: "p.vanderwilt"
Date: Fri, 26 Sep 2025 13:34:39 +0200
Subject: [PATCH] Add distance functionality to node configuration and update
measurement logging
---
src/nodeClass.js | 1 +
src/specificClass.js | 9 +++++++--
2 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/src/nodeClass.js b/src/nodeClass.js
index 59fba71..0e7c1cf 100644
--- a/src/nodeClass.js
+++ b/src/nodeClass.js
@@ -82,6 +82,7 @@ class nodeClass {
},
functionality: {
positionVsParent: uiConfig.positionVsParent || 'atEquipment', // Default to 'atEquipment' if not specified
+ distance: uiConfig.hasDistance ? uiConfig.distance : undefined
}
};
diff --git a/src/specificClass.js b/src/specificClass.js
index d861c2f..8546f1e 100644
--- a/src/specificClass.js
+++ b/src/specificClass.js
@@ -498,7 +498,7 @@ class Measurement {
updateOutputAbs(val) {
//only update on change
- if(val != this.outputAbs){
+ if (val != this.outputAbs) {
// Constrain value within process range
if (val < this.config.scaling.absMin || val > this.config.scaling.absMax) {
@@ -512,8 +512,13 @@ class Measurement {
this.emitter.emit('mAbs', this.outputAbs);// DEPRECATED: Use measurements container instead
// In the new method just update the measurement container and let the parent subscribe to it
+ if (typeof this.config.functionality.distance !== 'undefined') {
+ this.logger.debug(`Updating type: ${this.config.asset.type}, variant: ${"measured"}, postition : ${this.config.functionality.distance} container with new value: ${this.outputAbs}`);
+ this.measurements.type(this.config.asset.type).variant("measured").position(this.config.functionality.distance).value(this.outputAbs, Date.now(),this.config.asset.unit );
+ return;
+ }
this.logger.debug(`Updating type: ${this.config.asset.type}, variant: ${"measured"}, postition : ${this.config.functionality.positionVsParent} container with new value: ${this.outputAbs}`);
- this.measurements.type(this.config.asset.type).variant("measured").position(this.config.functionality.positionVsParent).value(this.outputAbs, Date.now(),this.config.asset.unit ); // New method
+ this.measurements.type(this.config.asset.type).variant("measured").position(this.config.functionality.positionVsParent).value(this.outputAbs, Date.now(),this.config.asset.unit );
}
}