QGroundControl
Ground Control Station for MAVLink Drones
Loading...
Searching...
No Matches
NMEASentence.cc File Reference
#include "NMEASentence.h"
#include <chrono>
#include <cmath>
#include <cstdint>
#include <limits>
#include "Checksums.h"
+ Include dependency graph for NMEASentence.cc:

Go to the source code of this file.

Namespaces

namespace  NMEA
 
namespace  NMEAUtils
 

Functions

unsigned char NMEA::checksum (std::string_view body)
 
std::optional< uint32_t > NMEA::hexNumber (std::string_view digits)
 The value of digits when every one is a hexadecimal digit, with no sign or prefix; nullopt otherwise.
 
size_t NMEA::splitFields (std::string_view text, std::span< std::string_view > fields)
 Preserve empty fields, including the final field. Return zero on storage overflow.
 
std::optional< Frame > NMEA::frame (std::string_view text)
 
bool NMEA::isStandardSentence (std::string_view text)
 A checked sentence from a standard talker, not a proprietary $P... sentence.
 
std::optional< Sentence > NMEA::sentence (std::string_view text)
 
double NMEA::degreesFromDegreesMinutes (double ddmm)
 Convert a signed ddmm.mmmm (or dddmm.mmmm) value; invalid values return NaN.
 
std::optional< double > NMEA::coordinate (std::string_view field, std::string_view hemisphere, bool latitude)
 
std::optional< GGA > NMEA::gga (const Sentence &input)
 Quality zero is a valid fix-loss observation with empty coordinates and optional hemisphere fields.
 
std::optional< int > NMEA::utcMilliseconds (std::string_view field)
 
std::optional< UtcDate > NMEA::rmcDate (std::string_view field)
 
std::optional< RMC > NMEA::rmc (const Sentence &input)
 
std::optional< GLL > NMEA::gll (const Sentence &input)
 
std::optional< VTG > NMEA::vtg (const Sentence &input)
 
std::optional< ZDA > NMEA::zda (const Sentence &input)
 
GPSFixQuality NMEA::fixQuality (unsigned quality, GPSFixQuality autonomous)
 Autonomous GGA does not distinguish 2D/3D; the caller supplies its independently resolved quality.
 
std::optional< NavigationStatus > NMEA::navigationStatus (const Sentence &input)
 
std::optional< GST > NMEA::gst (const Sentence &input)
 
QByteArray NMEAUtils::frame (QByteArrayView body)
 body as one "$<body>*hh\r\n" sentence, with uppercase checksum digits.
 
QByteArray NMEAUtils::repairChecksum (const QByteArray &sentence)
 Rebuild a valid frame with its checksum and CRLF; short or malformed bodies are only terminated.
 
QByteArray NMEAUtils::makeGGA (const NMEA::GGA &fix, const QTime &utc)