mirror of
https://github.com/subsurface/subsurface.git
synced 2025-01-19 06:15:26 +00:00
Cleanup: create equipment.h header
There is an equipment.c file, but no corresponding header. Move the corresponding functions into a newly created header. This does not improve compile time since, at least for now, equipment.h is included in dive.h. But it makes things more consistent. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
This commit is contained in:
parent
27d7f27409
commit
529bdef0d6
4 changed files with 92 additions and 72 deletions
|
@ -78,6 +78,7 @@ set(SUBSURFACE_CORE_LIB_SRCS
|
|||
downloadfromdcthread.cpp
|
||||
downloadfromdcthread.h
|
||||
equipment.c
|
||||
equipment.h
|
||||
errorhelper.c
|
||||
exif.cpp
|
||||
exif.h
|
||||
|
|
73
core/dive.h
73
core/dive.h
|
@ -13,7 +13,7 @@
|
|||
#include <string.h>
|
||||
#include <sys/stat.h>
|
||||
|
||||
#include "units.h"
|
||||
#include "equipment.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -22,48 +22,11 @@ extern "C" {
|
|||
extern int last_xml_version;
|
||||
|
||||
enum divemode_t {OC, CCR, PSCR, FREEDIVE, NUM_DIVEMODE, UNDEF_COMP_TYPE}; // Flags (Open-circuit and Closed-circuit-rebreather) for setting dive computer type
|
||||
enum cylinderuse {OC_GAS, DILUENT, OXYGEN, NOT_USED, NUM_GAS_USE}; // The different uses for cylinders
|
||||
|
||||
extern const char *cylinderuse_text[];
|
||||
extern const char *divemode_text_ui[];
|
||||
extern const char *divemode_text[];
|
||||
|
||||
// o2 == 0 && he == 0 -> air
|
||||
// o2 < 0 -> invalid
|
||||
struct gasmix {
|
||||
fraction_t o2;
|
||||
fraction_t he;
|
||||
};
|
||||
static const struct gasmix gasmix_invalid = { { -1 }, { -1 } };
|
||||
static const struct gasmix gasmix_air = { { 0 }, { 0 } };
|
||||
|
||||
typedef struct
|
||||
{
|
||||
volume_t size;
|
||||
pressure_t workingpressure;
|
||||
const char *description; /* "LP85", "AL72", "AL80", "HP100+" or whatever */
|
||||
} cylinder_type_t;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
cylinder_type_t type;
|
||||
struct gasmix gasmix;
|
||||
pressure_t start, end, sample_start, sample_end;
|
||||
depth_t depth;
|
||||
bool manually_added;
|
||||
volume_t gas_used;
|
||||
volume_t deco_gas_used;
|
||||
enum cylinderuse cylinder_use;
|
||||
bool bestmix_o2;
|
||||
bool bestmix_he;
|
||||
} cylinder_t;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
weight_t weight;
|
||||
const char *description; /* "integrated", "belt", "ankle" */
|
||||
} weightsystem_t;
|
||||
|
||||
struct icd_data { // This structure provides communication between function isobaric_counterdiffusion() and the calling software.
|
||||
int dN2; // The change in fraction (permille) of nitrogen during the change
|
||||
int dHe; // The change in fraction (permille) of helium during the change
|
||||
|
@ -150,9 +113,6 @@ static inline int interpolate(int a, int b, int part, int whole)
|
|||
return (a+b)/2;
|
||||
}
|
||||
|
||||
void get_gas_string(struct gasmix gasmix, char *text, int len);
|
||||
const char *gasname(struct gasmix gasmix);
|
||||
|
||||
#define MAX_SENSORS 2
|
||||
struct sample // BASE TYPE BYTES UNITS RANGE DESCRIPTION
|
||||
{ // --------- ----- ----- ----- -----------
|
||||
|
@ -214,13 +174,6 @@ struct divecomputer {
|
|||
struct divecomputer *next;
|
||||
};
|
||||
|
||||
#define MAX_CYLINDERS (20)
|
||||
#define MAX_WEIGHTSYSTEMS (6)
|
||||
#define MAX_TANK_INFO (100)
|
||||
#define MAX_WS_INFO (100)
|
||||
#define W_IDX_PRIMARY 0
|
||||
#define W_IDX_SECONDARY 1
|
||||
|
||||
typedef struct dive_table {
|
||||
int nr, allocated;
|
||||
struct dive **dives;
|
||||
|
@ -520,8 +473,6 @@ extern int nr_weightsystems(const struct dive *dive);
|
|||
|
||||
// extern void report_error(GError* error);
|
||||
|
||||
extern void add_cylinder_description(cylinder_type_t *);
|
||||
extern void add_weightsystem_description(weightsystem_t *);
|
||||
extern void remember_event(const char *eventname);
|
||||
extern void invalidate_dive_cache(struct dive *dc);
|
||||
|
||||
|
@ -653,28 +604,6 @@ extern struct gasmix get_gasmix_at_time(const struct dive *dive, const struct di
|
|||
* dialog
|
||||
*/
|
||||
|
||||
struct tank_info_t {
|
||||
const char *name;
|
||||
int cuft, ml, psi, bar;
|
||||
};
|
||||
extern struct tank_info_t tank_info[MAX_TANK_INFO];
|
||||
|
||||
struct ws_info_t {
|
||||
const char *name;
|
||||
int grams;
|
||||
};
|
||||
extern struct ws_info_t ws_info[MAX_WS_INFO];
|
||||
|
||||
extern bool cylinder_nodata(const cylinder_t *cyl);
|
||||
extern bool cylinder_none(const cylinder_t *cyl);
|
||||
extern bool weightsystem_none(const weightsystem_t *ws);
|
||||
extern void remove_cylinder(struct dive *dive, int idx);
|
||||
extern void remove_weightsystem(struct dive *dive, int idx);
|
||||
extern void reset_cylinders(struct dive *dive, bool track_gas);
|
||||
#ifdef DEBUG_CYL
|
||||
extern void dump_cylinders(struct dive *dive, bool verbose);
|
||||
#endif
|
||||
|
||||
extern void set_informational_units(const char *units);
|
||||
extern void set_git_prefs(const char *prefs);
|
||||
|
||||
|
|
|
@ -10,6 +10,7 @@
|
|||
#include <stdlib.h>
|
||||
#include <stdarg.h>
|
||||
#include <time.h>
|
||||
#include "equipment.h"
|
||||
#include "gettext.h"
|
||||
#include "dive.h"
|
||||
#include "display.h"
|
||||
|
|
89
core/equipment.h
Normal file
89
core/equipment.h
Normal file
|
@ -0,0 +1,89 @@
|
|||
// SPDX-License-Identifier: GPL-2.0
|
||||
#ifndef EQUIPMENT_H
|
||||
#define EQUIPMENT_H
|
||||
|
||||
#include "units.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
struct dive;
|
||||
|
||||
// o2 == 0 && he == 0 -> air
|
||||
// o2 < 0 -> invalid
|
||||
struct gasmix {
|
||||
fraction_t o2;
|
||||
fraction_t he;
|
||||
};
|
||||
static const struct gasmix gasmix_invalid = { { -1 }, { -1 } };
|
||||
static const struct gasmix gasmix_air = { { 0 }, { 0 } };
|
||||
|
||||
enum cylinderuse {OC_GAS, DILUENT, OXYGEN, NOT_USED, NUM_GAS_USE}; // The different uses for cylinders
|
||||
|
||||
typedef struct
|
||||
{
|
||||
volume_t size;
|
||||
pressure_t workingpressure;
|
||||
const char *description; /* "LP85", "AL72", "AL80", "HP100+" or whatever */
|
||||
} cylinder_type_t;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
cylinder_type_t type;
|
||||
struct gasmix gasmix;
|
||||
pressure_t start, end, sample_start, sample_end;
|
||||
depth_t depth;
|
||||
bool manually_added;
|
||||
volume_t gas_used;
|
||||
volume_t deco_gas_used;
|
||||
enum cylinderuse cylinder_use;
|
||||
bool bestmix_o2;
|
||||
bool bestmix_he;
|
||||
} cylinder_t;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
weight_t weight;
|
||||
const char *description; /* "integrated", "belt", "ankle" */
|
||||
} weightsystem_t;
|
||||
|
||||
#define MAX_CYLINDERS (20)
|
||||
#define MAX_WEIGHTSYSTEMS (6)
|
||||
#define MAX_TANK_INFO (100)
|
||||
#define MAX_WS_INFO (100)
|
||||
#define W_IDX_PRIMARY 0
|
||||
#define W_IDX_SECONDARY 1
|
||||
|
||||
extern void add_cylinder_description(cylinder_type_t *);
|
||||
extern void add_weightsystem_description(weightsystem_t *);
|
||||
extern bool cylinder_nodata(const cylinder_t *cyl);
|
||||
extern bool cylinder_none(const cylinder_t *cyl);
|
||||
extern bool weightsystem_none(const weightsystem_t *ws);
|
||||
extern void remove_cylinder(struct dive *dive, int idx);
|
||||
extern void remove_weightsystem(struct dive *dive, int idx);
|
||||
extern void reset_cylinders(struct dive *dive, bool track_gas);
|
||||
#ifdef DEBUG_CYL
|
||||
extern void dump_cylinders(struct dive *dive, bool verbose);
|
||||
#endif
|
||||
|
||||
void get_gas_string(struct gasmix gasmix, char *text, int len);
|
||||
const char *gasname(struct gasmix gasmix);
|
||||
|
||||
struct tank_info_t {
|
||||
const char *name;
|
||||
int cuft, ml, psi, bar;
|
||||
};
|
||||
extern struct tank_info_t tank_info[MAX_TANK_INFO];
|
||||
|
||||
struct ws_info_t {
|
||||
const char *name;
|
||||
int grams;
|
||||
};
|
||||
extern struct ws_info_t ws_info[MAX_WS_INFO];
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif // EQUIPMENT_H
|
Loading…
Add table
Reference in a new issue