altos: Don't include bufio debug commands by default
[fw/altos] / altoslib / AltosRecord.java
index 091695154fea3cc01a2a5fecf7b2afebed47e218..7046b9f10106c34b397e7f088dae0a6bb58b8022 100644 (file)
@@ -15,9 +15,9 @@
  * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
  */
 
-package org.altusmetrum.AltosLib;
+package org.altusmetrum.altoslib_1;
 
-public abstract class AltosRecord implements Comparable <AltosRecord>, Cloneable {
+public class AltosRecord implements Comparable <AltosRecord>, Cloneable {
 
        public static final int seen_flight = 1;
        public static final int seen_sensor = 2;
@@ -75,15 +75,17 @@ public abstract class AltosRecord implements Comparable <AltosRecord>, Cloneable
         *      temperature:    °C
         */
 
-       abstract public double pressure();
-       abstract public double ground_pressure();
-       abstract public double acceleration();
+       public double pressure() { return MISSING; }
+       public double ground_pressure() { return MISSING; }
+       public double acceleration() { return MISSING; }
 
        public double altitude() {
                double  p = pressure();
 
-               if (p == MISSING)
+               if (p == MISSING) {
+                       System.out.printf ("altitude missing\n");
                        return MISSING;
+               }
                return AltosConvert.pressure_to_altitude(p);
        }
 
@@ -126,6 +128,12 @@ public abstract class AltosRecord implements Comparable <AltosRecord>, Cloneable
                return tick - o.tick;
        }
 
+       public AltosRecord clone() {
+               AltosRecord n = new AltosRecord();
+               n.copy(this);
+               return n;
+       }
+
        public void copy(AltosRecord old) {
                seen = old.seen;
                version = old.version;
@@ -144,27 +152,17 @@ public abstract class AltosRecord implements Comparable <AltosRecord>, Cloneable
                kalman_height = old.kalman_height;
        }
 
-       public AltosRecord clone() {
-               try {
-                       AltosRecord n = (AltosRecord) super.clone();
-                       n.copy(this);
-                       return n;
-               } catch (CloneNotSupportedException e) {
-                       return null;
-               }
-       }
-
        public AltosRecord() {
                seen = 0;
                version = 0;
                callsign = "N0CALL";
-               serial = 0;
-               flight = 0;
+               serial = MISSING;
+               flight = MISSING;
                rssi = 0;
                status = 0;
                state = AltosLib.ao_flight_startup;
                tick = 0;
-               gps = new AltosGPS();
+               gps = null;
                new_gps = false;
                companion = null;