00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011 #ifndef GestionTramaH
00012 #define GestionTramaH
00013
00018 struct Trama
00019 {
00020 AnsiString Tipo;
00021 AnsiString dato;
00022 union
00023 {
00025 struct
00026 {
00027
00028 float latitud;
00029 float longitud;
00030 float altura;
00031 float desvLat;
00032 float desvLon;
00033 float desvAlt;
00034 int estado;
00035 float tiempo;
00036 float samples;
00037 } aveposa;
00039 struct
00040 {
00041 double lat;
00042 char lat_dir;
00043 double lon;
00044 char lon_dir;
00045 double hora;
00046 double alt;
00047 char alt_unidad;
00048 }gpggartk;
00050 struct
00051 {
00052 float lat;
00053 char lat_dir;
00054 float lon;
00055 char lon_dir;
00056 float hora;
00057 char estado;
00058 }gpgll;
00059
00061 struct
00062 {
00063 int n_msg;
00064 int id_msg;
00065 int n_sat;
00066 int id_sat[4];
00067 int elevacion[4];
00068 int acimut[4];
00069 int SNR[4];
00070 } gpgsv;
00071
00072
00074 struct
00075 {
00076 float hora;
00077 int dia;
00078 int mes;
00079 int anno;
00080 char *nulla;
00081 char *nullb;
00082 } gpzda;
00083
00085 struct
00086 {
00087 bool sat_vis;
00088 bool comp_alm;
00089 int n_sat;
00090 int health[12];
00091 int id_sat[12];
00092 int elevacion[12];
00093 int acimut[12];
00094 } satvisa;
00095 };
00096 };
00098 bool TramaGPZDA(Trama **tm,int lon,char *cad);
00100 bool TramaGPGGA(Trama **tm,int lon,char *cad);
00102 bool TramaGPGLL(Trama **tm,int lon,char *cad);
00104 bool TramaGPGSV(Trama **tm,int lon,char *cad);
00106 bool TramaSATVIS(Trama **tm,int lon,char *cad);
00108 void TramaAVEPOSA(Trama **tm,int lon,char *cad);
00110 int Rellenatrama(char *cadena,int lon,Trama *tm);
00111
00112
00113 #endif