Trim the dive to exclude surface time at beginning and end

We don't change any of the samples, we just don't plot (or consider for
dive time / mean calculations) the samples at the beginning or end of the
dive that are less than a certain threshold under water. Right now that's
an arbitrary 75cm which seems to Do The Right Thing(tm) for the dives I
tried this with - but I'm happy to look at other values if this causes
problems for people with dive computers I do not have access to.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
Dirk Hohndel 2012-11-11 10:36:46 +01:00
parent 4c3dfee446
commit 7c09991876
3 changed files with 11 additions and 2 deletions

3
dive.h
View file

@ -261,6 +261,7 @@ struct dive {
tripflag_t tripflag;
dive_trip_t *divetrip;
int selected;
int start, end;
timestamp_t when;
char *location;
char *notes;
@ -296,6 +297,8 @@ static inline int depth_to_mbar(int depth, struct dive *dive)
return depth / 10.0 * specific_weight + surface_pressure + 0.5;
}
#define SURFACE_THRESHOLD 750 /* somewhat arbitrary: only below 75cm is it really diving */
/* this is a global spot for a temporary dive structure that we use to
* be able to edit a dive without unintended side effects */
extern struct dive edit_dive;