diff options
author | Keith Packard <keithp@keithp.com> | 2017-06-11 22:47:02 -0700 |
---|---|---|
committer | Keith Packard <keithp@keithp.com> | 2017-06-11 22:54:22 -0700 |
commit | 43f8470dc66392dae4770882bfc6ad25b1d75436 (patch) | |
tree | 6a858b12714cfc957feeaeba8cf8133b99e5d3e9 | |
parent | 3fa1eadb91eea001342d2d357d7aaf661e8a2a5d (diff) |
altoslib: Keep time series in AltosFlightSeries array sorted
This makes using the graph way easier.
Signed-off-by: Keith Packard <keithp@keithp.com>
-rw-r--r-- | altoslib/AltosFlightSeries.java | 6 | ||||
-rw-r--r-- | altoslib/AltosTimeSeries.java | 6 |
2 files changed, 11 insertions, 1 deletions
diff --git a/altoslib/AltosFlightSeries.java b/altoslib/AltosFlightSeries.java index 315e0a44..5223a5b4 100644 --- a/altoslib/AltosFlightSeries.java +++ b/altoslib/AltosFlightSeries.java @@ -118,6 +118,12 @@ public class AltosFlightSeries extends AltosDataListener { } public void add_series(AltosTimeSeries s) { + for (int e = 0; e < series.size(); e++) { + if (s.compareTo(series.get(e)) < 0){ + series.add(e, s); + return; + } + } series.add(s); } diff --git a/altoslib/AltosTimeSeries.java b/altoslib/AltosTimeSeries.java index db33fafa..5cf46c9a 100644 --- a/altoslib/AltosTimeSeries.java +++ b/altoslib/AltosTimeSeries.java @@ -16,11 +16,15 @@ package org.altusmetrum.altoslib_11; import java.util.*; -public class AltosTimeSeries implements Iterable<AltosTimeValue> { +public class AltosTimeSeries implements Iterable<AltosTimeValue>, Comparable<AltosTimeSeries> { public String label; public AltosUnits units; ArrayList<AltosTimeValue> values; + public int compareTo(AltosTimeSeries other) { + return label.compareTo(other.label); + } + public void add(AltosTimeValue tv) { values.add(tv); } |