mirror of
https://github.com/subsurface/subsurface.git
synced 2024-11-28 05:00:20 +00:00
09287809eb
The profile item that shows the ceilings adds a warning event if the ceiling is violated. This is very unfortunate. Improve this situation by adding the event up to the function that calculates the ceiling. This is still not how it should be - the display layer should not modify the dive that it displays. To make this clear, add a comment that details that this is a contract between planner and display layer: The planner uses a dive that can be trampled upon by the profile. Still, this should be solved differently. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
45 lines
1 KiB
C
45 lines
1 KiB
C
// SPDX-License-Identifier: GPL-2.0
|
|
#ifndef DISPLAY_H
|
|
#define DISPLAY_H
|
|
|
|
#include "libdivecomputer.h"
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
/* Plot info with smoothing, velocity indication
|
|
* and one-, two- and three-minute minimums and maximums */
|
|
struct plot_info {
|
|
int nr;
|
|
int nr_cylinders;
|
|
int maxtime;
|
|
int meandepth, maxdepth;
|
|
int minpressure, maxpressure;
|
|
int minhr, maxhr;
|
|
int mintemp, maxtemp;
|
|
enum {AIR, NITROX, TRIMIX, FREEDIVING} dive_type;
|
|
double endtempcoord;
|
|
double maxpp;
|
|
bool waypoint_above_ceiling;
|
|
struct plot_data *entry;
|
|
struct plot_pressure_data *pressures; /* cylinders.nr blocks of nr entries. */
|
|
};
|
|
|
|
extern struct divecomputer *select_dc(struct dive *);
|
|
|
|
extern unsigned int dc_number;
|
|
|
|
extern int is_default_dive_computer_device(const char *);
|
|
|
|
typedef void (*device_callback_t)(const char *name, void *userdata);
|
|
|
|
extern int enumerate_devices(device_callback_t callback, void *userdata, unsigned int transport);
|
|
|
|
#define AMB_PERCENTAGE 50.0
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif // DISPLAY_H
|