gpx syntax file error corrected
[gps-tracker] / gps-tracker.c
index 881164d..672ed7c 100644 (file)
@@ -141,6 +141,13 @@ on_gps_device_changed (LocationGPSDevice *device, gpointer data)
           g_fprintf(fp, "<time>%s</time>\n", st);
         }
       }
+      if(fp) {
+        if(device->fix->mode == LOCATION_GPS_DEVICE_MODE_2D)
+          g_fprintf(fp, "<fix>2d</fix>\n");
+        else if(device->fix->mode == LOCATION_GPS_DEVICE_MODE_3D)
+          g_fprintf(fp, "<fix>3d</fix>\n");
+        g_fprintf(fp, "<sat>%d</sat>\n", device->satellites_in_use);
+      }
 
       if (device->fix->fields & LOCATION_GPS_DEVICE_ALTITUDE_SET) {
         //g_print ("alt = %f\n", device->fix->altitude);
@@ -178,8 +185,12 @@ on_gps_device_changed (LocationGPSDevice *device, gpointer data)
       //    device->fix->epd,
       //    device->fix->eps,
       //    device->fix->epc);
-      if(fp)
+      if(fp) {
+        g_fprintf(fp, "<hdop>%s</hdop>\n<vdop>%s</vdop>\n",
+            g_ascii_formatd(sbuf1, sizeof(sbuf1), "%.1f", device->fix->eph / 100.0),
+            g_ascii_formatd(sbuf2, sizeof(sbuf2), "%.1f", device->fix->epv));
         g_fprintf(fp, "</trkpt>\n");
+      }
     }
   }