X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=altoslib%2FAltosEepromRecordSet.java;h=82a5ea2a501b9b5103df52011248156db30f4a84;hb=f0068719b17019c5cd7ed318364a0581caf64e1a;hp=0c60c1a5ab5b8db2196a626b3a22a822b0b55748;hpb=da914cd72411af8c36af05b13c11b9093c8a378c;p=fw%2Faltos diff --git a/altoslib/AltosEepromRecordSet.java b/altoslib/AltosEepromRecordSet.java index 0c60c1a5..82a5ea2a 100644 --- a/altoslib/AltosEepromRecordSet.java +++ b/altoslib/AltosEepromRecordSet.java @@ -12,13 +12,13 @@ * General Public License for more details. */ -package org.altusmetrum.altoslib_11; +package org.altusmetrum.altoslib_12; import java.io.*; import java.util.*; public class AltosEepromRecordSet implements AltosRecordSet { - AltosEepromNew eeprom; + AltosEeprom eeprom; TreeSet ordered; AltosCalData cal_data; @@ -33,6 +33,7 @@ public class AltosEepromRecordSet implements AltosRecordSet { if (record.cmd() == AltosLib.AO_LOG_FLIGHT) { cal_data.set_tick(record.tick()); cal_data.set_boost_tick(); + break; } } } @@ -41,13 +42,17 @@ public class AltosEepromRecordSet implements AltosRecordSet { public void capture_series(AltosDataListener listener) { AltosCalData cal_data = cal_data(); + + cal_data.reset(); + listener.set_log_format(config_data().log_format); + for (AltosEepromRecord record : ordered) { record.provide_data(listener, cal_data); } listener.finish(); } - public AltosEepromRecordSet(AltosEepromNew eeprom) { + public AltosEepromRecordSet(AltosEeprom eeprom) { this.eeprom = eeprom; AltosConfigData config_data = eeprom.config_data(); @@ -72,7 +77,8 @@ public class AltosEepromRecordSet implements AltosRecordSet { break; case AltosLib.AO_LOG_FORMAT_TELEMINI2: case AltosLib.AO_LOG_FORMAT_TELEMINI3: - case AltosLib.AO_LOG_FORMAT_EASYMINI: + case AltosLib.AO_LOG_FORMAT_EASYMINI1: + case AltosLib.AO_LOG_FORMAT_EASYMINI2: record = new AltosEepromRecordMini(eeprom); break; case AltosLib.AO_LOG_FORMAT_TELEGPS: @@ -91,7 +97,7 @@ public class AltosEepromRecordSet implements AltosRecordSet { int tick = 0; boolean first = true; - for (;;) { + do { int t = record.tick(); if (first) { @@ -104,13 +110,11 @@ public class AltosEepromRecordSet implements AltosRecordSet { } record.wide_tick = tick; ordered.add(record); - if (!record.hasNext()) - break; record = record.next(); - } + } while (record != null); } public AltosEepromRecordSet(InputStream input) throws IOException { - this(new AltosEepromNew(input)); + this(new AltosEeprom(input)); } }