Guido Ottaviani / Mbed 2 deprecated LeonardoMbos

Dependencies:   mbos Watchdog TextLCD mbed ConfigFile

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers parser.h Source File

parser.h

Go to the documentation of this file.
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: parser.h 4 2007-08-27 13:11:03Z xtimor $
00008  *
00009  */
00010 
00011 #ifndef __NMEA_PARSER_H__
00012 #define __NMEA_PARSER_H__
00013 
00014 #include "info.h "
00015 
00016 #ifdef  __cplusplus
00017 extern "C" {
00018 #endif
00019 
00020 /*
00021  * high level
00022  */
00023 
00024 typedef struct _nmeaPARSER
00025 {
00026     void *top_node;
00027     void *end_node;
00028     unsigned char *buffer;
00029     int buff_size;
00030     int buff_use;
00031 
00032 } nmeaPARSER;
00033 
00034 int     nmea_parser_init(nmeaPARSER *parser);
00035 void    nmea_parser_destroy(nmeaPARSER *parser);
00036 
00037 int     nmea_parse(
00038         nmeaPARSER *parser,
00039         const char *buff, int buff_sz,
00040         nmeaINFO *info
00041         );
00042 
00043 /*
00044  * low level
00045  */
00046 
00047 int     nmea_parser_push(nmeaPARSER *parser, const char *buff, int buff_sz);
00048 int     nmea_parser_top(nmeaPARSER *parser);
00049 int     nmea_parser_pop(nmeaPARSER *parser, void **pack_ptr);
00050 int     nmea_parser_peek(nmeaPARSER *parser, void **pack_ptr);
00051 int     nmea_parser_drop(nmeaPARSER *parser);
00052 int     nmea_parser_buff_clear(nmeaPARSER *parser);
00053 int     nmea_parser_queue_clear(nmeaPARSER *parser);
00054 
00055 #ifdef  __cplusplus
00056 }
00057 #endif
00058 
00059 #endif /* __NMEA_PARSER_H__ */