}
}
if (end < 0)
+ {
+ /* Assume an ascent/descent rate of 9 m/min */
+ int asc_desc_time = dive->maxdepth.mm*60/9000;
+ dive->meandepth.mm = dive->maxdepth.mm*(dive->duration.seconds-asc_desc_time)/dive->duration.seconds;
return dive;
+ }
update_duration(&dive->duration, end - start);
if (start != end)
int nr = dive->samples;
if (!nr) {
+ /* The dive has no samples, so create a few fake ones. This assumes an
+ ascent/descent rate of 9 m/min, which is just below the limit for FAST. */
int duration = dive->duration.seconds;
int maxdepth = dive->maxdepth.mm;
+ int asc_desc_time = dive->maxdepth.mm*60/9000;
sample = fake;
- fake[1].time.seconds = duration * 0.05;
+ fake[1].time.seconds = asc_desc_time;
fake[1].depth.mm = maxdepth;
- fake[2].time.seconds = duration * 0.95;
+ fake[2].time.seconds = duration - asc_desc_time;
fake[2].depth.mm = maxdepth;
fake[3].time.seconds = duration * 1.00;
nr = 4;