mirror of
https://github.com/nasa/openmct.git
synced 2025-02-25 19:11:35 +00:00
works with time
This commit is contained in:
parent
dcc893880b
commit
87dc272a5a
@ -21,12 +21,18 @@ export default class CompsManager extends EventEmitter {
|
||||
addParameter(telemetryObject) {
|
||||
const keyString = this.#openmct.objects.makeKeyString(telemetryObject.identifier);
|
||||
const metaData = this.#openmct.telemetry.getMetadata(telemetryObject);
|
||||
const specificTelemetryCollection = this.#telemetryCollections[keyString];
|
||||
const specificTimeKey = specificTelemetryCollection.timeKey;
|
||||
const timeMetaData = metaData.valueMetadatas.find(
|
||||
(metaDatum) => metaDatum.key === specificTimeKey
|
||||
);
|
||||
const random4Digit = Math.floor(1000 + Math.random() * 9000);
|
||||
this.#domainObject.configuration.comps.parameters.push({
|
||||
keyString,
|
||||
name: `${telemetryObject.name}_${random4Digit}`,
|
||||
valueToUse: metaData.valueMetadatas[0].key,
|
||||
testValue: 0
|
||||
testValue: 0,
|
||||
timeMetaData
|
||||
});
|
||||
this.persist(this.#domainObject);
|
||||
}
|
||||
@ -184,7 +190,6 @@ export default class CompsManager extends EventEmitter {
|
||||
|
||||
// clear it
|
||||
this.#clearBatch(keyString);
|
||||
console.debug(`🎉 new data for ${keyString}!`, specificBatchedNewData);
|
||||
this.emit('underlyingTelemetryUpdated', { [keyString]: specificBatchedNewData });
|
||||
};
|
||||
|
||||
|
@ -50,7 +50,9 @@ export default class CompsMetadataProvider {
|
||||
const keyString = this.#openmct.objects.makeKeyString(domainObject.identifier);
|
||||
const specificCompsManager = this.#compsManagerPool[keyString];
|
||||
console.debug('📦 CompsMetadataProvider: getMetadata', specificCompsManager);
|
||||
return {
|
||||
// if there are any parameters, grab the first one's timeMetaData
|
||||
const timeMetaData = specificCompsManager?.getParameters()[0]?.timeMetaData;
|
||||
const metaDataToReturn = {
|
||||
values: this.getDomains().concat([
|
||||
{
|
||||
key: 'output',
|
||||
@ -63,5 +65,12 @@ export default class CompsMetadataProvider {
|
||||
}
|
||||
])
|
||||
};
|
||||
if (
|
||||
timeMetaData &&
|
||||
metaDataToReturn.values.some((metaDatum) => metaDatum.key === timeMetaData.key)
|
||||
) {
|
||||
metaDataToReturn.values.push(timeMetaData);
|
||||
}
|
||||
return metaDataToReturn;
|
||||
}
|
||||
}
|
||||
|
@ -79,6 +79,12 @@ export default class CompsTelemetryProvider {
|
||||
const expression = specificCompsManager.getExpression();
|
||||
const telemetryForComps = specificCompsManager.getFullDataFrame(newTelemetry);
|
||||
const parameters = specificCompsManager.getParameters();
|
||||
console.debug(
|
||||
'🧮 Comps Telemetry Provider: sending calculation request',
|
||||
telemetryForComps,
|
||||
expression,
|
||||
parameters
|
||||
);
|
||||
this.#sharedWorker.port.postMessage({
|
||||
type: 'calculateSubscription',
|
||||
telemetryForComps,
|
||||
|
Loading…
x
Reference in New Issue
Block a user