X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=dive.h;h=82b336e5356cadaaf447060ec1d7c51d756e3956;hb=11becb87505b8cdf6fbf2f10941f87d394e49f80;hp=2d03ee7cd7d0db4c364ed51a9a1fd1cee37e2c94;hpb=550eb862fa6dbc1d07c6a3165634900421dd2ca6;p=ext%2Fsubsurface.git diff --git a/dive.h b/dive.h index 2d03ee7..82b336e 100644 --- a/dive.h +++ b/dive.h @@ -4,6 +4,8 @@ #include #include +#include + /* * Some silly typedefs to make our units very explicit. * @@ -81,6 +83,7 @@ typedef struct { typedef struct { cylinder_type_t type; gasmix_t gasmix; + pressure_t start, end; } cylinder_t; static inline int to_feet(depth_t depth) @@ -108,10 +111,9 @@ struct sample { int cylinderindex; }; -#define MAX_CYLINDERS (4) +#define MAX_CYLINDERS (8) struct dive { - const char *name; time_t when; char *location; char *notes; @@ -119,7 +121,6 @@ struct dive { duration_t duration, surfacetime; depth_t visibility; temperature_t airtemp, watertemp; - pressure_t beginning_pressure, end_pressure; cylinder_t cylinder[MAX_CYLINDERS]; int samples; struct sample sample[]; @@ -142,7 +143,7 @@ static inline struct dive *get_dive(unsigned int nr) } extern void parse_xml_init(void); -extern void parse_xml_file(const char *filename); +extern void parse_xml_file(const char *filename, GError **error); extern void flush_dive_info_changes(void); extern void save_dives(const char *filename); @@ -155,4 +156,6 @@ static inline unsigned int dive_size(int samples) extern struct dive *fixup_dive(struct dive *dive); extern struct dive *try_to_merge(struct dive *a, struct dive *b); +#define DIVE_ERROR_PARSE 1 + #endif /* DIVE_H */