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

View file

@ -499,10 +499,9 @@ bool DivePlannerPointsModel::addGas(int o2, int he)
cyl->gasmix.he.permille = he;
/* The depth to change to that gas is given by the depth where its pO2 is 1.6 bar.
* The user should be able to change this depth manually. */
if (!o2)
cyl->depth.mm = 1600 * 1000 / O2_IN_AIR * 10 - 10000;
else
cyl->depth.mm = 1600 * 1000 / o2 * 10 - 10000;
pressure_t modppO2;
modppO2.mbar = 1600;
cyl->depth = gas_mod(&cyl->gasmix, modppO2);
CylindersModel::instance()->setDive(stagingDive);
return true;
}