java: Bump java library versions for next release
[fw/altos] / altoslib / AltosEepromTM.java
index 6945468b4e9ce152977bb2939713de7241e400d6..6d36cf47a9e1ed87169c71641e9d19c1106bb6d0 100644 (file)
  * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
  */
 
-package org.altusmetrum.altoslib_1;
+package org.altusmetrum.altoslib_5;
 
 import java.io.*;
 import java.util.*;
 import java.text.*;
 
 public class AltosEepromTM extends AltosEeprom {
-       public int      cmd;
-       public int      tick;
        public int      a;
        public int      b;
-       public boolean  tick_valid;
 
        public static final int record_length = 8;
 
-       static double
-       thermometer_to_temperature(double thermo)
-       {
-               return (thermo - 19791.268) / 32728.0 * 1.25 / 0.00247;
-       }
-
        public void write(PrintStream out) {
                out.printf("%c %4x %4x %4x\n", cmd, tick, a, b);
        }
 
+       public int record_length() { return record_length; }
+
+       public String string() {
+               return String.format("%c %4x %4x %4x\n", cmd, tick, a, b);
+       }
+
        public void update_state(AltosState state) {
+               super.update_state(state);
+
                AltosGPS        gps;
 
                /* Flush any pending GPS changes */
@@ -66,31 +65,25 @@ public class AltosEepromTM extends AltosEeprom {
                        state.set_boost_tick(tick);
                        break;
                case AltosLib.AO_LOG_SENSOR:
-                       state.set_tick(tick);
                        state.set_accel(a);
-                       double pressure = AltosConvert.barometer_to_pressure(b);
-                       state.set_pressure(pressure);
+                       state.set_pressure(AltosConvert.barometer_to_pressure(b));
                        break;
                case AltosLib.AO_LOG_PRESSURE:
-                       state.set_tick(tick);
                        state.set_pressure(AltosConvert.barometer_to_pressure(b));
                        break;
                case AltosLib.AO_LOG_TEMP_VOLT:
-                       state.set_tick(tick);
-                       state.set_temperature(thermometer_to_temperature(a));
+                       state.set_temperature(AltosConvert.thermometer_to_temperature(a));
                        state.set_battery_voltage(AltosConvert.cc_battery_to_voltage(b));
                        break;
                case AltosLib.AO_LOG_DEPLOY:
-                       state.set_tick(tick);
                        state.set_apogee_voltage(AltosConvert.cc_ignitor_to_voltage(a));
                        state.set_main_voltage(AltosConvert.cc_ignitor_to_voltage(b));
                        break;
                case AltosLib.AO_LOG_STATE:
-                       state.set_tick(tick);
                        state.set_state(a);
                        break;
                case AltosLib.AO_LOG_GPS_TIME:
-                       gps = state.make_temp_gps();
+                       gps = state.make_temp_gps(false);
 
                        gps.hour = (a & 0xff);
                        gps.minute = (a >> 8);
@@ -104,29 +97,29 @@ public class AltosEepromTM extends AltosEeprom {
                                AltosLib.AO_GPS_NUM_SAT_SHIFT;
                        break;
                case AltosLib.AO_LOG_GPS_LAT:
-                       gps = state.make_temp_gps();
+                       gps = state.make_temp_gps(false);
 
                        int lat32 = a | (b << 16);
                        gps.lat = (double) lat32 / 1e7;
                        break;
                case AltosLib.AO_LOG_GPS_LON:
-                       gps = state.make_temp_gps();
+                       gps = state.make_temp_gps(false);
 
                        int lon32 = a | (b << 16);
                        gps.lon = (double) lon32 / 1e7;
                        break;
                case AltosLib.AO_LOG_GPS_ALT:
-                       gps = state.make_temp_gps();
+                       gps = state.make_temp_gps(false);
                        gps.alt = a;
                        break;
                case AltosLib.AO_LOG_GPS_SAT:
-                       gps = state.make_temp_gps();
+                       gps = state.make_temp_gps(true);
                        int svid = a;
                        int c_n0 = b >> 8;
                        gps.add_sat(svid, c_n0);
                        break;
                case AltosLib.AO_LOG_GPS_DATE:
-                       gps = state.make_temp_gps();
+                       gps = state.make_temp_gps(false);
                        gps.year = (a & 0xff) + 2000;
                        gps.month = a >> 8;
                        gps.day = b & 0xff;
@@ -137,10 +130,10 @@ public class AltosEepromTM extends AltosEeprom {
        public AltosEepromTM (AltosEepromChunk chunk, int start) throws ParseException {
 
                cmd = chunk.data(start);
-               tick_valid = true;
+               valid = true;
 
-               tick_valid = !chunk.erased(start, record_length);
-               if (tick_valid) {
+               valid = !chunk.erased(start, record_length);
+               if (valid) {
                        if (AltosConvert.checksum(chunk.data, start, record_length) != 0)
                                throw new ParseException(String.format("invalid checksum at 0x%x",
                                                                       chunk.address + start), 0);
@@ -154,7 +147,7 @@ public class AltosEepromTM extends AltosEeprom {
        }
 
        public AltosEepromTM (String line) {
-               tick_valid = false;
+               valid = false;
                tick = 0;
                a = 0;
                b = 0;
@@ -170,7 +163,7 @@ public class AltosEepromTM extends AltosEeprom {
                                        } else {
                                                cmd = tokens[0].codePointAt(0);
                                                tick = Integer.parseInt(tokens[1],16);
-                                               tick_valid = true;
+                                               valid = true;
                                                a = Integer.parseInt(tokens[2],16);
                                                b = Integer.parseInt(tokens[3],16);
                                        }
@@ -184,7 +177,7 @@ public class AltosEepromTM extends AltosEeprom {
        }
 
        public AltosEepromTM(int in_cmd, int in_tick, int in_a, int in_b) {
-               tick_valid = true;
+               valid = true;
                cmd = in_cmd;
                tick = in_tick;
                a = in_a;