aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Dirk Hohndel <dirk@hohndel.org>2014-05-29 13:13:11 -0700
committerGravatar Dirk Hohndel <dirk@hohndel.org>2014-05-29 13:18:13 -0700
commit56395b38946d4b7de9e485098e928e8e432ef920 (patch)
tree3757c7fce14ffd1ad6c68cdbd899e9c49979d2c5
parent45725d1c3036e0df16e437b1c3ac14703f0a780c (diff)
downloadsubsurface-56395b38946d4b7de9e485098e928e8e432ef920.tar.gz
Don't assume that pressures are always positive
When planning a dive, the dive could use more gas than is in the cylinder. So getting a negative end pressure is a useful indication to the user that there plan might not be a good one. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
-rw-r--r--dive.c4
-rw-r--r--dive.h2
-rw-r--r--helpers.h2
-rw-r--r--profile.c4
-rw-r--r--qt-gui.cpp2
5 files changed, 7 insertions, 7 deletions
diff --git a/dive.c b/dive.c
index ae07d151a..0d8f48754 100644
--- a/dive.c
+++ b/dive.c
@@ -76,7 +76,7 @@ void remove_event(struct event* event)
}
}
-int get_pressure_units(unsigned int mb, const char **units)
+int get_pressure_units(int mb, const char **units)
{
int pressure;
const char *unit;
@@ -454,7 +454,7 @@ void per_cylinder_mean_depth(struct dive *dive, struct divecomputer *dc, int *me
static void fixup_pressure(struct dive *dive, struct sample *sample)
{
- unsigned int pressure, index;
+ int pressure, index;
cylinder_t *cyl;
pressure = sample->cylinderpressure.mbar;
diff --git a/dive.h b/dive.h
index 50bd2df39..03acea496 100644
--- a/dive.h
+++ b/dive.h
@@ -68,7 +68,7 @@ typedef struct
const char *description; /* "integrated", "belt", "ankle" */
} weightsystem_t;
-extern int get_pressure_units(unsigned int mb, const char **units);
+extern int get_pressure_units(int mb, const char **units);
extern double get_depth_units(int mm, int *frac, const char **units);
extern double get_volume_units(unsigned int ml, int *frac, const char **units);
extern double get_temp_units(unsigned int mk, const char **units);
diff --git a/helpers.h b/helpers.h
index e4bc1c6b4..fbcf2895f 100644
--- a/helpers.h
+++ b/helpers.h
@@ -19,7 +19,7 @@ QString get_weight_unit();
QString get_cylinder_used_gas_string(cylinder_t *cyl, bool showunit = false);
QString get_temperature_string(temperature_t temp, bool showunit = false);
QString get_temp_unit();
-QString get_volume_string(volume_t volume, bool showunit = false, unsigned int mbar = 0);
+QString get_volume_string(volume_t volume, bool showunit = false, int mbar = 0);
QString get_volume_unit();
QString get_pressure_string(pressure_t pressure, bool showunit = false);
QString get_pressure_unit();
diff --git a/profile.c b/profile.c
index 26b267dd0..35af28f25 100644
--- a/profile.c
+++ b/profile.c
@@ -683,7 +683,7 @@ struct plot_info calculate_max_limits_new(struct dive *dive, struct divecomputer
/* Get the per-cylinder maximum pressure if they are manual */
for (cyl = 0; cyl < MAX_CYLINDERS; cyl++) {
- unsigned int mbar = dive->cylinder[cyl].start.mbar;
+ int mbar = dive->cylinder[cyl].start.mbar;
if (mbar > maxpressure)
maxpressure = mbar;
if (mbar < minpressure)
@@ -964,7 +964,7 @@ static void populate_pressure_information(struct dive *dive, struct divecomputer
current = NULL;
for (i = 0; i < pi->nr; i++) {
struct plot_data *entry = pi->entry + i;
- unsigned pressure = SENSOR_PRESSURE(entry);
+ int pressure = SENSOR_PRESSURE(entry);
/* discrete integration of pressure over time to get the SAC rate equivalent */
if (current) {
diff --git a/qt-gui.cpp b/qt-gui.cpp
index f342e20e1..3e898b979 100644
--- a/qt-gui.cpp
+++ b/qt-gui.cpp
@@ -286,7 +286,7 @@ QString get_temp_unit()
return QString(UTF8_DEGREE "F");
}
-QString get_volume_string(volume_t volume, bool showunit, unsigned int mbar)
+QString get_volume_string(volume_t volume, bool showunit, int mbar)
{
if (prefs.units.volume == units::LITER) {
double liter = volume.mliter / 1000.0;