[Plot] Fix bug for panels

Fix bug wherein number of points-to-plot is misreported
with multiple traces in a plot; clean up on modifications
to plot to self-cache streaming telemetry, to remove
other cache, WTD-751.
This commit is contained in:
Victor Woeltjen 2015-01-29 12:27:04 -08:00
parent 230ba3eb5c
commit a0137b341e
2 changed files with 10 additions and 5 deletions

View File

@ -34,6 +34,7 @@ define(
var subPlotFactory = new SubPlotFactory(telemetryFormatter),
modeOptions = new PlotModeOptions([], subPlotFactory),
subplots = [],
cachedObjects = [],
updater,
subscription,
domainOffset;
@ -56,10 +57,13 @@ define(
// Set up available modes (stacked/overlaid), based on the
// set of telemetry objects in this plot view.
function setupModes(telemetryObjects) {
modeOptions = new PlotModeOptions(
telemetryObjects || [],
subPlotFactory
);
if (cachedObjects !== telemetryObjects) {
cachedObjects = telemetryObjects;
modeOptions = new PlotModeOptions(
telemetryObjects || [],
subPlotFactory
);
}
}
// Update all sub-plots
@ -81,6 +85,7 @@ define(
// Handle new telemetry data in this plot
function updateValues() {
setupModes(subscription.getTelemetryObjects());
if (updater) {
updater.update();
modeOptions.getModeHandler().plotTelemetry(updater);

View File

@ -194,7 +194,7 @@ define(
* @returns {number} the number of points in this buffer
*/
getLength: function (index) {
return lengthArray;
return lengthArray[index] || 0;
},
/**
* Update with latest data.