From b33816fe2b9219d2a9cca80091b6264bf579275f Mon Sep 17 00:00:00 2001 From: "Gary E. Miller" Date: Fri, 26 Oct 2018 13:06:23 -0700 Subject: rawdata_t: rearrange structure again. No need for 140 copies of the identical mtime. --- driver_ubx.c | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) (limited to 'driver_ubx.c') diff --git a/driver_ubx.c b/driver_ubx.c index 0dccddff..b8c5481b 100644 --- a/driver_ubx.c +++ b/driver_ubx.c @@ -831,6 +831,13 @@ static gps_mask_t ubx_rxm_rawx(struct gps_device_t *session, "UBX_RXM_RAWX: rcvTow %f week %u leapS %d numMeas %u recStat %d\n", rcvTow, week, leapS, numMeas, recStat); + session->newdata.time = gpsd_gpstime_resolve(session, week, + rcvTow / 1000.0); + session->gpsdata.raw.mtime = session->newdata.time; + + /* this is so we can tell which never got set */ + for (i = 0; i < MAXCHANNELS; i++) + session->gpsdata.raw.meas[i].svid = 0; for (i = 0; i < numMeas; i++) { int off = 32 * i; /* psuedorange in meters */ @@ -863,16 +870,15 @@ static gps_mask_t ubx_rxm_rawx(struct gps_device_t *session, gnssId, svId, freqId, prMes, cpMes, doMes, locktime, cno, prStdev, cpStdev, doStdev, trkStat); - session->gpsdata.raw[i].gnssid = gnssId; - session->gpsdata.raw[i].svid = svId; - session->gpsdata.raw[i].snr = cno; - session->gpsdata.raw[i].satstat = trkStat; - session->gpsdata.raw[i].pseudorange = prMes; - session->gpsdata.raw[i].carrierphase = cpMes; - session->gpsdata.raw[i].doppler = doMes; - session->gpsdata.raw[i].mtime = 1; /* time? */ - session->gpsdata.raw[i].codephase = NAN; - session->gpsdata.raw[i].deltarange = NAN; + session->gpsdata.raw.meas[i].gnssid = gnssId; + session->gpsdata.raw.meas[i].svid = svId; + session->gpsdata.raw.meas[i].snr = cno; + session->gpsdata.raw.meas[i].satstat = trkStat; + session->gpsdata.raw.meas[i].pseudorange = prMes; + session->gpsdata.raw.meas[i].carrierphase = cpMes; + session->gpsdata.raw.meas[i].doppler = doMes; + session->gpsdata.raw.meas[i].codephase = NAN; + session->gpsdata.raw.meas[i].deltarange = NAN; } return RAW_IS; -- cgit v1.2.1