mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
Introduce an on/off switch for calculating ndl/tts
Let the user choose if the calculation of ndl and tts is worth the time it takes. Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
parent
dbd4a471ec
commit
4bb8368a20
6 changed files with 38 additions and 0 deletions
1
pref.h
1
pref.h
|
@ -28,6 +28,7 @@ struct preferences {
|
|||
short profile_calc_ceiling;
|
||||
short calc_ceiling_3m_incr;
|
||||
short calc_all_tissues;
|
||||
short calc_ndl_tts;
|
||||
short gflow;
|
||||
short gfhigh;
|
||||
int map_provider;
|
||||
|
|
|
@ -1014,6 +1014,11 @@ static void calculate_deco_information(struct dive *dive, struct divecomputer *d
|
|||
entry->ceilings[k] = deco_allowed_depth(tolerated_by_tissue[k], surface_pressure, dive, 1);
|
||||
|
||||
/* calculate DECO STOP / TTS / NDL */
|
||||
|
||||
/* bail if we shouldn't */
|
||||
if (!prefs.calc_ndl_tts)
|
||||
continue;
|
||||
|
||||
/* We are going to mess up deco state, so store it for later restore */
|
||||
char *cache_data = NULL;
|
||||
cache_deco_state(tissue_tolerance, &cache_data);
|
||||
|
|
|
@ -618,6 +618,7 @@ void MainWindow::readSettings()
|
|||
GET_BOOL("dcceiling", profile_dc_ceiling);
|
||||
GET_BOOL("calcceiling", profile_calc_ceiling);
|
||||
GET_BOOL("calcceiling3m", calc_ceiling_3m_incr);
|
||||
GET_BOOL("calcndltts", calc_ndl_tts);
|
||||
GET_BOOL("calcalltissues", calc_all_tissues);
|
||||
GET_INT("gflow", gflow);
|
||||
GET_INT("gfhigh", gfhigh);
|
||||
|
|
|
@ -46,6 +46,8 @@ void PreferencesDialog::setUiFromPrefs()
|
|||
ui.increment_3m->setChecked(prefs.calc_ceiling_3m_incr);
|
||||
ui.all_tissues->setEnabled(ui.calculated_ceiling->isChecked());
|
||||
ui.all_tissues->setChecked(prefs.calc_all_tissues);
|
||||
ui.calc_ndl_tts->setEnabled(ui.calculated_ceiling->isChecked());
|
||||
ui.calc_ndl_tts->setChecked(prefs.calc_ndl_tts);
|
||||
ui.groupBox->setEnabled(ui.personalize->isChecked());
|
||||
|
||||
ui.gflow->setValue(prefs.gflow);
|
||||
|
@ -104,6 +106,7 @@ void PreferencesDialog::setPrefsFromUi()
|
|||
SP(profile_red_ceiling, ui.red_ceiling);
|
||||
SP(profile_calc_ceiling, ui.calculated_ceiling);
|
||||
SP(calc_ceiling_3m_incr, ui.increment_3m);
|
||||
SP(calc_ndl_tts, ui.calc_ndl_tts);
|
||||
SP(calc_all_tissues, ui.all_tissues);
|
||||
prefs.gflow = ui.gflow->value();
|
||||
prefs.gfhigh = ui.gfhigh->value();
|
||||
|
@ -142,6 +145,7 @@ void PreferencesDialog::syncSettings()
|
|||
SB("redceiling", ui.red_ceiling);
|
||||
SB("calcceiling", ui.calculated_ceiling);
|
||||
SB("calcceiling3m", ui.increment_3m);
|
||||
SB("calcndltts", ui.calc_ndl_tts);
|
||||
SB("calcalltissues", ui.all_tissues);
|
||||
s.setValue("gflow", ui.gflow->value());
|
||||
s.setValue("gfhigh", ui.gfhigh->value());
|
||||
|
|
|
@ -711,6 +711,16 @@
|
|||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QCheckBox" name="calc_ndl_tts">
|
||||
<property name="enabled">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Calculate NDL/TTS</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
|
@ -997,6 +1007,22 @@
|
|||
</hint>
|
||||
</hints>
|
||||
</connection>
|
||||
<connection>
|
||||
<sender>calculated_ceiling</sender>
|
||||
<signal>clicked(bool)</signal>
|
||||
<receiver>calc_ndl_tts</receiver>
|
||||
<slot>setEnabled(bool)</slot>
|
||||
<hints>
|
||||
<hint type="sourcelabel">
|
||||
<x>298</x>
|
||||
<y>327</y>
|
||||
</hint>
|
||||
<hint type="destinationlabel">
|
||||
<x>668</x>
|
||||
<y>327</y>
|
||||
</hint>
|
||||
</hints>
|
||||
</connection>
|
||||
<connection>
|
||||
<sender>dc_reported_ceiling</sender>
|
||||
<signal>clicked(bool)</signal>
|
||||
|
|
|
@ -22,6 +22,7 @@ struct preferences default_prefs = {
|
|||
.profile_red_ceiling = FALSE,
|
||||
.profile_calc_ceiling = FALSE,
|
||||
.calc_ceiling_3m_incr = FALSE,
|
||||
.calc_ndl_tts = FALSE,
|
||||
.gflow = 30,
|
||||
.gfhigh = 75,
|
||||
.font_size = 14.0,
|
||||
|
|
Loading…
Add table
Reference in a new issue