altosdroid: Deal with AltosState changes
[fw/altos] / altoslib / AltosFlightSeries.java
index 6f4f7bb1e89c5960a5744df84ca1ba49cc7c273e..5cf552fcf00d178048f56fbafe3f2815b279820e 100644 (file)
@@ -86,6 +86,14 @@ public class AltosFlightSeries extends AltosDataListener {
                return AltosLib.MISSING;
        }
 
+       public double value(String name, double time) {
+               for (AltosTimeSeries s : series) {
+                       if (s.label.equals(name))
+                               return s.value(time);
+               }
+               return AltosLib.MISSING;
+       }
+
        public double value_before(String name, double time) {
                for (AltosTimeSeries s : series) {
                        if (s.label.equals(name))
@@ -208,7 +216,7 @@ public class AltosFlightSeries extends AltosDataListener {
 
        private void compute_height() {
                double ground_altitude = cal_data.ground_altitude;
-               if (height_series == null && ground_altitude != AltosLib.MISSING) {
+               if (height_series == null && ground_altitude != AltosLib.MISSING && altitude_series != null) {
                        height_series = add_series(height_name, AltosConvert.height);
                        for (AltosTimeValue alt : altitude_series)
                                height_series.add(alt.time, alt.value - ground_altitude);