Compare commits

...

2 Commits

Author SHA1 Message Date
647eb18215 Add 4 levels to sine wave generator 2021-06-02 15:41:59 -07:00
390068eaf7 Change the limits API to receive a promise 2021-06-02 14:34:13 -07:00
5 changed files with 42 additions and 6 deletions

View File

@ -94,9 +94,10 @@ define([
};
SinewaveLimitProvider.prototype.getLimits = function (domainObject) {
return {
limits: function () {
return {
return Promise.resolve({
WARNING: {
low: {
cssClass: "is-limit--lwr is-limit--yellow",
@ -118,8 +119,30 @@ define([
cssClass: "is-limit--upr is-limit--red",
...RED
}
},
CRITICAL: {
low: {
cssClass: "is-limit--lwr is-limit--red",
sin: -RED.sin,
cos: -RED.cos
},
high: {
cssClass: "is-limit--upr is-limit--red",
...RED
}
},
SEVERE: {
low: {
cssClass: "is-limit--lwr is-limit--red",
sin: -RED.sin,
cos: -RED.cos
},
high: {
cssClass: "is-limit--upr is-limit--red",
...RED
}
}
};
});
}
};
};

View File

@ -581,7 +581,9 @@ define([
const provider = this.findLimitEvaluator(domainObject);
if (!provider) {
return {
limits: function () {}
limits: function () {
return Promise.resolve(undefined);
}
};
}

View File

@ -32,6 +32,7 @@ export default class MCTChartAlarmLineSet {
eventHelpers.extend(this);
this.listenTo(series, 'limitBounds', this.updateBounds, this);
this.listenTo(series, 'limits', this.getLimitPoints, this);
this.listenTo(series, 'change:xKey', this.getLimitPoints, this);
if (series.limits) {

View File

@ -117,7 +117,17 @@ export default class PlotSeries extends Model {
this.keyString = this.openmct.objects.makeKeyString(this.domainObject.identifier);
this.limitEvaluator = this.openmct.telemetry.limitEvaluator(options.domainObject);
this.limitDefinition = this.openmct.telemetry.limitDefinition(options.domainObject);
this.limits = this.limitDefinition.limits();
this.limits = [];
this.limitDefinition.limits().then(response => {
this.limits = [];
if (response) {
this.limits = response;
}
this.emit('limits', this);
});
this.openmct.time.on('bounds', this.updateLimits);
this.on('destroy', this.onDestroy, this);
}

View File

@ -97,7 +97,7 @@ describe("the plugin", function () {
telemetrylimitProvider.supportsLimits.and.returnValue(true);
telemetrylimitProvider.getLimits.and.returnValue({
limits: function () {
return {
return Promise.resolve({
WARNING: {
low: {
cssClass: "is-limit--lwr is-limit--yellow",
@ -118,7 +118,7 @@ describe("the plugin", function () {
'some-key': 0.9
}
}
};
});
}
});
telemetrylimitProvider.getLimitEvaluator.and.returnValue({