summaryrefslogtreecommitdiffstats
path: root/core/parse-gpx.h
diff options
context:
space:
mode:
authorGravatar Dirk Hohndel <dirk@hohndel.org>2020-01-22 13:25:58 -0800
committerGravatar Dirk Hohndel <dirk@hohndel.org>2020-01-24 09:51:02 -0800
commitee5a1564980acfa9c3aa0dbf457f4bdce0efbfcd (patch)
tree1bf11b8fb2c469b9be8d93e9fc71e68f52c229fc /core/parse-gpx.h
parent1ecd5065a0f821bb9406b5f651ebf6db5d6c2040 (diff)
downloadsubsurface-ee5a1564980acfa9c3aa0dbf457f4bdce0efbfcd.tar.gz
core: move GPX parsing into core
This shouldn't be part of the desktop UI code; there's still the issue that we really shouldn't hand code XML parsing, but I'll leave that for later. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'core/parse-gpx.h')
-rw-r--r--core/parse-gpx.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/core/parse-gpx.h b/core/parse-gpx.h
new file mode 100644
index 000000000..67a29b36f
--- /dev/null
+++ b/core/parse-gpx.h
@@ -0,0 +1,22 @@
+// SPDX-License-Identifier: GPL-2.0
+#ifndef PARSE_GPX_H
+#define PARSE_GPX_H
+
+
+#include <QFile>
+
+struct dive_coords { // This structure holds important information after parsing the GPX file:
+ time_t start_dive; // Start time of the current dive, obtained using current_dive (local time)
+ time_t end_dive; // End time of current dive (local time)
+ time_t start_track; // Start time of GPX track (UCT)
+ time_t end_track; // End time of GPX track (UCT)
+ double lon; // Longitude of the first trackpoint after the start of the dive
+ double lat; // Latitude of the first trackpoint after the start of the dive
+ int64_t settingsDiff_offset; // Local time difference between dive computer and GPS equipment
+ int64_t timeZone_offset; // UCT international time zone offset of dive site
+};
+
+int getCoordsFromGPXFile(dive_coords *coords, QString fileName);
+
+#endif
+