From f145b116f0a390d0ccd5440a0d5cb58d70aa5165 Mon Sep 17 00:00:00 2001 From: Berthold Stoeger Date: Fri, 5 Jul 2019 23:29:34 +0200 Subject: Cleanup: make the plot-pressure type an enum Sadly, this doesn't give any type safety. But at least it documents the function arguments. Make the last item in the enum as a number-of-pressure-entries sentinel. Use that to size the pressure-values array. Signed-off-by: Berthold Stoeger --- core/profile.h | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) (limited to 'core') diff --git a/core/profile.h b/core/profile.h index 8636be2fd..447b72ec4 100644 --- a/core/profile.h +++ b/core/profile.h @@ -16,17 +16,20 @@ typedef enum { CRAZY } velocity_t; +enum plot_pressure { + SENSOR_PR = 0, + INTERPOLATED_PR = 1, + NUM_PLOT_PRESSURES = 2 +}; + struct membuffer; struct divecomputer; struct plot_info; struct plot_data { unsigned int in_deco : 1; int sec; - /* - * pressure[x][0] is sensor pressure for cylinder x - * pressure[x][1] is interpolated pressure - */ - int pressure[MAX_CYLINDERS][2]; + /* One pressure item per cylinder and pressure type */ + int pressure[MAX_CYLINDERS][NUM_PLOT_PRESSURES]; int temperature; /* Depth info */ int depth; @@ -95,15 +98,12 @@ int get_maxtime(struct plot_info *pi); * partial pressure graphs */ int get_maxdepth(struct plot_info *pi); -#define SENSOR_PR 0 -#define INTERPOLATED_PR 1 - -static inline int get_plot_pressure_data(const struct plot_data *entry, int sensor, int idx) +static inline int get_plot_pressure_data(const struct plot_data *entry, enum plot_pressure sensor, int idx) { return entry->pressure[idx][sensor]; } -static inline void set_plot_pressure_data(struct plot_data *entry, int sensor, int idx, int value) +static inline void set_plot_pressure_data(struct plot_data *entry, enum plot_pressure sensor, int idx, int value) { entry->pressure[idx][sensor] = value; } -- cgit v1.2.3-70-g09d2