summaryrefslogtreecommitdiff
path: root/altoslib
diff options
context:
space:
mode:
authorKeith Packard <keithp@keithp.com>2015-02-07 14:40:17 -0800
committerKeith Packard <keithp@keithp.com>2015-02-07 14:40:17 -0800
commit08f07d0af123e1c307bc4c0c973da07fae8246b1 (patch)
tree384cd304bfa085dfb9521c40551ef6a60030ad8a /altoslib
parent0d08c427188f7b748d9ea7651143bc843e9c2691 (diff)
altosui: Remove the dregs of AltosDroid load-old-telem code
AltosDroid used to scan the old .telem file to return to the previous flight state on restart. Now it just loads the old state object instead, a vast improvement in performance. To do that, there were some changes in the altoslib code required. This patch just removes those, fixing replay bugs in TeleGPS along the way. Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'altoslib')
-rw-r--r--altoslib/AltosReplayReader.java13
-rw-r--r--altoslib/AltosTelemetryReader.java33
2 files changed, 4 insertions, 42 deletions
diff --git a/altoslib/AltosReplayReader.java b/altoslib/AltosReplayReader.java
index 2864e02a..dc6e1bb7 100644
--- a/altoslib/AltosReplayReader.java
+++ b/altoslib/AltosReplayReader.java
@@ -27,7 +27,6 @@ import java.util.*;
public class AltosReplayReader extends AltosFlightReader {
Iterator<AltosState> iterator;
File file;
- boolean real_time;
public AltosState read() {
if (iterator.hasNext())
@@ -40,22 +39,16 @@ public class AltosReplayReader extends AltosFlightReader {
public void update(AltosState state) throws InterruptedException {
/* Make it run in realtime after the rocket leaves the pad */
- if (real_time && state.state > AltosLib.ao_flight_pad && state.time_change > 0)
- Thread.sleep((int) (Math.min(state.time_change,10) * 1000));
+ if (state.state > AltosLib.ao_flight_pad && state.time_change > 0)
+ Thread.sleep((int) (Math.min(state.time_change,10) * 100));
state.set_received_time(System.currentTimeMillis());
}
public File backing_file() { return file; }
- public AltosReplayReader(Iterator<AltosState> in_iterator, File in_file,
- boolean in_real_time) {
+ public AltosReplayReader(Iterator<AltosState> in_iterator, File in_file) {
iterator = in_iterator;
file = in_file;
- real_time = in_real_time;
name = file.getName();
}
-
- public AltosReplayReader(Iterator<AltosState> in_iterator, File in_file) {
- this(in_iterator, in_file, false);
- }
}
diff --git a/altoslib/AltosTelemetryReader.java b/altoslib/AltosTelemetryReader.java
index 20526a2c..fa136145 100644
--- a/altoslib/AltosTelemetryReader.java
+++ b/altoslib/AltosTelemetryReader.java
@@ -28,17 +28,10 @@ public class AltosTelemetryReader extends AltosFlightReader {
int telemetry;
int telemetry_rate;
AltosState state = null;
- AltosFlightReader stacked;
LinkedBlockingQueue<AltosLine> telem;
public AltosState read() throws InterruptedException, ParseException, AltosCRCException, IOException {
- if (stacked != null) {
- state = stacked.read();
- if (state != null)
- return state;
- stacked = null;
- }
AltosLine l = telem.take();
if (l.line == null)
throw new IOException("IO error");
@@ -61,11 +54,6 @@ public class AltosTelemetryReader extends AltosFlightReader {
public void close(boolean interrupted) {
- if (stacked != null) {
- stacked.close(interrupted);
- stacked = null;
- }
-
link.remove_monitor(telem);
log.close();
try {
@@ -161,10 +149,9 @@ public class AltosTelemetryReader extends AltosFlightReader {
return link.monitor_battery();
}
- public AltosTelemetryReader (AltosLink in_link, AltosFlightReader in_stacked)
+ public AltosTelemetryReader (AltosLink in_link)
throws IOException, InterruptedException, TimeoutException {
link = in_link;
- stacked = in_stacked;
boolean success = false;
try {
log = new AltosLog(link);
@@ -183,22 +170,4 @@ public class AltosTelemetryReader extends AltosFlightReader {
close(true);
}
}
-
- private static AltosFlightReader existing_data(AltosLink link) {
- if (link == null)
- return null;
-
- File file = AltosPreferences.logfile(link.serial);
- if (file != null) {
- AltosStateIterable iterable = AltosStateIterable.iterable(file);
- if (iterable != null)
- return new AltosReplayReader(iterable.iterator(), file, false);
- }
- return null;
- }
-
- public AltosTelemetryReader(AltosLink link)
- throws IOException, InterruptedException, TimeoutException {
- this(link, null);
- }
}