summaryrefslogtreecommitdiffstats
path: root/statistics.h
diff options
context:
space:
mode:
authorGravatar Dirk Hohndel <dirk@hohndel.org>2013-04-14 20:10:25 -0700
committerGravatar Dirk Hohndel <dirk@hohndel.org>2013-04-15 21:52:41 -0700
commitd25de98b7c76ffa2287754623c5f14f969aae80e (patch)
tree352f0b9eb877de24d437a51bba3307b4cec3a1a5 /statistics.h
parent4c775289a798154ec97b01490c9da7e63ddc320c (diff)
downloadsubsurface-d25de98b7c76ffa2287754623c5f14f969aae80e.tar.gz
Separate Gtk related code from core logic: statistics
Fairly straight forward, so far just one tiny bit of code restructuring, everything else separated cleanly. Added statistics-gtk.c and statistics.h This should make no difference to functionality. Cherry-picked from Qt branch; fixed merge issues mostly caused by dive_tags and Makefile changes. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'statistics.h')
-rw-r--r--statistics.h33
1 files changed, 33 insertions, 0 deletions
diff --git a/statistics.h b/statistics.h
new file mode 100644
index 000000000..d2709ee93
--- /dev/null
+++ b/statistics.h
@@ -0,0 +1,33 @@
+/*
+ * statistics.h
+ *
+ * core logic functions called from statistics UI
+ * common types and variables
+ */
+typedef struct {
+ int period;
+ duration_t total_time;
+ /* avg_time is simply total_time / nr -- let's not keep this */
+ duration_t shortest_time;
+ duration_t longest_time;
+ depth_t max_depth;
+ depth_t min_depth;
+ depth_t avg_depth;
+ volume_t max_sac;
+ volume_t min_sac;
+ volume_t avg_sac;
+ int max_temp;
+ int min_temp;
+ double combined_temp;
+ unsigned int combined_count;
+ unsigned int selection_size;
+ unsigned int total_sac_time;
+} stats_t;
+extern stats_t stats_selection;
+extern stats_t *stats_yearly;
+extern stats_t *stats_monthly;
+
+extern char *get_time_string(int seconds, int maxdays);
+extern char *get_minutes(int seconds);
+extern void process_all_dives(struct dive *dive, struct dive **prev_dive);
+extern void get_selected_dives_text(char *buffer, int size);