Move mod calculations to a separate helper

We use mod calculations on multiple places, so make a separate helper
from it with proper types.

The "clumsiness" of defining a local variable to pass into the function
and out from it comes from the discrepancies in how c and c++ handles
initializations of variables in a struct.

Thanks goes to Tiago and Linus for pointing me in the right direction.

Signed-off-by: Anton Lundin <glance@acc.umu.se>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
Anton Lundin 2014-05-25 12:30:51 +02:00 committed by Dirk Hohndel
parent a85023a661
commit ff966f2c1a
3 changed files with 11 additions and 5 deletions

6
dive.h
View file

@ -104,6 +104,12 @@ static inline int interpolate(int a, int b, int part, int whole)
return rint(x / whole);
}
static inline depth_t gas_mod(struct gasmix *mix, pressure_t po2_limit) {
depth_t depth;
depth.mm = po2_limit.mbar * 1000 / get_o2(mix) * 10 - 10000;
return depth;
}
struct sample {
duration_t time;
depth_t depth;