X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=dive.c;h=41bbabd698868bf43c90555acc38d13a83b41a9c;hb=a93641b7222e767d6a3a1be598cd8099d8517059;hp=b7f61293636bba44b0d0c49cf344615ba22ef03f;hpb=f4559ba9fa4610b56f27ffb20eb872908e987baf;p=ext%2Fsubsurface.git diff --git a/dive.c b/dive.c index b7f6129..41bbabd 100644 --- a/dive.c +++ b/dive.c @@ -1,8 +1,35 @@ +/* dive.c */ +/* maintains the internal dive list structure */ #include #include #include "dive.h" +double get_depth_units(unsigned int mm, int *frac, const char **units) +{ + int decimals; + double d; + const char *unit; + + switch (output_units.length) { + case METERS: + d = mm / 1000.0; + unit = "m"; + decimals = d < 20; + break; + case FEET: + d = mm_to_feet(mm); + unit = "ft"; + decimals = 0; + break; + } + if (frac) + *frac = decimals; + if (units) + *units = unit; + return d; +} + struct dive *alloc_dive(void) { const int initial_samples = 5;