c692a8618a0c0449bfcf1dec9d563b87357d00c1
[olsrd.git] / lib / pud / nmealib / include / nmea / context.h
1 /*
2  * This file is part of nmealib.
3  *
4  * Copyright (c) 2008 Timur Sinitsyn
5  * Copyright (c) 2011 Ferry Huberts
6  *
7  * This library is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU Lesser General Public
9  * License as published by the Free Software Foundation; either
10  * version 2.1 of the License, or (at your option) any later version.
11  *
12  * This library is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15  * Lesser General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with this program. If not, see <http://www.gnu.org/licenses/>.
19  */
20
21 #ifndef __NMEA_CONTEXT_H__
22 #define __NMEA_CONTEXT_H__
23
24 #define NMEA_DEF_PARSEBUFF  (1024)
25 #define NMEA_MIN_PARSEBUFF  (256)
26
27 #ifdef  __cplusplus
28 extern "C" {
29 #endif
30
31 typedef void (*nmeaTraceFunc)(const char *str, int str_size);
32 typedef void (*nmeaErrorFunc)(const char *str, int str_size);
33
34 typedef struct _nmeaPROPERTY {
35         nmeaTraceFunc trace_func;
36         nmeaErrorFunc error_func;
37         int parse_buff_size;
38
39 } nmeaPROPERTY;
40
41 nmeaPROPERTY * nmea_property(void);
42
43 void nmea_trace(const char *str, ...);
44 void nmea_trace_buff(const char *buff, int buff_size);
45 void nmea_error(const char *str, ...);
46
47 #ifdef  __cplusplus
48 }
49 #endif
50
51 #endif /* __NMEA_CONTEXT_H__ */