# `rtcm.c`

Functions:- | This is a decoder for the RTCM-104 serial protocol.
--- | ---
Notes based on code as of Mon Apr 5 21:38:06 2010 -0400.
`void rtcm2_unpack(struct rtcm2_t *tp, char *buf)` | Splits RTCM2 raw data into fields.
`bool rtcm2_repack(struct rtcm2_t *tp, isgps30bits_t *buf)` | Packs RTCM2 fields into a raw data stream.
`static bool preamble_match(isgps30bits_t *w)` | Tells if the preamble field in a message is valid or not.
`static bool length_check(struct gps_packet_t *lexer)` | Tells if the message length is valid or not.
`enum isgpsstat_t rtcm2_decode(struct gps_packet_t *lexer, unsigned int c)` | A simple call to `isgps_decode()`.
`void rtcm2_dump(struct rtcm2_t *rtcm2, char buf[], size_t buflen)` | Dump the contents of a parsed RTCM104v2 message.
`void rtcm2_output_magnavox(isgps30bits_t *ip, FILE *fp)` | Ship an RTCM2 message in the format emitted by Magnavox DGPS receivers.