summaryrefslogtreecommitdiff
path: root/src/core/SourceInterfaces.vala
diff options
context:
space:
mode:
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);
+}