[Marble-devel] Review Request: FlightGear position provider without nmea library dependency

Ralf Habacker ralf.habacker at gmail.com
Sat May 12 09:51:25 UTC 2012


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/104922/#review13739
-----------------------------------------------------------



src/plugins/positionprovider/flightgear/FlightGearPositionProviderPlugin.cpp
<http://git.reviewboard.kde.org/r/104922/#comment10913>

    If the timestamp is not used (see below), you may remove this line as it fixes a not standard conform date format problem in the GPRMC sentences  



src/plugins/positionprovider/flightgear/FlightGearPositionProviderPlugin.cpp
<http://git.reviewboard.kde.org/r/104922/#comment10912>

    you do not convert the feet value into meters as done in line 146. 
    
    According to http://de.wikipedia.org/wiki/NMEA_0183#Global_Positioning_System_Fix_Data_.28GGA.29 the entry after the height values contains the height unit. fg provides 'F' for feets. 
    



src/plugins/positionprovider/flightgear/FlightGearPositionProviderPlugin.cpp
<http://git.reviewboard.kde.org/r/104922/#comment10914>

    here the timestamp from GPRMC record may be usable ? 


A different approach may be to include a copy of the nmea library source in the plugin dir or a 3rdparty dir located in marble's top level dir as qt does. The advantage is that you do not need to hack on the nmea protocol internals and in case the nmealib may be maintained and packaged in future, there is only minimal work required to switch to the external package. 

- Ralf Habacker


On May 12, 2012, 9:09 a.m., Dennis Nienhüser wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://git.reviewboard.kde.org/r/104922/
> -----------------------------------------------------------
> 
> (Updated May 12, 2012, 9:09 a.m.)
> 
> 
> Review request for Marble and Ralf Habacker.
> 
> 
> Description
> -------
> 
> I'd like to have Linux distributions ship Marble with the flightgear position provider plugin. Currently that's unlikely to happen as the major distributions do not package the nmea library used by the plugin. I looked into replacing the dependency with gpsd/libgps, but unfortunately the sparse set of methods libgps provides only allows to parse json data or handle the communication via a socket.
> 
> The nmea format is quite simple however and flightgear only uses a small subset of it -- two of the sentences used are relevant to us. Therefore it's not too complicated to write our own parser without an additional dependency.
> 
> 
> Diffs
> -----
> 
>   Findnmealib.cmake 7f14058 
>   src/plugins/positionprovider/CMakeLists.txt d3cfc3d 
>   src/plugins/positionprovider/flightgear/FlightGearPositionProviderPlugin.h c7c7dac 
>   src/plugins/positionprovider/flightgear/FlightGearPositionProviderPlugin.cpp af0eb9a 
> 
> Diff: http://git.reviewboard.kde.org/r/104922/diff/
> 
> 
> Testing
> -------
> 
> FlightGear version 2.4.0 on Linux, started with
> fgfs --nmea=socket,out,5,localhost,5500,udp
> 
> 
> Thanks,
> 
> Dennis Nienhüser
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/marble-devel/attachments/20120512/1a0e7bc1/attachment.html>


More information about the Marble-devel mailing list