|
QGIS API Documentation
master-59fd5e0
|
00001 /* 00002 * 00003 * NMEA library 00004 * URL: http://nmea.sourceforge.net 00005 * Author: Tim (xtimor@gmail.com) 00006 * Licence: http://www.gnu.org/licenses/lgpl.html 00007 * $Id: sentence.h 17 2008-03-11 11:56:11Z xtimor $ 00008 * 00009 */ 00010 00013 #ifndef __NMEA_SENTENCE_H__ 00014 #define __NMEA_SENTENCE_H__ 00015 00016 #include "info.h" 00017 00018 #ifdef __cplusplus 00019 extern "C" 00020 { 00021 #endif 00022 00026 enum nmeaPACKTYPE 00027 { 00028 GPNON = 0x0000, 00029 GPGGA = 0x0001, 00030 GPGSA = 0x0002, 00031 GPGSV = 0x0004, 00032 GPRMC = 0x0008, 00033 GPVTG = 0x0010 00034 }; 00035 00039 typedef struct _nmeaGPGGA 00040 { 00041 nmeaTIME utc; 00042 double lat; 00043 char ns; 00044 double lon; 00045 char ew; 00046 int sig; 00047 int satinuse; 00048 double HDOP; 00049 double elv; 00050 char elv_units; 00051 double diff; 00052 char diff_units; 00053 double dgps_age; 00054 int dgps_sid; 00056 } nmeaGPGGA; 00057 00061 typedef struct _nmeaGPGSA 00062 { 00063 char fix_mode; 00064 int fix_type; 00065 int sat_prn[NMEA_MAXSAT]; 00066 double PDOP; 00067 double HDOP; 00068 double VDOP; 00070 } nmeaGPGSA; 00071 00075 typedef struct _nmeaGPGSV 00076 { 00077 int pack_count; 00078 int pack_index; 00079 int sat_count; 00080 nmeaSATELLITE sat_data[NMEA_SATINPACK]; 00081 00082 } nmeaGPGSV; 00083 00087 typedef struct _nmeaGPRMC 00088 { 00089 nmeaTIME utc; 00090 char status; 00091 double lat; 00092 char ns; 00093 double lon; 00094 char ew; 00095 double speed; 00096 double direction; 00097 double declination; 00098 char declin_ew; 00099 char mode; 00101 } nmeaGPRMC; 00102 00106 typedef struct _nmeaGPVTG 00107 { 00108 double dir; 00109 char dir_t; 00110 double dec; 00111 char dec_m; 00112 double spn; 00113 char spn_n; 00114 double spk; 00115 char spk_k; 00117 } nmeaGPVTG; 00118 00119 void nmea_zero_GPGGA( nmeaGPGGA *pack ); 00120 void nmea_zero_GPGSA( nmeaGPGSA *pack ); 00121 void nmea_zero_GPGSV( nmeaGPGSV *pack ); 00122 void nmea_zero_GPRMC( nmeaGPRMC *pack ); 00123 void nmea_zero_GPVTG( nmeaGPVTG *pack ); 00124 00125 #ifdef __cplusplus 00126 } 00127 #endif 00128 00129 #endif /* __NMEA_SENTENCE_H__ */