summaryrefslogtreecommitdiffstats
path: root/core
diff options
context:
space:
mode:
authorGravatar Berthold Stoeger <bstoeger@mail.tuwien.ac.at>2019-07-15 23:36:14 +0200
committerGravatar Dirk Hohndel <dirk@hohndel.org>2019-07-18 05:42:55 -0700
commit0136d76cf4fd5c62f4224d2d721fce2b78097104 (patch)
treeab781ff11e5eeb480f1fdf7d8e99bd4765a4b59a /core
parent16214e753adda16867184df8a57301a13f2e041c (diff)
downloadsubsurface-0136d76cf4fd5c62f4224d2d721fce2b78097104.tar.gz
Cleanup: move deco function declarations to deco.h
Another tiny step in making dive.h smaller: move function declarations to deco.h if these functions are defined in deco.c and don't directly concern dives. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
Diffstat (limited to 'core')
-rw-r--r--core/deco.h18
-rw-r--r--core/dive.h15
-rw-r--r--core/divelist.c1
-rw-r--r--core/settings/qPrefTechnicalDetails.cpp3
4 files changed, 20 insertions, 17 deletions
diff --git a/core/deco.h b/core/deco.h
index ffb52f959..4a10b7366 100644
--- a/core/deco.h
+++ b/core/deco.h
@@ -6,11 +6,29 @@
extern "C" {
#endif
+struct dive;
+struct deco_state;
+struct decostop;
+
extern const double buehlmann_N2_t_halflife[];
extern int deco_allowed_depth(double tissues_tolerance, double surface_pressure, const struct dive *dive, bool smooth);
double get_gf(struct deco_state *ds, double ambpressure_bar, const struct dive *dive);
+extern void clear_deco(struct deco_state *ds, double surface_pressure);
+extern void dump_tissues(struct deco_state *ds);
+extern void set_gf(short gflow, short gfhigh);
+extern void set_vpmb_conservatism(short conservatism);
+extern void cache_deco_state(struct deco_state *source, struct deco_state **datap);
+extern void restore_deco_state(struct deco_state *data, struct deco_state *target, bool keep_vpmb_state);
+extern void nuclear_regeneration(struct deco_state *ds, double time);
+extern void vpmb_start_gradient(struct deco_state *ds);
+extern void vpmb_next_gradient(struct deco_state *ds, double deco_time, double surface_pressure);
+extern double tissue_tolerance_calc(struct deco_state *ds, const struct dive *dive, double pressure);
+extern void calc_crushing_pressure(struct deco_state *ds, double pressure);
+extern void vpmb_start_gradient(struct deco_state *ds);
+extern void clear_vpmb_state(struct deco_state *ds);
+extern void printdecotable(struct decostop *table);
extern double regressiona();
extern double regressionb();
diff --git a/core/dive.h b/core/dive.h
index 406a7b672..40ac9fb00 100644
--- a/core/dive.h
+++ b/core/dive.h
@@ -449,20 +449,9 @@ struct deco_state {
};
extern void add_segment(struct deco_state *ds, double pressure, struct gasmix gasmix, int period_in_seconds, int setpoint, enum divemode_t divemode, int sac);
-extern void clear_deco(struct deco_state *ds, double surface_pressure);
-extern void dump_tissues(struct deco_state *ds);
-extern void set_gf(short gflow, short gfhigh);
-extern void set_vpmb_conservatism(short conservatism);
-extern void cache_deco_state(struct deco_state *source, struct deco_state **datap);
-extern void restore_deco_state(struct deco_state *data, struct deco_state *target, bool keep_vpmb_state);
-extern void nuclear_regeneration(struct deco_state *ds, double time);
-extern void vpmb_start_gradient(struct deco_state *ds);
-extern void vpmb_next_gradient(struct deco_state *ds, double deco_time, double surface_pressure);
-extern double tissue_tolerance_calc(struct deco_state *ds, const struct dive *dive, double pressure);
extern bool is_dc_planner(const struct divecomputer *dc);
extern bool has_planned(const struct dive *dive, bool planned);
-
/* this should be converted to use our types */
struct divedatapoint {
int time;
@@ -499,10 +488,6 @@ struct decostop {
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);
-extern void calc_crushing_pressure(struct deco_state *ds, double pressure);
-extern void vpmb_start_gradient(struct deco_state *ds);
-extern void clear_vpmb_state(struct deco_state *ds);
-extern void printdecotable(struct decostop *table);
/* Since C doesn't have parameter-based overloading, two versions of get_next_event. */
extern const struct event *get_next_event(const struct event *event, const char *name);
diff --git a/core/divelist.c b/core/divelist.c
index 292e90c73..71a4b9bda 100644
--- a/core/divelist.c
+++ b/core/divelist.c
@@ -12,6 +12,7 @@
#include <libxslt/transform.h>
#include "subsurface-string.h"
+#include "deco.h"
#include "divesite.h"
#include "divelist.h"
#include "display.h"
diff --git a/core/settings/qPrefTechnicalDetails.cpp b/core/settings/qPrefTechnicalDetails.cpp
index 78e2c13d0..22cea8c74 100644
--- a/core/settings/qPrefTechnicalDetails.cpp
+++ b/core/settings/qPrefTechnicalDetails.cpp
@@ -1,8 +1,7 @@
// SPDX-License-Identifier: GPL-2.0
#include "qPrefTechnicalDetails.h"
#include "qPrefPrivate.h"
-
-
+#include "core/deco.h"
static const QString group = QStringLiteral("TecDetails");