diff options
Diffstat (limited to 'aoview/aoview.h')
-rw-r--r-- | aoview/aoview.h | 23 |
1 files changed, 21 insertions, 2 deletions
diff --git a/aoview/aoview.h b/aoview/aoview.h index 5c118a11..ac64833f 100644 --- a/aoview/aoview.h +++ b/aoview/aoview.h @@ -35,6 +35,7 @@ #include <sys/types.h> #include <sys/stat.h> #include <assert.h> +#include <math.h> #include <gtk/gtk.h> #include <glade/glade.h> @@ -50,7 +51,7 @@ struct usbdev { int idVendor; }; -struct aostate { +struct aodata { char callsign[16]; int serial; int rssi; @@ -83,9 +84,17 @@ struct aostate { double hdop; /* unitless? */ int h_error; /* m */ int v_error; /* m */ +}; + +struct aostate { + struct aodata data; /* derived data */ + struct aodata prev_data; + + double report_time; + gboolean ascent; /* going up? */ int ground_altitude; @@ -96,11 +105,16 @@ struct aostate { double temperature; double main_sense; double drogue_sense; + double baro_speed; int max_height; double max_acceleration; double max_speed; + double lat; + double lon; + int gps_valid; + double pad_lat; double pad_lon; double pad_alt; @@ -112,8 +126,13 @@ struct aostate { double distance; double bearing; int gps_height; + + int speak_tick; + int speak_altitude; }; +extern struct aostate aostate; + /* GPS is 'stable' when we've seen at least this many samples */ #define MIN_PAD_SAMPLES 10 @@ -162,7 +181,7 @@ void aoview_usbdev_free(struct usbdev *usbdev); void -aoview_state_notify(struct aostate *state); +aoview_state_notify(struct aodata *data); void aoview_state_new(void); |