summaryrefslogtreecommitdiff
path: root/src/core/SourceInterfaces.vala
diff options
context:
space:
mode:
authorJörg Frings-Fürst <debian@jff.email>2023-06-14 20:36:37 +0200
committerJörg Frings-Fürst <debian@jff.email>2023-06-14 20:36:37 +0200
commitbb80d3feebdc9acc52e3f4ad24084d8425f043a2 (patch)
tree2084a84c39f159c6aea254775dc0880d52579d45 /src/core/SourceInterfaces.vala
parentb26ff0798252a1a8072dd2c7a67f6205de9fde11 (diff)
parent31804433d72460cbe0a39f9f8ea5e76058d84cda (diff)
Merge branch 'feature/upstream' into develop
Diffstat (limited to 'src/core/SourceInterfaces.vala')
-rw-r--r--src/core/SourceInterfaces.vala15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/core/SourceInterfaces.vala b/src/core/SourceInterfaces.vala
index 91a8aca..6e0c149 100644
--- a/src/core/SourceInterfaces.vala
+++ b/src/core/SourceInterfaces.vala
@@ -42,3 +42,18 @@ public interface Indexable : DataSource {
}
}
+// Positionable DataSources provide a globally locatable point in longitude and latitude degrees
+
+public struct GpsCoords {
+ public int has_gps;
+ public double latitude;
+ public double longitude;
+ public bool equals(ref GpsCoords gps) {
+ return (has_gps == 0 && gps.has_gps == 0) || (latitude == gps.latitude && longitude == gps.longitude);
+ }
+}
+
+public interface Positionable : DataSource {
+ public abstract GpsCoords get_gps_coords();
+ public abstract void set_gps_coords(GpsCoords gps_coords);
+}