diff options
-rw-r--r-- | divesite.c | 10 | ||||
-rw-r--r-- | divesite.h | 3 |
2 files changed, 13 insertions, 0 deletions
diff --git a/divesite.c b/divesite.c index 492ba9d82..4f236017f 100644 --- a/divesite.c +++ b/divesite.c @@ -106,3 +106,13 @@ uint32_t create_dive_site_with_gps(const char *name, degrees_t latitude, degrees return ds->uuid; } + +/* a uuid is always present - but if all the other fields are empty, the dive site is pointless */ +bool dive_site_is_empty(struct dive_site *ds) +{ + return same_string(ds->name, "") && + same_string(ds->description, "") && + same_string(ds->notes, "") && + ds->latitude.udeg == 0 && + ds->longitude.udeg == 0; +} diff --git a/divesite.h b/divesite.h index 4702913aa..ca650259a 100644 --- a/divesite.h +++ b/divesite.h @@ -6,6 +6,8 @@ #ifdef __cplusplus extern "C" { +#else +#include <stdbool.h> #endif struct dive_site @@ -51,6 +53,7 @@ uint32_t create_dive_site(const char *name); uint32_t create_dive_site_with_gps(const char *name, degrees_t latitude, degrees_t longitude); uint32_t get_dive_site_uuid_by_name(const char *name, struct dive_site **dsp); uint32_t get_dive_site_uuid_by_gps(degrees_t latitude, degrees_t longitude, struct dive_site **dsp); +bool dive_site_is_empty(struct dive_site *ds); #ifdef __cplusplus } |