summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric S. Raymond <esr@thyrsus.com>2009-09-15 15:39:58 +0000
committerEric S. Raymond <esr@thyrsus.com>2009-09-15 15:39:58 +0000
commit44cb2f4ae38ea95477b0955e2e5535676243669a (patch)
tree6cde846d88b0856a594b079ab45024aa34e0b740
parent681b1f0e0dd22eb62ba1145ce7f68ee1706be19f (diff)
downloadgpsd-44cb2f4ae38ea95477b0955e2e5535676243669a.tar.gz
Using clear_dop() means we can get rid of instances of several different flags.
All regression tests pass.
-rw-r--r--driver_italk.c2
-rw-r--r--driver_nmea.c8
-rw-r--r--driver_oncore.c2
-rw-r--r--driver_superstar2.c3
-rw-r--r--driver_zodiac.c2
5 files changed, 6 insertions, 11 deletions
diff --git a/driver_italk.c b/driver_italk.c
index 169aeeee..ac8945f5 100644
--- a/driver_italk.c
+++ b/driver_italk.c
@@ -84,7 +84,7 @@ static gps_mask_t decode_itk_navfix(struct gps_device_t *session, unsigned char
session->gpsdata.dop.pdop = (double)(getleuw(buf, 7 + 60)/100.0);
session->gpsdata.dop.vdop = (double)(getleuw(buf, 7 + 62)/100.0);
session->gpsdata.dop.tdop = (double)(getleuw(buf, 7 + 64)/100.0);
- mask |= HDOP_SET | GDOP_SET | PDOP_SET | VDOP_SET | TDOP_SET;
+ mask |= DOP_SET;
}
if ((pflags & FIX_FLAG_MASK_INVALID) == 0 && (flags & FIXINFO_FLAG_VALID) != 0){
diff --git a/driver_nmea.c b/driver_nmea.c
index 49e7a62e..8d7b0c8d 100644
--- a/driver_nmea.c
+++ b/driver_nmea.c
@@ -404,13 +404,7 @@ static gps_mask_t processGPGSA(int count, char *field[], struct gps_device_t *se
if (prn > 0)
session->gpsdata.used[session->gpsdata.satellites_used++] = prn;
}
- mask |= USED_SET;
- if (strlen(field[count-3]) > 0)
- mask |= HDOP_SET;
- if (strlen(field[count-2]) > 0)
- mask |= VDOP_SET;
- if (strlen(field[count-1]) > 0)
- mask |= HDOP_SET;
+ mask |= DOP_SET | USED_SET;
return mask;
}
diff --git a/driver_oncore.c b/driver_oncore.c
index 038a3721..5bbfaaa6 100644
--- a/driver_oncore.c
+++ b/driver_oncore.c
@@ -147,7 +147,7 @@ oncore_msg_navsol(struct gps_device_t *session, unsigned char *buf, size_t data_
session->gpsdata.dop.hdop = GET_HDOP();
session->gpsdata.dop.vdop = GET_VDOP();
/* other DOP if available */
- mask |= HDOP_SET | VDOP_SET | USED_SET;
+ mask |= DOP_SET | USED_SET;
#endif
gpsd_zero_satellites(&session->gpsdata);
diff --git a/driver_superstar2.c b/driver_superstar2.c
index b09f3a94..9e11e801 100644
--- a/driver_superstar2.c
+++ b/driver_superstar2.c
@@ -197,10 +197,11 @@ superstar2_msg_navsol_ecef(struct gps_device_t *session,
mask |= LATLON_SET | ALTITUDE_SET | SPEED_SET | TRACK_SET | CLIMB_SET ;
session->gpsdata.satellites_used = (int)getub(buf, 79) & 0x0f;
+ clear_dop(&session->gpsdata.dop);
session->gpsdata.dop.hdop = getleuw(buf, 74) * 0.1;
session->gpsdata.dop.vdop = getleuw(buf, 76) * 0.1;
/* other DOP if available */
- mask |= HDOP_SET | VDOP_SET | USED_SET;
+ mask |= DOP_SET | USED_SET;
flags = getub(buf,70);
switch (flags & 0x1f) {
diff --git a/driver_zodiac.c b/driver_zodiac.c
index 8ff73b7f..bf18a565 100644
--- a/driver_zodiac.c
+++ b/driver_zodiac.c
@@ -303,7 +303,7 @@ static gps_mask_t handle1003(struct gps_device_t *session)
session->gpsdata.elevation[i] = 0;
}
}
- return SATELLITE_SET | HDOP_SET | VDOP_SET | PDOP_SET;
+ return SATELLITE_SET | DOP_SET;
}
static void handle1005(struct gps_device_t *session UNUSED)