X-Git-Url: http://git.tdb.fi/?p=ext%2Fsubsurface.git;a=blobdiff_plain;f=dive.c;h=a420a3ef638927cd39c60ffe69f5fa37a9bbfea3;hp=9f57aed58146554969901198ac761fc888904e18;hb=77a903a6bb26d60e1736f7d5c118b598916b37f2;hpb=1d6903c65a4980ac51a3508db6a388ab07111341 diff --git a/dive.c b/dive.c index 9f57aed..a420a3e 100644 --- a/dive.c +++ b/dive.c @@ -120,6 +120,28 @@ double get_depth_units(unsigned int mm, int *frac, const char **units) return d; } +double get_weight_units(unsigned int grams, int *frac, const char **units) +{ + int decimals; + double value; + const char* unit; + + if (output_units.weight == LBS) { + value = grams_to_lbs(grams); + unit = "lbs"; + decimals = 0; + } else { + value = grams / 1000.0; + unit = "kg"; + decimals = 1; + } + if (frac) + *frac = decimals; + if (units) + *units = unit; + return value; +} + struct dive *alloc_dive(void) { const int initial_samples = 5; @@ -472,6 +494,10 @@ struct dive *fixup_dive(struct dive *dive) if (same_rounded_pressure(cyl->sample_end, cyl->end)) cyl->end.mbar = 0; } + for (i = 0; i < MAX_WEIGHTSYSTEMS; i++) { + weightsystem_t *ws = dive->weightsystem + i; + add_weightsystem_description(ws); + } return dive; }