Main MRPT website > C++ reference for MRPT 1.4.0
gnss_messages_topcon.h
Go to the documentation of this file.
1/* +---------------------------------------------------------------------------+
2 | Mobile Robot Programming Toolkit (MRPT) |
3 | http://www.mrpt.org/ |
4 | |
5 | Copyright (c) 2005-2016, Individual contributors, see AUTHORS file |
6 | See: http://www.mrpt.org/Authors - All rights reserved. |
7 | Released under BSD License. See details in http://www.mrpt.org/License |
8 +---------------------------------------------------------------------------+ */
9#pragma once
10
13
14namespace mrpt {
15namespace obs {
16namespace gnss {
17
18/** GPS datum for TopCon's mmGPS devices: PZS. \sa mrpt::obs::CObservationGPS */
20{
21 static const gnss_message_type_t msg_type = TOPCON_PZS; //!< Static msg type (member expected by templates)
22
23 double latitude_degrees; //!< The measured latitude, in degrees (North:+ , South:-)
24 double longitude_degrees; //!< The measured longitude, in degrees (East:+ , West:-)
25 double height_meters; //!< ellipsoidal height from N-beam [m] perhaps weighted with regular gps
26 double RTK_height_meters; //!< ellipsoidal height [m] without N-beam correction
27 float PSigma; //!< position SEP [m]
28 double angle_transmitter; //!< Vertical angle of N-beam
29 uint8_t nId; //!< ID of the transmitter [1-4], 0 if none.
30 uint8_t Fix; //!< 1: GPS, 2: mmGPS
31 uint8_t TXBattery; //!< battery level on transmitter
32 uint8_t RXBattery; //!< battery level on receiver
33 uint8_t error; //! system error indicator
34
36 double cartesian_x,cartesian_y,cartesian_z; //!< Only if hasCartesianPosVel is true
37 double cartesian_vx,cartesian_vy,cartesian_vz; //!< Only if hasCartesianPosVel is true
38
40 mrpt::math::CMatrixFloat44 pos_covariance; //!< Only if hasPosCov is true
41
43 mrpt::math::CMatrixFloat44 vel_covariance; //!< Only if hasPosCov is true
44
46 uint8_t stats_GPS_sats_used, stats_GLONASS_sats_used; //<! Only if hasStats is true
47 uint8_t stats_rtk_fix_progress; //!< [0,100] %, only in modes other than RTK FIXED.
48
50 /** Return the geodetic coords as a mrpt::topography::TGeodeticCoords structure (requires linking against mrpt-topography)
51 * Call as: getAsStruct<TGeodeticCoords>(); */
52 template <class TGEODETICCOORDS>
53 inline TGEODETICCOORDS getAsStruct() const {
54 return TGEODETICCOORDS(latitude_degrees,longitude_degrees,height_meters);
55 }
56 void dumpToStream( mrpt::utils::CStream &out ) const MRPT_OVERRIDE; // See docs in base
57protected:
60};
61
62/** TopCon mmGPS devices: SATS, a generic structure for statistics about tracked satelites and their positions. \sa mrpt::obs::CObservationGPS */
64{
65 static const gnss_message_type_t msg_type = TOPCON_SATS; //!< Static msg type (member expected by templates)
66
68
69 mrpt::vector_byte USIs; //!< The list of USI (Universal Sat ID) for the detected sats (See GRIL Manual, pag 4-31).
70 mrpt::vector_signed_byte ELs; //!< Elevation (in degrees, 0-90) for each satellite in USIs.
71 mrpt::vector_signed_word AZs; //!< Azimuth (in degrees, 0-360) for each satellite in USIs.
72
73 void dumpToStream( mrpt::utils::CStream &out ) const MRPT_OVERRIDE; // See docs in base
74protected:
77};
78
79} } } // End of namespaces
80
A numeric matrix of compile-time fixed size.
This base class is used to provide a unified interface to files,memory buffers,..Please see the deriv...
Definition: CStream.h:39
std::vector< int16_t > vector_signed_word
Definition: types_simple.h:22
std::vector< uint8_t > vector_byte
Definition: types_simple.h:26
std::vector< int8_t > vector_signed_byte
Definition: types_simple.h:21
#define MRPT_OVERRIDE
C++11 "override" for virtuals:
Definition: mrpt_macros.h:28
gnss_message_type_t
List of all known GNSS message types.
This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries.
unsigned char uint8_t
Definition: pstdint.h:143
GPS datum for TopCon's mmGPS devices: PZS.
double angle_transmitter
Vertical angle of N-beam.
void internal_writeToStream(mrpt::utils::CStream &out) const MRPT_OVERRIDE
Save to binary stream. Launches an exception upon error.
double longitude_degrees
The measured longitude, in degrees (East:+ , West:-)
uint8_t stats_rtk_fix_progress
[0,100] %, only in modes other than RTK FIXED.
mrpt::math::CMatrixFloat44 vel_covariance
Only if hasPosCov is true.
TGEODETICCOORDS getAsStruct() const
Return the geodetic coords as a mrpt::topography::TGeodeticCoords structure (requires linking against...
uint8_t TXBattery
battery level on transmitter
double height_meters
ellipsoidal height from N-beam [m] perhaps weighted with regular gps
mrpt::math::CMatrixFloat44 pos_covariance
Only if hasPosCov is true.
bool hasCartesianPosVel
system error indicator
void internal_readFromStream(mrpt::utils::CStream &in) MRPT_OVERRIDE
Save to binary stream. Launches an exception upon error.
double RTK_height_meters
ellipsoidal height [m] without N-beam correction
double latitude_degrees
The measured latitude, in degrees (North:+ , South:-)
uint8_t nId
ID of the transmitter [1-4], 0 if none.
void dumpToStream(mrpt::utils::CStream &out) const MRPT_OVERRIDE
Dumps the contents of the observation in a human-readable form to a given output stream.
uint8_t RXBattery
battery level on receiver
TopCon mmGPS devices: SATS, a generic structure for statistics about tracked satelites and their posi...
void dumpToStream(mrpt::utils::CStream &out) const MRPT_OVERRIDE
Dumps the contents of the observation in a human-readable form to a given output stream.
mrpt::vector_signed_word AZs
Azimuth (in degrees, 0-360) for each satellite in USIs.
mrpt::vector_signed_byte ELs
Elevation (in degrees, 0-90) for each satellite in USIs.
void internal_writeToStream(mrpt::utils::CStream &out) const MRPT_OVERRIDE
Save to binary stream. Launches an exception upon error.
mrpt::vector_byte USIs
The list of USI (Universal Sat ID) for the detected sats (See GRIL Manual, pag 4-31).
void internal_readFromStream(mrpt::utils::CStream &in) MRPT_OVERRIDE
Save to binary stream. Launches an exception upon error.
Pure virtual base for all message types.



Page generated by Doxygen 1.9.5 for MRPT 1.4.0 SVN: at Sun Nov 27 02:56:59 UTC 2022