Merge branch 'master' of ssh://git.gag.com/scm/git/fw/altos
[fw/altos] / altoslib / AltosEepromIterable.java
index 107ad9f0023d2c154f785fc4d5891b20652c7bc0..2ac10e85eb0d47cfa2c29066d174ce6f84b62d34 100644 (file)
@@ -21,48 +21,6 @@ import java.io.*;
 import java.util.*;
 import java.text.*;
 
-/*
- * AltosRecords with an index field so they can be sorted by tick while preserving
- * the original ordering for elements with matching ticks
- */
-class AltosOrderedRecord extends AltosEepromRecord implements Comparable<AltosOrderedRecord> {
-
-       public int      index;
-
-       public AltosOrderedRecord(String line, int in_index, int prev_tick, boolean prev_tick_valid)
-               throws ParseException {
-               super(line);
-               if (prev_tick_valid) {
-                       tick |= (prev_tick & ~0xffff);
-                       if (tick < prev_tick) {
-                               if (prev_tick - tick > 0x8000)
-                                       tick += 0x10000;
-                       } else {
-                               if (tick - prev_tick > 0x8000)
-                                       tick -= 0x10000;
-                       }
-               }
-               index = in_index;
-       }
-
-       public AltosOrderedRecord(int in_cmd, int in_tick, int in_a, int in_b, int in_index) {
-               super(in_cmd, in_tick, in_a, in_b);
-               index = in_index;
-       }
-
-       public String toString() {
-               return String.format("%d.%d %04x %04x %04x",
-                                    cmd, index, tick, a, b);
-       }
-
-       public int compareTo(AltosOrderedRecord o) {
-               int     tick_diff = tick - o.tick;
-               if (tick_diff != 0)
-                       return tick_diff;
-               return index - o.index;
-       }
-}
-
 public class AltosEepromIterable extends AltosRecordIterable {
 
        static final int        seen_flight = 1;
@@ -242,6 +200,7 @@ public class AltosEepromIterable extends AltosRecordIterable {
                state.state = AltosLib.ao_flight_pad;
                state.accel_plus_g = 15758;
                state.accel_minus_g = 16294;
+               state.flight_vel = 0;
 
                /* Pull in static data from the flight and gps_date records */
                if (flight_record != null)
@@ -401,8 +360,6 @@ public class AltosEepromIterable extends AltosRecordIterable {
                                if (line == null)
                                        break;
                                AltosOrderedRecord record = new AltosOrderedRecord(line, index++, prev_tick, prev_tick_valid);
-                               if (record == null)
-                                       break;
                                if (record.cmd == AltosLib.AO_LOG_INVALID)
                                        continue;
                                prev_tick = record.tick;