mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-01 01:23:24 +00:00
Update fixup_pressure to calculate CCR oxygen cylinderpressures
Fixup_pressure() needs to calculate the cylinder pressures at the start and at the end of the dive, also for CCR oxygen cylinders. Since, in the case of CCR, the default cylinder is the diluent, this is not automatically done for oxygen. This code provides for fixup_pressure() to be able to do the calculations for oxygen as well. Another change to fixup_dive() invokes fixup_pressure() to calculate the values for the oxygen cylinder. Signed-off-by: willem ferguson <willemferguson@zoology.up.ac.za> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
parent
27d19b605b
commit
e288751353
1 changed files with 11 additions and 4 deletions
15
dive.c
15
dive.c
|
@ -763,15 +763,20 @@ void per_cylinder_mean_depth(struct dive *dive, struct divecomputer *dc, int *me
|
|||
}
|
||||
}
|
||||
|
||||
static void fixup_pressure(struct dive *dive, struct sample *sample)
|
||||
static void fixup_pressure(struct dive *dive, struct sample *sample, enum cylinderuse cyl_use)
|
||||
{
|
||||
int pressure, index;
|
||||
cylinder_t *cyl;
|
||||
|
||||
pressure = sample->cylinderpressure.mbar;
|
||||
if (cyl_use != OXYGEN) {
|
||||
pressure = sample->cylinderpressure.mbar;
|
||||
index = sample->sensor;
|
||||
} else { // for the CCR oxygen cylinder:
|
||||
pressure = sample->o2cylinderpressure.mbar;
|
||||
index = get_cylinder_idx_by_use(dive, OXYGEN);
|
||||
}
|
||||
if (!pressure)
|
||||
return;
|
||||
index = sample->sensor;
|
||||
|
||||
/* FIXME! sensor -> cylinder mapping? */
|
||||
if (index >= MAX_CYLINDERS)
|
||||
|
@ -1221,7 +1226,9 @@ static void fixup_dive_dc(struct dive *dive, struct divecomputer *dc)
|
|||
maxdepth = depth;
|
||||
}
|
||||
|
||||
fixup_pressure(dive, sample);
|
||||
fixup_pressure(dive, sample, OC_GAS);
|
||||
if (dive->dc.dctype == CCR)
|
||||
fixup_pressure(dive, sample, OXYGEN);
|
||||
|
||||
if (temp) {
|
||||
if (!mintemp || temp < mintemp)
|
||||
|
|
Loading…
Add table
Reference in a new issue