new toolchain for STM32L is in /usr/bin, not /opt/cortex/bin
[fw/altos] / altoslib / AltosRecord.java
index 091695154fea3cc01a2a5fecf7b2afebed47e218..5e4ed927a28dad427e648484f18e2286f25ddbbf 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;
@@ -44,7 +44,7 @@ public abstract class AltosRecord implements Comparable <AltosRecord>, Cloneable
        public int      tick;
 
        public AltosGPS gps;
-       public boolean  new_gps;
+       public int      gps_sequence;
 
        public double   time;   /* seconds since boost */
 
@@ -75,9 +75,9 @@ 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();
@@ -126,6 +126,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;
@@ -137,35 +143,25 @@ public abstract class AltosRecord implements Comparable <AltosRecord>, Cloneable
                state = old.state;
                tick = old.tick;
                gps = new AltosGPS(old.gps);
-               new_gps = old.new_gps;
+               gps_sequence = old.gps_sequence;
                companion = old.companion;
                kalman_acceleration = old.kalman_acceleration;
                kalman_speed = old.kalman_speed;
                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();
-               new_gps = false;
+               gps = null;
+               gps_sequence = 0;
                companion = null;
 
                kalman_acceleration = MISSING;