summaryrefslogtreecommitdiff
path: root/src/core/SourceInterfaces.vala
diff options
context:
space:
mode:
authorJörg Frings-Fürst <debian@jff.email>2023-06-28 21:35:52 +0200
committerJörg Frings-Fürst <debian@jff.email>2023-06-28 21:35:52 +0200
commitb86540b743f1a87a163ffb811c8fe22a01fefa38 (patch)
treeb47cb3bb83c2377234226fb3987ab3320a987dd9 /src/core/SourceInterfaces.vala
parentac6e0b731b9f0b2efd392e3309a5c07e2a66adad (diff)
parente905d8e16eec152d19797937f13ba3cf4b8f8aca (diff)
Merge branch 'release/debian/0.32.1-1'debian/0.32.1-1
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);
+}