diff options
Diffstat (limited to 'www/protocol-transition.txt')
-rw-r--r-- | www/protocol-transition.txt | 25 |
1 files changed, 17 insertions, 8 deletions
diff --git a/www/protocol-transition.txt b/www/protocol-transition.txt index e3dd6cf8..4509ce13 100644 --- a/www/protocol-transition.txt +++ b/www/protocol-transition.txt @@ -71,11 +71,11 @@ There. You're probably done, unless you relied on some parts of struct gpsdata_t that application developers usually don't or issued unusual configuration commands. Here are the exceptions: -* You issued other gps_query() commands, such as "J=1". If so, - you'll need to learn how to say them in the new API (the J command - itself is dead, and you can just remove it entirely). That - is not difficult, and this document will cover what you - need to know. +* You issued other gps_query() or gps_send() commands, such as "J=1". + If so, you'll need to learn how to say them in the new API (the J + command itself is dead, and you can just remove it entirely). That + is not difficult, and this document will cover what you need to + know. * Your application code referenced struct gpsdata_t members that no longer exist. This will be obvious because your compilation will @@ -272,7 +272,16 @@ The old 'Z' and '$' commands, used by the developers for profiling, have equivalents, which are presently considered unstable and thus are undocumented. -== How the gps_data_t structure has changed == +== How the C API and gps_data_t structure has changed == + + +The gps_query() entry point is gone. With the new streaming-oriented +wire protocol, it is extremely unwise to assume that the first +transmission from the damon after a command is shipped to it will be +the reponse to command. If you must send explicit +commands to the daemon, use gps_send() and handle the response in +your main event-polling loop - but bewared, as using gps_send() +ties your code to the GPSD wirte protocol and is not recommended. The client libary's reporting structure, struct gpsdata_t, has a new substructure (struct devconfig_t) named "dev" that groups together @@ -301,9 +310,9 @@ pathnames is no longer dynamically allocated, but static; to save space, it lives in a union with several other substructures. The signature of the raw_hook member has changed. It no longer takes -the final 'leve' argument, which libgps had always set to 1. +the final 'level' argument, which libgps had always set to 1. == Python client library changes == There is a gps_stream() entry point like the one in the C library. -gps_query() is deprecated. +gps_query() is gone. |