| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
| |
...renaming it and still supporting the old entry point.
Signed-off-by: Eric S. Raymond <esr@thyrsus.com>
|
| |
|
|
|
|
| |
they always have to be there when a device is active anyway.
|
|
|
|
|
| |
* gps_open() becomes reentrant, what gps_open_r() used to be.
* gps_poll() is removed in favor of gps_read().
|
|
|
|
|
|
|
|
|
| |
This is in order to accommodate devices that can do GLONASS; requires
a library-major-version bump.
Required a rebuild of two regression tests duee to the change in the
number of GSA fields dumped in pseudo-NMEA output. Other than that,
all regression tests pass.
|
|
|
|
|
|
| |
This is as per the roadmap. Clients can still use gps_poll().
All regression tests pass. Clients run correectly live.
|
| |
|
|
|
|
|
|
| |
In the next mahor API change the non-re-rentrant call will go away.
All regression tests passm, code splints clean.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Wire protocol and API minor versions get bumped. All changes are as
documented in AIVDM.txt, which now describes known message 6 and 8
subtypes.
Involved rebuilding a couple of AIS regression tests. All regression
tests pass.
Also includes various typo fixes for AIVDM.txt discovered by Baylink while
we were reviewing these changes.
|
|
|
|
|
|
|
| |
Strictly cosmetic, but I wouldn't have gotten to do it after
2.93 without breaking binary compatibility.
All regression tests pass.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The non-deprecated library entry points can only send 'W' and 'R",
so library users can only see the responses that can occur in a 'W'
stream (FIOXY). Thus, the code for the old single-shot responses
(ABCDEKMNPQSTUV) is dead and can be removed.
This change allows us to reclaim a client-side mask bit previously
used by the 'E' command.
Users were first warned against relying on these responses in 2005. Anybody
who had been using them since since was asking for trouble.
|
|
|
|
| |
All regression tests pass.
|
| |
|
|
|
|
|
| |
Not yet documented, but now we at least have a regression test.
All regression tests pass.
|
|
|
|
|
|
|
|
|
|
|
|
| |
It could never have worked right because there was no mask flag to tell a
caller that the compass data was valid. TNT has been broken for years;
why we never got any complaints about the Oceanserver is more of a mystery.
Since it was all broken anyway I renamed and cleaned up that substructure
in the union. Nothing fills in the "yaw" slots yet with anything but NaN,
but it's got pitch and roll, so...
All regression tests pass.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Large patch, no actual executable code changes except in three debug dumpers.
Breaks up the *_SET status macros so the client side continues to use them,
but the daemon uses a similarly-named set with an _IS suffix.
This frees up two mask bits in both sets - the client side no longer needs
to have REPORT_SET and CLEAR_SET bits, and the daemon side no longer needs
to have VERSION_SET and POLICY_SET.
The only actual code change is that the maskdump.c module, generated by
maskaudit.py, splits in half - one child now dumps client-side flags, the
other daemon-side flags. One other function call in a debug dumper in
libgps_core.c changes.
All regression tests pass.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
All regression tests pass.
Note from esr: this feature cannot be announced yert, as it requires
documentation in the INSTALL file.
1. What the target environments are (Linux? Windows? Both)
2. All build prerequisites (C++ compiler? Qt library? Other libraries?)
3. What the new files libQgpsmm_global.h and libQgpsmm.pro are for,
and how the are used.
We also need to know how to regression-test this code under Linux so
we can verify that it's not broken as the client library evolves.
Signed-off-by: Eric S. Raymond <esr@thyrsus.com>
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
Vincenty is much better behaved with small distances. This is a translation of
http://www.movable-type.co.uk/scripts/latlong-vincenty.html
While I'm here, put a couple of WGS84 constants into a header.
|
| |
|
|
|
|
| |
All regression tests pass,
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
ERR_SET is now gone entirely, so in the extremely unlikely even that
an app developer got caught by this (could never happen unless they
shipped a bad command via the deprecated gps_send() entry point) the
code will break noisily.
All regression tests pass.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
...of the C/C++ and Python APIs. When present, the previously unused second
argument is interpreted as a filename and the gemerted WATCH command
includes a corresponding DEVICE clause.
|
| |
|
|
|
|
|
|
| |
...in case we ever want to hang an opaque state structure off it.
Currently it's used only as a flag indicating whether user has seen
JSON yet. All regression tests pass.
|
|
|
|
| |
All regression tests pass.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix it by adding a json switch separate from watch enable. This
involved moving where fake NMEA is generated to a different place,
treating it as just another form of report generation rather than a
side effect of receiving a sentence. Also, some client-side code had
to be changed to use the json flag.
A side effect is that some binary-protocol devicers generate fake $GPGSA
sentences somewhat more often than they used to, and this meant rebuilding
four more regression tests.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
That is, if the CLIENTDEBUG_ENABLE feature switch is on. All
regression tests pass.
|
| |
|
|
|
|
|
| |
Ensure that when libgps updates any member of the union, the validity
flags for others are cleared.
|
| |
|
| |
|
|
|
|
|
|
|
| |
On NMEA devices, mode could sometimes be held across cycles when it
shouldn't have been. Fix this, simplifying how cycles are tracked in
the process. Some regression tests needed rebuilding. Code splints
clean.
|
|
|
|
|
|
|
|
| |
There was lots of duplicative setting of gpsdata.fix.time and
gpsdata.sentence_time. The latter is now gone. The only case the
sentence_time member was actually used for was timestamping skyviews;
a new gpsdata.skyview_time now handles that, and all drivers set it
properly.
|