18 Message_NMEA_GGA::content_t::content_t()
25 orthometric_altitude(),
26 corrected_orthometric_altitude(),
35 out.
printf(
"[NMEA GGA datum]\n");
37 " Longitude: %.09f deg Latitude: %.09f deg Height: %.03f m\n",
42 " Geoidal distance: %.03f m Orthometric alt.: %.03f m Corrected " 43 "ort. alt.: %.03f m\n",
61 out.
printf(
"(DGPS fix)\n");
67 out.
printf(
"(Real Time Kinematic/RTK Fixed)\n");
70 out.
printf(
"(Real Time Kinematic/RTK Float)\n");
73 out.
printf(
"(Dead Reckoning)\n");
79 out.
printf(
"(Simulation)\n");
82 out.
printf(
"(mmGPS + RTK Fixed)\n");
85 out.
printf(
"(mmGPS + RTK Float)\n");
88 out.
printf(
"(UNKNOWN!)\n");
92 out.
printf(
" HDOP (Horizontal Dilution of Precision): ");
101 o <<
"lon_deg lat_deg hgt_m undulation_m hour min sec num_sats fix_quality " 108 "%.09f %.09f %.04f %.04f %02u %02u %02.03f %2u %u %f",
118 : UTCTime(), latitude_degrees(0), longitude_degrees(0), validity_char(
'V')
124 out.
printf(
"[NMEA GLL datum]\n");
126 " Longitude: %.09f deg Latitude: %.09f deg Validity: '%c'\n",
136 o <<
"lon_deg lat_deg hour min sec validity";
151 : true_track(), magnetic_track(), ground_speed_knots(), ground_speed_kmh()
157 out.
printf(
"[NMEA VTG datum]\n");
159 " True track: %.03f deg Magnetic track: %.03f deg\n",
168 o <<
"true_track mag_track gnd_speed_knots gnd_speed_kmh";
184 longitude_degrees(0),
186 direction_degrees(0),
191 positioning_mode(
'N')
206 years_century = (dec_parts.
year / 100) * 100;
221 out.
printf(
"[NMEA RMC datum]\n");
230 " Longitude: %.09f deg Latitude: %.09f deg Valid?: '%c'\n",
242 o <<
"lon_deg lat_deg hour min sec speed_knots direction_deg year month " 249 "%.09f %.09f %02u %02u %02.03f %.05f %.03f %02u %02u %02u",
259 : UTCTime(), date_day(), date_month(), date_year()
265 out.
printf(
"[NMEA ZDA datum]\n");
276 o <<
"year month day hour minute second";
uint64_t TTimeStamp
A system independent time type, it holds the the number of 100-nanosecond intervals since January 1...
double longitude_degrees
The measured longitude, in degrees (East:+ , West:-)
void timestampToParts(TTimeStamp t, TTimeParts &p, bool localTime=false)
Gets the individual parts of a date/time (days, hours, minutes, seconds) - UTC time or local time...
uint8_t fix_quality
NMEA standard values: 0 = invalid, 1 = GPS fix (SPS), 2 = DGPS fix, 3 = PPS fix, 4 = Real Time Kinema...
content_t fields
Message content, accesible by individual fields.
bool getAllFieldValues(std::ostream &o) const override
Dumps a line with the sequence of all field values (without a line feed at the end).
double latitude_degrees
The measured latitude, in degrees (North:+ , South:-)
double longitude_degrees
The measured longitude, in degrees (East:+ , West:-)
unsigned __int16 uint16_t
mrpt::system::TTimeStamp getAsTimestamp(const mrpt::system::TTimeStamp &date) const
Build an MRPT timestamp with the hour/minute/sec of this structure and the date from the given timest...
bool getAllFieldValues(std::ostream &o) const override
Dumps a line with the sequence of all field values (without a line feed at the end).
std::string format(const char *fmt,...) MRPT_printf_format_check(1
A std::string version of C sprintf.
double latitude_degrees
The measured latitude, in degrees (North:+ , South:-)
This namespace provides a OS-independent interface to many useful functions: filenames manipulation...
content_t fields
Message content, accesible by individual fields.
mrpt::system::TTimeStamp buildTimestampFromParts(const mrpt::system::TTimeParts &p)
Builds a timestamp from the parts (Parts are in UTC)
uint32_t satellitesUsed
The number of satelites used to compute this estimation.
bool getAllFieldDescriptions(std::ostream &o) const override
Dumps a header for getAllFieldValues()
mrpt::system::TTimeStamp now()
A shortcut for system::getCurrentTime.
void dumpToStream(mrpt::utils::CStream &out) const override
Dumps the contents of the observation in a human-readable form to a given output stream.
content_t fields
Message content, accesible by individual fields.
UTC_time UTCTime
The GPS sensor measured timestamp (in UTC time)
int8_t validity_char
This will be: 'A'=OK or 'V'=void.
UTC_time UTCTime
The GPS sensor measured timestamp (in UTC time)
double orthometric_altitude
The measured orthometric altitude, in meters (A)+(B).
bool getAllFieldValues(std::ostream &o) const override
Dumps a line with the sequence of all field values (without a line feed at the end).
bool getAllFieldDescriptions(std::ostream &o) const override
Dumps a header for getAllFieldValues()
double altitude_meters
The measured altitude, in meters (A).
This base class is used to provide a unified interface to files,memory buffers,..Please see the deriv...
bool thereis_HDOP
This states whether to take into account the value in the HDOP field.
UTC_time UTCTime
The GPS sensor measured timestamp (in UTC time)
double corrected_orthometric_altitude
The corrected (only for TopCon mmGPS) orthometric altitude, in meters mmGPS(A+B). ...
void dumpToStream(mrpt::utils::CStream &out) const override
Dumps the contents of the observation in a human-readable form to a given output stream.
mrpt::system::TTimeStamp getDateAsTimestamp() const
Build an MRPT timestamp with the year/month/day of this observation.
bool getAllFieldDescriptions(std::ostream &o) const override
Dumps a header for getAllFieldValues()
The parts of a date/time (it's like the standard 'tm' but with fractions of seconds).
uint8_t date_day
Date: day (1-31), month (1-12), two-digits year (00-99)
content_t fields
Message content, accesible by individual fields.
float HDOP
The HDOP (Horizontal Dilution of Precision) as returned by the sensor.
void dumpToStream(mrpt::utils::CStream &out) const override
Dumps the contents of the observation in a human-readable form to a given output stream.
double longitude_degrees
The measured longitude, in degrees (East:+ , West:-)
bool getAllFieldValues(std::ostream &o) const override
Dumps a line with the sequence of all field values (without a line feed at the end).
void dumpToStream(mrpt::utils::CStream &out) const override
Dumps the contents of the observation in a human-readable form to a given output stream.
bool getAllFieldValues(std::ostream &o) const override
Dumps a line with the sequence of all field values (without a line feed at the end).
bool getAllFieldDescriptions(std::ostream &o) const override
Dumps a header for getAllFieldValues()
GNSS (GPS) data structures, mainly for use within mrpt::obs::CObservationGPS.
double second
Minute (0-59)
double geoidal_distance
Undulation: Difference between the measured altitude and the geoid, in meters (B).
double magnetic_dir
Magnetic variation direction (East:+, West:-)
mrpt::system::TTimeStamp getDateAsTimestamp() const
Build an MRPT timestamp with the year/month/day of this observation.
mrpt::system::TTimeStamp getDateTimeAsTimestamp() const
Build an MRPT UTC timestamp with the year/month/day + hour/minute/sec of this observation.
bool getAllFieldDescriptions(std::ostream &o) const override
Dumps a header for getAllFieldValues()
double speed_knots
Measured speed (in knots)
uint8_t minute
Hour (0-23)
double direction_degrees
Measured speed direction (in degrees)
char positioning_mode
'A': Autonomous, 'D': Differential, 'N': Not valid, 'E': Estimated, 'M': Manual
content_t fields
Message content, accesible by individual fields.
double latitude_degrees
The measured latitude, in degrees (North:+ , South:-)
int8_t validity_char
This will be: 'A'=OK or 'V'=void.
void dumpToStream(mrpt::utils::CStream &out) const override
Dumps the contents of the observation in a human-readable form to a given output stream.
double ground_speed_knots
uint16_t date_year
2000-...
double true_track
Degrees.
virtual int printf(const char *fmt,...) MRPT_printf_format_check(2
Writes a string to the stream in a textual form.
UTC_time UTCTime
The GPS sensor measured timestamp (in UTC time)