cbc4d4db4b16675ec6100b98e66a4ca0ee9a1170
[olsrd.git] / lib / pud / nmealib / src / sentence.c
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 #include <nmea/sentence.h>
22
23 #include <string.h>
24
25 void nmea_zero_GPGGA(nmeaGPGGA *pack) {
26         memset(pack, 0, sizeof(nmeaGPGGA));
27         nmea_time_now(&pack->utc, &pack->present);
28         pack->ns = 'N';
29         pack->ew = 'E';
30         pack->elv_units = 'M';
31         pack->diff_units = 'M';
32 }
33
34 void nmea_zero_GPGSA(nmeaGPGSA *pack) {
35         memset(pack, 0, sizeof(nmeaGPGSA));
36         pack->fix_mode = 'A';
37         pack->fix_type = NMEA_FIX_BAD;
38 }
39
40 void nmea_zero_GPGSV(nmeaGPGSV *pack) {
41         memset(pack, 0, sizeof(nmeaGPGSV));
42 }
43
44 void nmea_zero_GPRMC(nmeaGPRMC *pack) {
45         memset(pack, 0, sizeof(nmeaGPRMC));
46         nmea_time_now(&pack->utc, &pack->present);
47         pack->status = 'V';
48         pack->ns = 'N';
49         pack->ew = 'E';
50         pack->magvar_ew = 'E';
51         pack->mode = 'N';
52 }
53
54 void nmea_zero_GPVTG(nmeaGPVTG *pack) {
55         memset(pack, 0, sizeof(nmeaGPVTG));
56         pack->track_t = 'T';
57         pack->mtrack_m = 'M';
58         pack->spn_n = 'N';
59         pack->spk_k = 'K';
60 }