Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
NavSatFix.h
00001 #ifndef _ROS_sensor_msgs_NavSatFix_h 00002 #define _ROS_sensor_msgs_NavSatFix_h 00003 00004 #include <stdint.h> 00005 #include <string.h> 00006 #include <stdlib.h> 00007 #include "ros/msg.h" 00008 #include "std_msgs/Header.h" 00009 #include "sensor_msgs/NavSatStatus.h" 00010 00011 namespace sensor_msgs 00012 { 00013 00014 class NavSatFix : public ros::Msg 00015 { 00016 public: 00017 typedef std_msgs::Header _header_type; 00018 _header_type header; 00019 typedef sensor_msgs::NavSatStatus _status_type; 00020 _status_type status; 00021 typedef double _latitude_type; 00022 _latitude_type latitude; 00023 typedef double _longitude_type; 00024 _longitude_type longitude; 00025 typedef double _altitude_type; 00026 _altitude_type altitude; 00027 double position_covariance[9]; 00028 typedef uint8_t _position_covariance_type_type; 00029 _position_covariance_type_type position_covariance_type; 00030 enum { COVARIANCE_TYPE_UNKNOWN = 0 }; 00031 enum { COVARIANCE_TYPE_APPROXIMATED = 1 }; 00032 enum { COVARIANCE_TYPE_DIAGONAL_KNOWN = 2 }; 00033 enum { COVARIANCE_TYPE_KNOWN = 3 }; 00034 00035 NavSatFix(): 00036 header(), 00037 status(), 00038 latitude(0), 00039 longitude(0), 00040 altitude(0), 00041 position_covariance(), 00042 position_covariance_type(0) 00043 { 00044 } 00045 00046 virtual int serialize(unsigned char *outbuffer) const 00047 { 00048 int offset = 0; 00049 offset += this->header.serialize(outbuffer + offset); 00050 offset += this->status.serialize(outbuffer + offset); 00051 union { 00052 double real; 00053 uint64_t base; 00054 } u_latitude; 00055 u_latitude.real = this->latitude; 00056 *(outbuffer + offset + 0) = (u_latitude.base >> (8 * 0)) & 0xFF; 00057 *(outbuffer + offset + 1) = (u_latitude.base >> (8 * 1)) & 0xFF; 00058 *(outbuffer + offset + 2) = (u_latitude.base >> (8 * 2)) & 0xFF; 00059 *(outbuffer + offset + 3) = (u_latitude.base >> (8 * 3)) & 0xFF; 00060 *(outbuffer + offset + 4) = (u_latitude.base >> (8 * 4)) & 0xFF; 00061 *(outbuffer + offset + 5) = (u_latitude.base >> (8 * 5)) & 0xFF; 00062 *(outbuffer + offset + 6) = (u_latitude.base >> (8 * 6)) & 0xFF; 00063 *(outbuffer + offset + 7) = (u_latitude.base >> (8 * 7)) & 0xFF; 00064 offset += sizeof(this->latitude); 00065 union { 00066 double real; 00067 uint64_t base; 00068 } u_longitude; 00069 u_longitude.real = this->longitude; 00070 *(outbuffer + offset + 0) = (u_longitude.base >> (8 * 0)) & 0xFF; 00071 *(outbuffer + offset + 1) = (u_longitude.base >> (8 * 1)) & 0xFF; 00072 *(outbuffer + offset + 2) = (u_longitude.base >> (8 * 2)) & 0xFF; 00073 *(outbuffer + offset + 3) = (u_longitude.base >> (8 * 3)) & 0xFF; 00074 *(outbuffer + offset + 4) = (u_longitude.base >> (8 * 4)) & 0xFF; 00075 *(outbuffer + offset + 5) = (u_longitude.base >> (8 * 5)) & 0xFF; 00076 *(outbuffer + offset + 6) = (u_longitude.base >> (8 * 6)) & 0xFF; 00077 *(outbuffer + offset + 7) = (u_longitude.base >> (8 * 7)) & 0xFF; 00078 offset += sizeof(this->longitude); 00079 union { 00080 double real; 00081 uint64_t base; 00082 } u_altitude; 00083 u_altitude.real = this->altitude; 00084 *(outbuffer + offset + 0) = (u_altitude.base >> (8 * 0)) & 0xFF; 00085 *(outbuffer + offset + 1) = (u_altitude.base >> (8 * 1)) & 0xFF; 00086 *(outbuffer + offset + 2) = (u_altitude.base >> (8 * 2)) & 0xFF; 00087 *(outbuffer + offset + 3) = (u_altitude.base >> (8 * 3)) & 0xFF; 00088 *(outbuffer + offset + 4) = (u_altitude.base >> (8 * 4)) & 0xFF; 00089 *(outbuffer + offset + 5) = (u_altitude.base >> (8 * 5)) & 0xFF; 00090 *(outbuffer + offset + 6) = (u_altitude.base >> (8 * 6)) & 0xFF; 00091 *(outbuffer + offset + 7) = (u_altitude.base >> (8 * 7)) & 0xFF; 00092 offset += sizeof(this->altitude); 00093 for( uint32_t i = 0; i < 9; i++){ 00094 union { 00095 double real; 00096 uint64_t base; 00097 } u_position_covariancei; 00098 u_position_covariancei.real = this->position_covariance[i]; 00099 *(outbuffer + offset + 0) = (u_position_covariancei.base >> (8 * 0)) & 0xFF; 00100 *(outbuffer + offset + 1) = (u_position_covariancei.base >> (8 * 1)) & 0xFF; 00101 *(outbuffer + offset + 2) = (u_position_covariancei.base >> (8 * 2)) & 0xFF; 00102 *(outbuffer + offset + 3) = (u_position_covariancei.base >> (8 * 3)) & 0xFF; 00103 *(outbuffer + offset + 4) = (u_position_covariancei.base >> (8 * 4)) & 0xFF; 00104 *(outbuffer + offset + 5) = (u_position_covariancei.base >> (8 * 5)) & 0xFF; 00105 *(outbuffer + offset + 6) = (u_position_covariancei.base >> (8 * 6)) & 0xFF; 00106 *(outbuffer + offset + 7) = (u_position_covariancei.base >> (8 * 7)) & 0xFF; 00107 offset += sizeof(this->position_covariance[i]); 00108 } 00109 *(outbuffer + offset + 0) = (this->position_covariance_type >> (8 * 0)) & 0xFF; 00110 offset += sizeof(this->position_covariance_type); 00111 return offset; 00112 } 00113 00114 virtual int deserialize(unsigned char *inbuffer) 00115 { 00116 int offset = 0; 00117 offset += this->header.deserialize(inbuffer + offset); 00118 offset += this->status.deserialize(inbuffer + offset); 00119 union { 00120 double real; 00121 uint64_t base; 00122 } u_latitude; 00123 u_latitude.base = 0; 00124 u_latitude.base |= ((uint64_t) (*(inbuffer + offset + 0))) << (8 * 0); 00125 u_latitude.base |= ((uint64_t) (*(inbuffer + offset + 1))) << (8 * 1); 00126 u_latitude.base |= ((uint64_t) (*(inbuffer + offset + 2))) << (8 * 2); 00127 u_latitude.base |= ((uint64_t) (*(inbuffer + offset + 3))) << (8 * 3); 00128 u_latitude.base |= ((uint64_t) (*(inbuffer + offset + 4))) << (8 * 4); 00129 u_latitude.base |= ((uint64_t) (*(inbuffer + offset + 5))) << (8 * 5); 00130 u_latitude.base |= ((uint64_t) (*(inbuffer + offset + 6))) << (8 * 6); 00131 u_latitude.base |= ((uint64_t) (*(inbuffer + offset + 7))) << (8 * 7); 00132 this->latitude = u_latitude.real; 00133 offset += sizeof(this->latitude); 00134 union { 00135 double real; 00136 uint64_t base; 00137 } u_longitude; 00138 u_longitude.base = 0; 00139 u_longitude.base |= ((uint64_t) (*(inbuffer + offset + 0))) << (8 * 0); 00140 u_longitude.base |= ((uint64_t) (*(inbuffer + offset + 1))) << (8 * 1); 00141 u_longitude.base |= ((uint64_t) (*(inbuffer + offset + 2))) << (8 * 2); 00142 u_longitude.base |= ((uint64_t) (*(inbuffer + offset + 3))) << (8 * 3); 00143 u_longitude.base |= ((uint64_t) (*(inbuffer + offset + 4))) << (8 * 4); 00144 u_longitude.base |= ((uint64_t) (*(inbuffer + offset + 5))) << (8 * 5); 00145 u_longitude.base |= ((uint64_t) (*(inbuffer + offset + 6))) << (8 * 6); 00146 u_longitude.base |= ((uint64_t) (*(inbuffer + offset + 7))) << (8 * 7); 00147 this->longitude = u_longitude.real; 00148 offset += sizeof(this->longitude); 00149 union { 00150 double real; 00151 uint64_t base; 00152 } u_altitude; 00153 u_altitude.base = 0; 00154 u_altitude.base |= ((uint64_t) (*(inbuffer + offset + 0))) << (8 * 0); 00155 u_altitude.base |= ((uint64_t) (*(inbuffer + offset + 1))) << (8 * 1); 00156 u_altitude.base |= ((uint64_t) (*(inbuffer + offset + 2))) << (8 * 2); 00157 u_altitude.base |= ((uint64_t) (*(inbuffer + offset + 3))) << (8 * 3); 00158 u_altitude.base |= ((uint64_t) (*(inbuffer + offset + 4))) << (8 * 4); 00159 u_altitude.base |= ((uint64_t) (*(inbuffer + offset + 5))) << (8 * 5); 00160 u_altitude.base |= ((uint64_t) (*(inbuffer + offset + 6))) << (8 * 6); 00161 u_altitude.base |= ((uint64_t) (*(inbuffer + offset + 7))) << (8 * 7); 00162 this->altitude = u_altitude.real; 00163 offset += sizeof(this->altitude); 00164 for( uint32_t i = 0; i < 9; i++){ 00165 union { 00166 double real; 00167 uint64_t base; 00168 } u_position_covariancei; 00169 u_position_covariancei.base = 0; 00170 u_position_covariancei.base |= ((uint64_t) (*(inbuffer + offset + 0))) << (8 * 0); 00171 u_position_covariancei.base |= ((uint64_t) (*(inbuffer + offset + 1))) << (8 * 1); 00172 u_position_covariancei.base |= ((uint64_t) (*(inbuffer + offset + 2))) << (8 * 2); 00173 u_position_covariancei.base |= ((uint64_t) (*(inbuffer + offset + 3))) << (8 * 3); 00174 u_position_covariancei.base |= ((uint64_t) (*(inbuffer + offset + 4))) << (8 * 4); 00175 u_position_covariancei.base |= ((uint64_t) (*(inbuffer + offset + 5))) << (8 * 5); 00176 u_position_covariancei.base |= ((uint64_t) (*(inbuffer + offset + 6))) << (8 * 6); 00177 u_position_covariancei.base |= ((uint64_t) (*(inbuffer + offset + 7))) << (8 * 7); 00178 this->position_covariance[i] = u_position_covariancei.real; 00179 offset += sizeof(this->position_covariance[i]); 00180 } 00181 this->position_covariance_type = ((uint8_t) (*(inbuffer + offset))); 00182 offset += sizeof(this->position_covariance_type); 00183 return offset; 00184 } 00185 00186 const char * getType(){ return "sensor_msgs/NavSatFix"; }; 00187 const char * getMD5(){ return "2d3a8cd499b9b4a0249fb98fd05cfa48"; }; 00188 00189 }; 00190 00191 } 00192 #endif
Generated on Wed Jul 13 2022 23:30:18 by
