diff --git a/flightdeck/sensgpsd.cc b/flightdeck/sensgpsd.cc index e430df8c..b6d3d6ef 100644 --- a/flightdeck/sensgpsd.cc +++ b/flightdeck/sensgpsd.cc @@ -114,16 +114,25 @@ bool Sensors::SensorGPSD::gps_poll(Glib::IOCondition iocond) void Sensors::SensorGPSD::update_gps(void) { +#if GPSD_API_MAJOR_VERSION >= 10 + if (true) + std::cerr << "GPS: set 0x" << std::hex << m_gpsdata.m_gpsdata.set << std::dec << " status " << m_gpsdata.m_gpsdata.fix.status + << " fixmode " << m_gpsdata.m_gpsdata.fix.mode << std::endl; +#else if (true) std::cerr << "GPS: set 0x" << std::hex << m_gpsdata.m_gpsdata.set << std::dec << " status " << m_gpsdata.m_gpsdata.status << " fixmode " << m_gpsdata.m_gpsdata.fix.mode << std::endl; +#endif m_conntimeout.disconnect(); m_conntimeout = Glib::signal_timeout().connect(sigc::mem_fun(*this, &SensorGPSD::gps_timeout), 5000); ParamChanged pc; if (m_gpsdata.m_gpsdata.set & MODE_SET) { fixtype_t oldfixtype(m_fixtype); - if ((m_gpsdata.m_gpsdata.set & STATUS_SET) && - m_gpsdata.m_gpsdata.status == STATUS_NO_FIX) { +#if GPSD_API_MAJOR_VERSION >= 10 + if ((m_gpsdata.m_gpsdata.set & STATUS_SET) && m_gpsdata.m_gpsdata.fix.status == STATUS_NO_FIX) { +#else + if ((m_gpsdata.m_gpsdata.set & STATUS_SET) && m_gpsdata.m_gpsdata.status == STATUS_NO_FIX) { +#endif m_fixtype = fixtype_nofix; } else { switch (m_gpsdata.m_gpsdata.fix.mode) { diff --git a/src/Navigate.cc b/src/Navigate.cc index bd1cead6..3c7e321e 100644 --- a/src/Navigate.cc +++ b/src/Navigate.cc @@ -1063,7 +1063,11 @@ bool Navigate::GPSCommGPSD::gps_poll(Glib::IOCondition iocond) #else ::gps_poll(m_gpsdata); #endif +#if GPSD_API_MAJOR_VERSION >= 10 + std::cerr << "status " << m_gpsdata.fix.status << " fixtype " << m_gpsdata.fix.mode << std::endl; +#else std::cerr << "status " << m_gpsdata.status << " fixtype " << m_gpsdata.fix.mode << std::endl; +#endif return true; } @@ -1096,7 +1096,11 @@ Navigate::GPSCommGPSD::fixtype_t Navigate::GPSCommGPSD::get_fixtype(void) const Navigate::GPSCommGPSD::fixstatus_t Navigate::GPSCommGPSD::get_fixstatus(void) const { +#if GPSD_API_MAJOR_VERSION >= 10 + switch (m_gpsdata.fix.status) { +#else switch (m_gpsdata.status) { +#endif default: case STATUS_NO_FIX: return fixstatus_nofix;