altoslib: AltosFlightSeries ignore missing accel/pressure
[fw/altos] / altoslib / AltosFlightSeries.java
index 7e643d9651359a10455504418766048ba024e60c..d5cc7fd182ac96ce6a78cd274ef67102e547e9f1 100644 (file)
@@ -156,9 +156,11 @@ public class AltosFlightSeries extends AltosDataListener {
        public static final String accel_name = "Accel";
 
        public void set_acceleration(double acceleration) {
-               if (accel_series == null) {
+               if (acceleration == AltosLib.MISSING)
+                       return;
+               if (accel_series == null)
                        accel_series = add_series(accel_name, AltosConvert.accel);
-               }
+
                accel_series.add(time(), acceleration);
        }
 
@@ -207,12 +209,18 @@ public class AltosFlightSeries extends AltosDataListener {
        public static final String height_name = "Height";
 
        public  void set_pressure(double pa) {
+               if (pa == AltosLib.MISSING)
+                       return;
+
                if (pressure_series == null)
                        pressure_series = add_series(pressure_name, AltosConvert.pressure);
                pressure_series.add(time(), pa);
                if (altitude_series == null)
                        altitude_series = add_series(altitude_name, AltosConvert.height);
 
+               if (cal_data.ground_pressure == AltosLib.MISSING)
+                       cal_data.set_ground_pressure(pa);
+
                double altitude = AltosConvert.pressure_to_altitude(pa);
                altitude_series.add(time(), altitude);
        }