mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
Use actual min and max temperatures in statistics.
The statistics page only used each dive's "watertemp" attribute, regardless of actual higher/lower temperatures in the samples. By finding the actual max/min temperatures, the statistics page utilize more "real" data, and look better even on single dives. Signed-off-by: Henrik Brautaset Aronsen <subsurface@henrik.synth.no> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
parent
b8efe709a8
commit
e3088930ab
3 changed files with 47 additions and 8 deletions
13
dive.c
13
dive.c
|
|
@ -248,6 +248,17 @@ static void fixup_pressure(struct dive *dive, struct sample *sample)
|
|||
cyl->sample_end.mbar = pressure;
|
||||
}
|
||||
|
||||
static void update_min_max_temperatures(struct dive *dive, struct sample *sample)
|
||||
{
|
||||
if (sample->temperature.mkelvin) {
|
||||
if (!dive->maxtemp.mkelvin || sample->temperature.mkelvin > dive->maxtemp.mkelvin)
|
||||
dive->maxtemp = sample->temperature;
|
||||
if (!dive->mintemp.mkelvin || sample->temperature.mkelvin < dive->mintemp.mkelvin)
|
||||
dive->mintemp = sample->temperature;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* If the cylinder tank pressures are within half a bar
|
||||
* (about 8 PSI) of the sample pressures, we consider it
|
||||
|
|
@ -479,6 +490,8 @@ struct dive *fixup_dive(struct dive *dive)
|
|||
if (!mintemp || temp < mintemp)
|
||||
mintemp = temp;
|
||||
}
|
||||
update_min_max_temperatures(dive, sample);
|
||||
|
||||
depthtime += (time - lasttime) * (lastdepth + depth) / 2;
|
||||
lastdepth = depth;
|
||||
lasttime = time;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue