X-Git-Url: http://git.maemo.org/git/?p=googlelatitude;a=blobdiff_plain;f=src%2Fgps.cpp;h=5c52eb96a1cc917d7b5b9fbb4f747399ce37e666;hp=a3264985feec01e2692b8917dfbf3cdd62732760;hb=68a393779a3cb7be3636dc3045eed820a82a4c8e;hpb=6b2767c11982f90df6d12657af252a4d35e11fd7 diff --git a/src/gps.cpp b/src/gps.cpp index a326498..5c52eb9 100644 --- a/src/gps.cpp +++ b/src/gps.cpp @@ -1,5 +1,7 @@ #include "gps.h" +#ifdef Q_WS_MAEMO_5 + GpsMaemo5::GpsMaemo5(QObject *parent) : QObject(parent) { latitude = 0; longitude = 0; @@ -33,22 +35,26 @@ void GpsMaemo5::restart() { } void GpsMaemo5_changed(LocationGPSDevice *device, GpsMaemo5 *gps) { - if (device->fix) { - if (device->fix->fields & LOCATION_GPS_DEVICE_LATLONG_SET) { - g_print("lat = %f, long = %f, eph = %f\n", device->fix->latitude, device->fix->longitude, device->fix->eph/100.); - gps->latitude = device->fix->latitude; - gps->longitude = device->fix->longitude; - gps->accuracy = device->fix->eph/100.; + if (gps->device->fix) { + if (gps->device->fix->fields) { + g_print("lat = %f, long = %f, eph = %f\n", gps->device->fix->latitude, gps->device->fix->longitude, gps->device->fix->eph/100.); + gps->latitude = gps->device->fix->latitude; + gps->longitude = gps->device->fix->longitude; + gps->accuracy = gps->device->fix->eph/100.; if ( gps->usegps == 0) { emit gps->getOK_acwp(); + // if ( gps->accuracy < 100*1000 ) gps->stop(); + if ( gps->accuracy < 640*1000 ) gps->stop(); } else if ( gps->usegps == 1 ) { - if ( gps->device->satellites_in_use > 0 ) { - emit gps->getOK_agnss(); - } + emit gps->getOK_agnss(); + // if ( device->satellites_in_use > 0 ) gps->stop(); + if ( gps->device->fix->mode == LOCATION_GPS_DEVICE_MODE_3D ) gps->stop(); } else { emit gps->getOK(); } } } } + +#endif