summaryrefslogtreecommitdiffstats
path: root/planner.h
diff options
context:
space:
mode:
authorGravatar Dirk Hohndel <dirk@hohndel.org>2013-04-07 20:20:25 -0700
committerGravatar Henrik Brautaset Aronsen <subsurface@henrik.synth.no>2013-04-08 09:37:38 +0200
commitf86b13102c0203e16329af04da40a8cca99d1b24 (patch)
tree088ab2440bc4a9cde20a1a41b87d02664b6ea40f /planner.h
parenta70a8898722e1e70ba0ff408414b20fdfce52548 (diff)
downloadsubsurface-f86b13102c0203e16329af04da40a8cca99d1b24.tar.gz
Separate Gtk related code from core logic: planner
Relatively straight forward, just a handful of places where we call show_error() (a UI function) from the logic code. In the process I noticed a few places where error returns weren't dealt with correctly. Added a new planner.h files for the necessary declarations. This should make no difference to functionality. Signed-off-by: Henrik Brautaset Aronsen <subsurface@henrik.synth.no> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'planner.h')
-rw-r--r--planner.h21
1 files changed, 21 insertions, 0 deletions
diff --git a/planner.h b/planner.h
new file mode 100644
index 000000000..099f640fc
--- /dev/null
+++ b/planner.h
@@ -0,0 +1,21 @@
+#ifndef PLANNER_H
+#define PLANNER_H
+
+extern void plan(struct diveplan *diveplan, char **cache_datap, struct dive **divep, char **error_string_p);
+extern int validate_gas(const char *text, int *o2_p, int *he_p);
+extern int validate_time(const char *text, int *sec_p, int *rel_p);
+extern int validate_depth(const char *text, int *mm_p);
+extern int validate_po2(const char *text, int *mbar_po2);
+extern int validate_volume(const char *text, int *sac);
+extern timestamp_t current_time_notz(void);
+extern void show_planned_dive(char **error_string_p);
+extern int add_duration_to_nth_dp(struct diveplan *diveplan, int idx, int duration, gboolean is_rel);
+extern void add_po2_to_nth_dp(struct diveplan *diveplan, int idx, int po2);
+
+extern struct diveplan diveplan;
+extern struct dive *planned_dive;
+extern char *cache_data;
+extern char *disclaimer;
+extern double plangflow, plangfhigh;
+
+#endif /* PLANNER_H */