summaryrefslogtreecommitdiffstats
path: root/core/membuffer.c
diff options
context:
space:
mode:
authorGravatar Linus Torvalds <torvalds@linux-foundation.org>2018-10-20 14:12:15 -0400
committerGravatar Lubomir I. Ivanov <neolit123@gmail.com>2018-10-21 19:55:09 +0300
commit28e3413ff66552f392fecee25068d634cdfe59fc (patch)
tree5fe303d1e7dc1c371e13b534b85c232e29aea884 /core/membuffer.c
parentc9869406301ff72f76b399097f0845fc1102ced1 (diff)
downloadsubsurface-28e3413ff66552f392fecee25068d634cdfe59fc.tar.gz
Add 'location_t' data structure
Instead of having people treat latitude and longitude as separate things, just add a 'location_t' data structure that contains both. Almost all cases want to always act on them together. This is really just prep-work for adding a few more locations that we track: I want to add a entry/exit location to each dive (independent of the dive site) because of how the Garmin Descent gives us the information (and hopefully, some day, other dive computers too). Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'core/membuffer.c')
-rw-r--r--core/membuffer.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/core/membuffer.c b/core/membuffer.c
index 1d486b3a6..46cb541f1 100644
--- a/core/membuffer.c
+++ b/core/membuffer.c
@@ -218,6 +218,14 @@ void put_degrees(struct membuffer *b, degrees_t value, const char *pre, const ch
put_format(b, "%s%s%u.%06u%s", pre, sign, FRACTION(udeg, 1000000), post);
}
+void put_location(struct membuffer *b, location_t *loc, const char *pre, const char *post)
+{
+ if (has_location(loc)) {
+ put_degrees(b, loc->lat, pre, " ");
+ put_degrees(b, loc->lon, "", post);
+ }
+}
+
void put_quoted(struct membuffer *b, const char *text, int is_attribute, int is_html)
{
const char *p = text;