nmeaparser.h 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. /*
  2. * =====================================================================================
  3. *
  4. * Filename: nmeaparser.h
  5. *
  6. * Description: Nmea parser head file
  7. *
  8. * Version: 1.0
  9. * Created: 2018/8/15 17:42:54
  10. * Revision: none
  11. * Compiler: gcc
  12. *
  13. * Author: Jarod Lee
  14. * Organization:
  15. *
  16. * =====================================================================================
  17. */
  18. #ifndef __NMEA_PARSER_H
  19. #define __NMEA_PARSER_H
  20. #include "nmeardr.h"
  21. #include "nmeatknzr.h"
  22. #include "navdata.h"
  23. /*
  24. * Nmea's parser struct
  25. */
  26. struct nmea_parser {
  27. struct nmea_reader reader[1]; // read nmea data
  28. struct nmea_tokenizer tzer[1]; // split nmea tokens
  29. struct nav_data data[1]; // store navigation data
  30. void (*report_nav_status)(struct nav_data *navdata); // callback function to report navigtaion status
  31. };
  32. void nmea_parser_init(struct nmea_parser *p);
  33. void nmea_parser_putchar(struct nmea_parser *p, char c);
  34. #endif