diff options
| author | ckgt <ckarlsson25@gmail.com> | 2015-03-28 19:08:43 -0400 |
|---|---|---|
| committer | ckgt <ckarlsson25@gmail.com> | 2015-03-28 19:08:43 -0400 |
| commit | 09a3c9c3485a023b5ae98652c46129941ca7fd41 (patch) | |
| tree | fb3b89f819d54d3efdef291079ddd061c40a4eb5 /include/nmeaparse/GPSService.h | |
| parent | 78627e9bc711b012d38855daeb004fe55b3d4d26 (diff) | |
Initial commit.
Diffstat (limited to 'include/nmeaparse/GPSService.h')
| -rw-r--r-- | include/nmeaparse/GPSService.h | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/include/nmeaparse/GPSService.h b/include/nmeaparse/GPSService.h new file mode 100644 index 0000000..4d10dbd --- /dev/null +++ b/include/nmeaparse/GPSService.h @@ -0,0 +1,45 @@ +/* + * GPSService.h + * + * Created on: Aug 14, 2014 + * Author: Cameron Karlsson + */ + +#ifndef GPSSERVICE_H_ +#define GPSSERVICE_H_ + +#include <string> +#include <chrono> +#include <functional> +#include <nmeaparse/GPSFix.h> +#include <nmeaparse/NMEAParser.h> +#include <nmeaparse/Event.h> + +namespace nmea { + +class GPSService { +private: + + void read_PSRF150(const NMEASentence& nmea); + void read_GPGGA (const NMEASentence& nmea); + void read_GPGSA (const NMEASentence& nmea); + void read_GPGSV (const NMEASentence& nmea); + void read_GPRMC (const NMEASentence& nmea); + void read_GPVTG (const NMEASentence& nmea); + +public: + GPSFix fix; + + GPSService(NMEAParser& parser); + virtual ~GPSService(); + + Event<void(bool)> onLockStateChanged; // user assignable handler, called whenever lock changes + Event<void()> onUpdate; // user assignable handler, called whenever fix changes + + void attachToParser(NMEAParser& parser); // will attach to this parser's nmea sentence events +}; + + +} + +#endif /* GPSSERVICE_H_ */ |
