mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
Disable calc_ndl_tts for print
NDL and TTS doesn't show up in the printed profiles, and it takes significant time to calculate, so just don't do it. Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
parent
25bfcf5f6d
commit
04bbfe2ab1
3 changed files with 8 additions and 7 deletions
11
profile.c
11
profile.c
|
@ -1013,7 +1013,7 @@ static void calculate_ndl_tts(double tissue_tolerance, struct plot_data *entry,
|
|||
/* Let's try to do some deco calculations.
|
||||
* Needs to be run before calculate_gas_information so we know that if we have a po2, where in ccr-mode.
|
||||
*/
|
||||
static void calculate_deco_information(struct dive *dive, struct divecomputer *dc, struct plot_info *pi)
|
||||
static void calculate_deco_information(struct dive *dive, struct divecomputer *dc, struct plot_info *pi, bool print_mode)
|
||||
{
|
||||
int i;
|
||||
double surface_pressure = (dc->surface_pressure.mbar ? dc->surface_pressure.mbar : get_surface_pressure_in_mbar(dive, TRUE)) / 1000.0;
|
||||
|
@ -1034,8 +1034,9 @@ static void calculate_deco_information(struct dive *dive, struct divecomputer *d
|
|||
for (j=0; j<16; j++)
|
||||
entry->ceilings[j] = deco_allowed_depth(tolerated_by_tissue[j], surface_pressure, dive, 1);
|
||||
|
||||
/* should we do more calculations? */
|
||||
if (prefs.calc_ndl_tts) {
|
||||
/* should we do more calculations?
|
||||
* We don't for print-mode because this info doesn't show up there */
|
||||
if (prefs.calc_ndl_tts && !print_mode) {
|
||||
/* 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);
|
||||
|
@ -1117,7 +1118,7 @@ static void calculate_gas_information(struct dive *dive, struct plot_info *pi)
|
|||
* sides, so that you can do end-points without having to worry
|
||||
* about it.
|
||||
*/
|
||||
struct plot_info *create_plot_info(struct dive *dive, struct divecomputer *dc, struct graphics_context *gc)
|
||||
struct plot_info *create_plot_info(struct dive *dive, struct divecomputer *dc, struct graphics_context *gc, bool print_mode)
|
||||
{
|
||||
struct plot_info *pi;
|
||||
|
||||
|
@ -1147,7 +1148,7 @@ struct plot_info *create_plot_info(struct dive *dive, struct divecomputer *dc, s
|
|||
|
||||
/* Then, calculate deco information */
|
||||
if (prefs.profile_calc_ceiling)
|
||||
calculate_deco_information(dive, dc, pi);
|
||||
calculate_deco_information(dive, dc, pi, print_mode);
|
||||
|
||||
/* And finaly calculate gas partial pressures */
|
||||
calculate_gas_information(dive, pi);
|
||||
|
|
|
@ -44,7 +44,7 @@ struct plot_data {
|
|||
};
|
||||
|
||||
void calculate_max_limits(struct dive *dive, struct divecomputer *dc, struct graphics_context *gc);
|
||||
struct plot_info *create_plot_info(struct dive *dive, struct divecomputer *dc, struct graphics_context *gc);
|
||||
struct plot_info *create_plot_info(struct dive *dive, struct divecomputer *dc, struct graphics_context *gc, bool print_mode);
|
||||
int setup_temperature_limits(struct graphics_context *gc);
|
||||
int get_cylinder_pressure_range(struct graphics_context *gc);
|
||||
void compare_samples(struct plot_data *e1, struct plot_data *e2, char *buf, int bufsize, int sum);
|
||||
|
|
|
@ -403,7 +403,7 @@ void ProfileGraphicsView::plot(struct dive *d, bool forceRedraw)
|
|||
gc.maxy = (profile_grid_area.height() - 2 * profile_grid_area.y());
|
||||
|
||||
/* This is per-dive-computer */
|
||||
gc.pi = *create_plot_info(dive, dc, &gc);
|
||||
gc.pi = *create_plot_info(dive, dc, &gc, printMode);
|
||||
|
||||
/* Bounding box */
|
||||
QPen pen = defaultPen;
|
||||
|
|
Loading…
Add table
Reference in a new issue