diff options
author | Berthold Stoeger <bstoeger@mail.tuwien.ac.at> | 2019-08-05 20:43:06 +0200 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2019-08-08 16:26:31 -0700 |
commit | 52e5d9c605469b338075e22533a8f97a6f984b57 (patch) | |
tree | c8fd18dc85ee5afba09c6714353316efc8a8db68 /core/planner.h | |
parent | 594d1d3514f91221884bdc31f29a09e8f325f1e8 (diff) | |
download | subsurface-52e5d9c605469b338075e22533a8f97a6f984b57.tar.gz |
Cleanup: move planner/deco related declarations planner/deco.h
Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
Diffstat (limited to 'core/planner.h')
-rw-r--r-- | core/planner.h | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/core/planner.h b/core/planner.h index b7e3c7241..404fbe3fc 100644 --- a/core/planner.h +++ b/core/planner.h @@ -5,6 +5,35 @@ #define LONGDECO 1 #define NOT_RECREATIONAL 2 +#include "units.h" +#include "divemode.h" + +/* this should be converted to use our types */ +struct divedatapoint { + int time; + depth_t depth; + int cylinderid; + pressure_t minimum_gas; + int setpoint; + bool entered; + struct divedatapoint *next; + enum divemode_t divemode; +}; + +struct diveplan { + timestamp_t when; + int surface_pressure; /* mbar */ + int bottomsac; /* ml/min */ + int decosac; /* ml/min */ + int salinity; + short gflow; + short gfhigh; + short vpmb_conservatism; + struct divedatapoint *dp; + int eff_gflow, eff_gfhigh; + int surface_interval; +}; + #ifdef __cplusplus extern "C" { #endif @@ -27,6 +56,17 @@ extern struct dive *planned_dive; extern char *cache_data; extern char *disclaimer; +struct divedatapoint *plan_add_segment(struct diveplan *diveplan, int duration, int depth, int cylinderid, int po2, bool entered, enum divemode_t divemode); +struct divedatapoint *create_dp(int time_incr, int depth, int cylinderid, int po2); +#if DEBUG_PLAN +void dump_plan(struct diveplan *diveplan); +#endif +struct decostop { + int depth; + int time; +}; +extern bool plan(struct deco_state *ds, struct diveplan *diveplan, struct dive *dive, int timestep, struct decostop *decostoptable, struct deco_state **cached_datap, bool is_planner, bool show_disclaimer); + #ifdef __cplusplus } #endif |