projects
/
fw
/
altos
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
altos/cc1111: Wake up non-ADC sensor code each timer tick
[fw/altos]
/
altosui
/
AltosFlightStats.java
diff --git
a/altosui/AltosFlightStats.java
b/altosui/AltosFlightStats.java
index 1653ca5708fef79092d0df7e6a1a1ddd8109f908..dee31a8d3bcf6f8d3005803b110ead9cb6595236 100644
(file)
--- a/
altosui/AltosFlightStats.java
+++ b/
altosui/AltosFlightStats.java
@@
-18,7
+18,7
@@
package altosui;
import java.io.*;
package altosui;
import java.io.*;
-import org.altusmetrum.
AltosLib
.*;
+import org.altusmetrum.
altoslib_1
.*;
public class AltosFlightStats {
double max_height;
public class AltosFlightStats {
double max_height;
@@
-34,6
+34,11
@@
public class AltosFlightStats {
int flight;
int year, month, day;
int hour, minute, second;
int flight;
int year, month, day;
int hour, minute, second;
+ double lat, lon;
+ double pad_lat, pad_lon;
+ boolean has_gps;
+ boolean has_other_adc;
+ boolean has_rssi;
double landed_time(AltosRecordIterable iterable) {
AltosState state = null;
double landed_time(AltosRecordIterable iterable) {
AltosState state = null;
@@
-98,11
+103,19
@@
public class AltosFlightStats {
year = month = day = -1;
hour = minute = second = -1;
serial = flight = -1;
year = month = day = -1;
hour = minute = second = -1;
serial = flight = -1;
+ lat = lon = -1;
+ has_gps = false;
+ has_other_adc = false;
+ has_rssi = false;
for (AltosRecord record : iterable) {
if (serial < 0)
serial = record.serial;
if ((record.seen & AltosRecord.seen_flight) != 0 && flight < 0)
flight = record.flight;
for (AltosRecord record : iterable) {
if (serial < 0)
serial = record.serial;
if ((record.seen & AltosRecord.seen_flight) != 0 && flight < 0)
flight = record.flight;
+ if ((record.seen & AltosRecord.seen_temp_volt) != 0)
+ has_other_adc = true;
+ if (record.rssi != 0)
+ has_rssi = true;
new_state = new AltosState(record, state);
end_time = new_state.time;
state = new_state;
new_state = new AltosState(record, state);
end_time = new_state.time;
state = new_state;
@@
-137,6
+150,15
@@
public class AltosFlightStats {
max_speed = state.max_baro_speed;
max_acceleration = state.max_acceleration;
}
max_speed = state.max_baro_speed;
max_acceleration = state.max_acceleration;
}
+ if (state.gps != null && state.gps.locked && state.gps.nsat >= 4) {
+ if (state.state <= Altos.ao_flight_pad) {
+ pad_lat = state.gps.lat;
+ pad_lon = state.gps.lon;
+ }
+ lat = state.gps.lat;
+ lon = state.gps.lon;
+ has_gps = true;
+ }
}
for (int s = Altos.ao_flight_startup; s <= Altos.ao_flight_landed; s++) {
if (state_count[s] > 0) {
}
for (int s = Altos.ao_flight_startup; s <= Altos.ao_flight_landed; s++) {
if (state_count[s] > 0) {