mirror of
https://github.com/subsurface/subsurface.git
synced 2025-01-19 14:25:27 +00:00
Planner: don't track cylinder pressure if working pressure is 0
The pressure graph will go from 0 to negative - one could make a weak argument that this would at least tell you how much pressure you'd need in the cylinder to start with, but that's kinda lame. Fixes #615 Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
parent
387553f0b3
commit
912560f928
2 changed files with 5 additions and 4 deletions
|
@ -243,7 +243,7 @@ void reset_cylinders(struct dive *dive, bool track_gas)
|
||||||
continue;
|
continue;
|
||||||
if (cyl->depth.mm == 0) /* if the gas doesn't give a mod, assume conservative pO2 */
|
if (cyl->depth.mm == 0) /* if the gas doesn't give a mod, assume conservative pO2 */
|
||||||
cyl->depth = gas_mod(&cyl->gasmix, pO2, M_OR_FT(3,10));
|
cyl->depth = gas_mod(&cyl->gasmix, pO2, M_OR_FT(3,10));
|
||||||
if (track_gas && cyl->type.workingpressure.mbar)
|
if (track_gas)
|
||||||
cyl->start.mbar = cyl->end.mbar = cyl->type.workingpressure.mbar;
|
cyl->start.mbar = cyl->end.mbar = cyl->type.workingpressure.mbar;
|
||||||
cyl->gas_used.mliter = 0;
|
cyl->gas_used.mliter = 0;
|
||||||
cyl->deco_gas_used.mliter = 0;
|
cyl->deco_gas_used.mliter = 0;
|
||||||
|
|
|
@ -275,7 +275,7 @@ static void create_dive_from_plan(struct diveplan *diveplan, bool track_gas)
|
||||||
oldgasmix = cyl->gasmix;
|
oldgasmix = cyl->gasmix;
|
||||||
sample = prepare_sample(dc);
|
sample = prepare_sample(dc);
|
||||||
sample->po2.mbar = dp->po2;
|
sample->po2.mbar = dp->po2;
|
||||||
if (track_gas)
|
if (track_gas && cyl->type.workingpressure.mbar)
|
||||||
sample->cylinderpressure.mbar = cyl->end.mbar;
|
sample->cylinderpressure.mbar = cyl->end.mbar;
|
||||||
finish_sample(dc);
|
finish_sample(dc);
|
||||||
while (dp) {
|
while (dp) {
|
||||||
|
@ -315,7 +315,7 @@ static void create_dive_from_plan(struct diveplan *diveplan, bool track_gas)
|
||||||
sample[-1].po2.mbar = po2;
|
sample[-1].po2.mbar = po2;
|
||||||
sample->time.seconds = lasttime + 1;
|
sample->time.seconds = lasttime + 1;
|
||||||
sample->depth.mm = lastdepth;
|
sample->depth.mm = lastdepth;
|
||||||
if (track_gas)
|
if (track_gas && cyl->type.workingpressure.mbar)
|
||||||
sample->cylinderpressure.mbar = cyl->sample_end.mbar;
|
sample->cylinderpressure.mbar = cyl->sample_end.mbar;
|
||||||
finish_sample(dc);
|
finish_sample(dc);
|
||||||
oldgasmix = gasmix;
|
oldgasmix = gasmix;
|
||||||
|
@ -331,7 +331,8 @@ static void create_dive_from_plan(struct diveplan *diveplan, bool track_gas)
|
||||||
if (track_gas) {
|
if (track_gas) {
|
||||||
update_cylinder_pressure(&displayed_dive, sample[-1].depth.mm, depth, time - sample[-1].time.seconds,
|
update_cylinder_pressure(&displayed_dive, sample[-1].depth.mm, depth, time - sample[-1].time.seconds,
|
||||||
dp->entered ? diveplan->bottomsac : diveplan->decosac, cyl, !dp->entered);
|
dp->entered ? diveplan->bottomsac : diveplan->decosac, cyl, !dp->entered);
|
||||||
sample->cylinderpressure.mbar = cyl->end.mbar;
|
if (cyl->type.workingpressure.mbar)
|
||||||
|
sample->cylinderpressure.mbar = cyl->end.mbar;
|
||||||
}
|
}
|
||||||
finish_sample(dc);
|
finish_sample(dc);
|
||||||
dp = dp->next;
|
dp = dp->next;
|
||||||
|
|
Loading…
Add table
Reference in a new issue