2020-01-09 06:33:02 -07:00
|
|
|
#pragma once
|
2019-08-06 04:57:06 -06:00
|
|
|
#include <string>
|
|
|
|
#include <vector>
|
|
|
|
uint16_t calcUbxChecksum(uint8_t ubxClass, uint8_t ubxType, std::basic_string_view<uint8_t> str);
|
|
|
|
std::basic_string<uint8_t> buildUbxMessage(uint8_t ubxClass, uint8_t ubxType, std::basic_string_view<uint8_t> str);
|
|
|
|
|
|
|
|
std::basic_string<uint8_t> buildUbxMessage(uint8_t ubxClass, uint8_t ubxType, const std::initializer_list<uint8_t>& str);
|
2019-08-09 07:58:52 -06:00
|
|
|
|
2020-08-22 14:31:07 -06:00
|
|
|
std::basic_string<uint8_t> getInavFromSFRBXMsg(std::basic_string_view<uint8_t> msg,
|
|
|
|
std::basic_string<uint8_t>& reserved1,
|
|
|
|
std::basic_string<uint8_t>& reserved2,
|
|
|
|
std::basic_string<uint8_t>& sar,
|
|
|
|
std::basic_string<uint8_t>& spare,
|
|
|
|
std::basic_string<uint8_t>& crc);
|
|
|
|
|
2019-08-25 16:19:23 -06:00
|
|
|
std::basic_string<uint8_t> getGPSFromSFRBXMsg(std::basic_string_view<uint8_t> msg);
|
|
|
|
std::basic_string<uint8_t> getGlonassFromSFRBXMsg(std::basic_string_view<uint8_t> msg);
|
|
|
|
std::basic_string<uint8_t> getBeidouFromSFRBXMsg(std::basic_string_view<uint8_t> msg);
|
2019-11-03 23:52:01 -07:00
|
|
|
std::basic_string<uint8_t> getSBASFromSFRBXMsg(std::basic_string_view<uint8_t> msg);
|
2019-08-09 07:58:52 -06:00
|
|
|
struct CRCMismatch{};
|
2020-01-09 06:33:02 -07:00
|
|
|
|
|
|
|
struct TrkSatStat
|
|
|
|
{
|
|
|
|
int gnss;
|
|
|
|
int sv;
|
|
|
|
double dopplerHz;
|
|
|
|
uint64_t tr;
|
|
|
|
};
|
|
|
|
|
|
|
|
std::vector<TrkSatStat> parseTrkMeas(std::basic_string_view<uint8_t> payload);
|