Mercurial > public > ostc4
view Discovery/Inc/buehlmann.h @ 223:5f535ef6a3db div-fixes-3
Bugfix, minor: properly alternate VPM/Buhlmann in deco loop
The idea of the counter in this commit is to compute the opposite
deco algorithm in 1:10 calls. So, when Buhlmann is selected,
also compute VPM with 1:10 sample rate (and vise versa).
The idea is good, but this never worked as the counter was local on
the stack, so was 0 for every call here. So, when switching between
deco algorithm, it took some refresh cycles as the computations
where not in sync.
Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
author | Jan Mulder <jlmulder@xs4all.nl> |
---|---|
date | Sun, 31 Mar 2019 15:14:06 +0200 |
parents | 5f11787b4f42 |
children | ff0d23625cd5 |
line wrap: on
line source
/////////////////////////////////////////////////////////////////////////////// /// -*- coding: UTF-8 -*- /// /// \file Discovery/Inc/buehlmann.h /// \brief ZHL16+GF decompression algorithm. /// \author Heinrichs Weikamp /// \date 2018 /// /// $Id$ /////////////////////////////////////////////////////////////////////////////// /// \par Copyright (c) 2014-2018 Heinrichs Weikamp gmbh /// /// This program is free software: you can redistribute it and/or modify /// it under the terms of the GNU General Public License as published by /// the Free Software Foundation, either version 3 of the License, or /// (at your option) any later version. /// /// This program is distributed in the hope that it will be useful, /// but WITHOUT ANY WARRANTY; without even the implied warranty of /// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the /// GNU General Public License for more details. /// /// You should have received a copy of the GNU General Public License /// along with this program. If not, see <http://www.gnu.org/licenses/>. ////////////////////////////////////////////////////////////////////////////// #ifndef BUEHLMANN_H #define BUEHLMANN_H #include "data_central.h" void buehlmann_init(void); void buehlmann_calc_deco(SLifeData* pLifeData, SDiveSettings * pDiveSettings, SDecoinfo * pDecoInfo); void buehlmann_ceiling_calculator(SLifeData* pLifeData, SDiveSettings * pDiveSettings, SDecoinfo * pDecoInfo); void buehlmann_relative_gradient_calculator(SLifeData* pLifeData, SDiveSettings * pDiveSettings, SDecoinfo * pDecoInfo); float buehlmann_get_gCNS(void); #endif /* BUEHLMANN_H */