A C++ and .NET library, GPS NMEA component decodes and reads standard GPS NMEA 183 sentences from the serial port, and calculates bearings and great circle distances. Runs as a background thread, it is suitable for C/C++,C++ Builder, and Visual Studio.
Additionally, the software runs as a background thread unattended, making it totally thread safe. It ensures that the most current GPS data is always available on demand and has support functions such as mgcGreatCircle. Furthermore, this program can read any GPS NMEA 183 sentence, extracting each field and can read and decode GPGGA, GPRMC, GPGLL, GPGSA, GPVTG, GPBOD, GPWPL, and GPGSV navigation sentences.
Other features of the MarshallSoft GPS Component C/C++ and .NET toolkit include the ability to graphically display latitude and longitude, convert units, and work with Bluetooth serial. The software also works with USB ports that have a "USB to Serial Port" converter cable, and can be used from GUI mode or console mode programs. It supports Windows 95/98/Me/NT/2000/2003/XP/Vista/7.
The MGC4C is implemented as a standard Windows DLL that can be used with all versions of Windows. Furthermore, it supports most Windows C/C++ compilers (Microsoft [all versions Visual C++, C++ .NET, C#.NET, and Visual Studio], Borland, Watcom, LCC-WIN32, C++ Builder, MinGW, etc.). The program can be called from any program that is capable of calling the Windows API, and MGC functions can be called directly from both ANSI C programs and from C++ programs.
This program comes with a license that can be used with all supported computer programming languages, and can be purchased with (or without) source code for the DLLs. The documentation is available online as well as in printable format, and the software comes with free technical support and updates for one year. Lastly, it offers royalty-free distribution with your compiled application. Evaluation versions are fully functional.
Version 2.2: Added support for 64-bits (Win64); Added $GPGSA sentence type; Fixed problem with leaking thread handle.