diff options
author | Keith Packard <keithp@keithp.com> | 2017-05-09 02:31:04 -0700 |
---|---|---|
committer | Keith Packard <keithp@keithp.com> | 2017-05-09 02:31:04 -0700 |
commit | 0641326842bffbf4b3ae69459ca540131cb64e59 (patch) | |
tree | 31231c75d916a978de51c4f303af516e147de115 /altoslib/AltosEepromFile.java | |
parent | 17e20a6d2dab1f4bd1375bfd9e1c5230ee2c1119 (diff) |
altoslib: Remove older eeprom handling code
The new code appears to work in minor testing; time to try it all the time.
Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'altoslib/AltosEepromFile.java')
-rw-r--r-- | altoslib/AltosEepromFile.java | 116 |
1 files changed, 6 insertions, 110 deletions
diff --git a/altoslib/AltosEepromFile.java b/altoslib/AltosEepromFile.java index bb8abf87..4606e780 100644 --- a/altoslib/AltosEepromFile.java +++ b/altoslib/AltosEepromFile.java @@ -22,130 +22,26 @@ import java.io.*; import java.util.*; import java.text.*; -class AltosEepromIterator implements Iterator<AltosState> { - AltosState state; - Iterator<AltosEeprom> body; - AltosEeprom next; - boolean seen; - - public boolean hasNext() { - return !seen || body.hasNext(); - } - - public AltosState next() { - if (seen) { - AltosState n = state.clone(); - AltosEeprom e = body.next(); - - e.update_state(n); - state = n; - } - seen = true; - return state; - } - - public void remove () { - } - - public AltosEepromIterator(AltosState start, Iterator<AltosEeprom> body) { - this.state = start; - this.body = body; - this.seen = false; - } -} - public class AltosEepromFile extends AltosStateIterable { - AltosEepromIterable headers; - AltosEepromIterable body; AltosEepromRecordSet set; - AltosState start; + + public AltosConfigData config_data() { + return set.eeprom.config_data(); + } public void write_comments(PrintStream out) { - headers.write(out); } public void write(PrintStream out) { - headers.write(out); - body.write(out); + out.printf("%s\n", set.eeprom.toString()); } public AltosEepromFile(Reader input) throws IOException { set = new AltosEepromRecordSet(input); - - } - - public AltosEepromFile(FileInputStream input) { - headers = new AltosEepromIterable(AltosEepromHeader.read(input)); - - start = headers.state(); - if (start.state() != AltosLib.ao_flight_stateless) - start.set_state(AltosLib.ao_flight_pad); - - if (start.log_format == AltosLib.MISSING) { - if (start.product != null) { - if (start.product.startsWith("TeleMetrum")) - start.log_format = AltosLib.AO_LOG_FORMAT_FULL; - else if (start.product.startsWith("TeleMini")) - start.log_format = AltosLib.AO_LOG_FORMAT_TINY; - } - } - - switch (start.log_format) { - case AltosLib.AO_LOG_FORMAT_FULL: - body = new AltosEepromIterable(AltosEepromTM.read(input)); - break; - case AltosLib.AO_LOG_FORMAT_TINY: - body = new AltosEepromIterable(AltosEepromTMini.read(input)); - break; - case AltosLib.AO_LOG_FORMAT_TELEMETRY: - case AltosLib.AO_LOG_FORMAT_TELESCIENCE: - case AltosLib.AO_LOG_FORMAT_TELEMEGA: - case AltosLib.AO_LOG_FORMAT_TELEMEGA_OLD: - body = new AltosEepromIterable(AltosEepromMega.read(input, start.log_format)); - break; - case AltosLib.AO_LOG_FORMAT_TELEMETRUM: - body = new AltosEepromIterable(AltosEepromMetrum2.read(input)); - break; - case AltosLib.AO_LOG_FORMAT_TELEMINI2: - case AltosLib.AO_LOG_FORMAT_TELEMINI3: - case AltosLib.AO_LOG_FORMAT_EASYMINI: - body = new AltosEepromIterable(AltosEepromMini.read(input)); - break; - case AltosLib.AO_LOG_FORMAT_TELEGPS: - body = new AltosEepromIterable(AltosEepromGPS.read(input)); - break; - case AltosLib.AO_LOG_FORMAT_TELEFIRETWO: - body = new AltosEepromIterable(AltosEepromFireTwo.read(input)); - break; - default: - body = new AltosEepromIterable(new LinkedList<AltosEeprom>()); - break; - } - - /* Find boost tick */ - AltosState state = start.clone(); - for (AltosEeprom eeprom : body) { - eeprom.update_state(state); - state.finish_update(); - if (state.state() >= AltosLib.ao_flight_boost) { - start.set_boost_tick(state.tick); - break; - } - } } public Iterator<AltosState> iterator() { - if (set != null) - return set.iterator(); - - AltosState state = start.clone(); - Iterator<AltosEeprom> i = body.iterator(); - - while (i.hasNext() && !state.valid()) { - i.next().update_state(state); - state.finish_update(); - } - return new AltosEepromIterator(state, i); + return set.iterator(); } } |