Irfan Tito Kurniawan / ros_lib
Committer:
irfantitok
Date:
Wed Sep 02 13:51:31 2020 +0000
Revision:
0:8f3710bfd298
Resolved round not found

Who changed what in which revision?

UserRevisionLine numberNew contents of line
irfantitok 0:8f3710bfd298 1 #ifndef _ROS_SERVICE_CommandTOL_h
irfantitok 0:8f3710bfd298 2 #define _ROS_SERVICE_CommandTOL_h
irfantitok 0:8f3710bfd298 3 #include <stdint.h>
irfantitok 0:8f3710bfd298 4 #include <string.h>
irfantitok 0:8f3710bfd298 5 #include <stdlib.h>
irfantitok 0:8f3710bfd298 6 #include "ros/msg.h"
irfantitok 0:8f3710bfd298 7
irfantitok 0:8f3710bfd298 8 namespace mavros_msgs
irfantitok 0:8f3710bfd298 9 {
irfantitok 0:8f3710bfd298 10
irfantitok 0:8f3710bfd298 11 static const char COMMANDTOL[] = "mavros_msgs/CommandTOL";
irfantitok 0:8f3710bfd298 12
irfantitok 0:8f3710bfd298 13 class CommandTOLRequest : public ros::Msg
irfantitok 0:8f3710bfd298 14 {
irfantitok 0:8f3710bfd298 15 public:
irfantitok 0:8f3710bfd298 16 typedef float _min_pitch_type;
irfantitok 0:8f3710bfd298 17 _min_pitch_type min_pitch;
irfantitok 0:8f3710bfd298 18 typedef float _yaw_type;
irfantitok 0:8f3710bfd298 19 _yaw_type yaw;
irfantitok 0:8f3710bfd298 20 typedef float _latitude_type;
irfantitok 0:8f3710bfd298 21 _latitude_type latitude;
irfantitok 0:8f3710bfd298 22 typedef float _longitude_type;
irfantitok 0:8f3710bfd298 23 _longitude_type longitude;
irfantitok 0:8f3710bfd298 24 typedef float _altitude_type;
irfantitok 0:8f3710bfd298 25 _altitude_type altitude;
irfantitok 0:8f3710bfd298 26
irfantitok 0:8f3710bfd298 27 CommandTOLRequest():
irfantitok 0:8f3710bfd298 28 min_pitch(0),
irfantitok 0:8f3710bfd298 29 yaw(0),
irfantitok 0:8f3710bfd298 30 latitude(0),
irfantitok 0:8f3710bfd298 31 longitude(0),
irfantitok 0:8f3710bfd298 32 altitude(0)
irfantitok 0:8f3710bfd298 33 {
irfantitok 0:8f3710bfd298 34 }
irfantitok 0:8f3710bfd298 35
irfantitok 0:8f3710bfd298 36 virtual int serialize(unsigned char *outbuffer) const
irfantitok 0:8f3710bfd298 37 {
irfantitok 0:8f3710bfd298 38 int offset = 0;
irfantitok 0:8f3710bfd298 39 union {
irfantitok 0:8f3710bfd298 40 float real;
irfantitok 0:8f3710bfd298 41 uint32_t base;
irfantitok 0:8f3710bfd298 42 } u_min_pitch;
irfantitok 0:8f3710bfd298 43 u_min_pitch.real = this->min_pitch;
irfantitok 0:8f3710bfd298 44 *(outbuffer + offset + 0) = (u_min_pitch.base >> (8 * 0)) & 0xFF;
irfantitok 0:8f3710bfd298 45 *(outbuffer + offset + 1) = (u_min_pitch.base >> (8 * 1)) & 0xFF;
irfantitok 0:8f3710bfd298 46 *(outbuffer + offset + 2) = (u_min_pitch.base >> (8 * 2)) & 0xFF;
irfantitok 0:8f3710bfd298 47 *(outbuffer + offset + 3) = (u_min_pitch.base >> (8 * 3)) & 0xFF;
irfantitok 0:8f3710bfd298 48 offset += sizeof(this->min_pitch);
irfantitok 0:8f3710bfd298 49 union {
irfantitok 0:8f3710bfd298 50 float real;
irfantitok 0:8f3710bfd298 51 uint32_t base;
irfantitok 0:8f3710bfd298 52 } u_yaw;
irfantitok 0:8f3710bfd298 53 u_yaw.real = this->yaw;
irfantitok 0:8f3710bfd298 54 *(outbuffer + offset + 0) = (u_yaw.base >> (8 * 0)) & 0xFF;
irfantitok 0:8f3710bfd298 55 *(outbuffer + offset + 1) = (u_yaw.base >> (8 * 1)) & 0xFF;
irfantitok 0:8f3710bfd298 56 *(outbuffer + offset + 2) = (u_yaw.base >> (8 * 2)) & 0xFF;
irfantitok 0:8f3710bfd298 57 *(outbuffer + offset + 3) = (u_yaw.base >> (8 * 3)) & 0xFF;
irfantitok 0:8f3710bfd298 58 offset += sizeof(this->yaw);
irfantitok 0:8f3710bfd298 59 union {
irfantitok 0:8f3710bfd298 60 float real;
irfantitok 0:8f3710bfd298 61 uint32_t base;
irfantitok 0:8f3710bfd298 62 } u_latitude;
irfantitok 0:8f3710bfd298 63 u_latitude.real = this->latitude;
irfantitok 0:8f3710bfd298 64 *(outbuffer + offset + 0) = (u_latitude.base >> (8 * 0)) & 0xFF;
irfantitok 0:8f3710bfd298 65 *(outbuffer + offset + 1) = (u_latitude.base >> (8 * 1)) & 0xFF;
irfantitok 0:8f3710bfd298 66 *(outbuffer + offset + 2) = (u_latitude.base >> (8 * 2)) & 0xFF;
irfantitok 0:8f3710bfd298 67 *(outbuffer + offset + 3) = (u_latitude.base >> (8 * 3)) & 0xFF;
irfantitok 0:8f3710bfd298 68 offset += sizeof(this->latitude);
irfantitok 0:8f3710bfd298 69 union {
irfantitok 0:8f3710bfd298 70 float real;
irfantitok 0:8f3710bfd298 71 uint32_t base;
irfantitok 0:8f3710bfd298 72 } u_longitude;
irfantitok 0:8f3710bfd298 73 u_longitude.real = this->longitude;
irfantitok 0:8f3710bfd298 74 *(outbuffer + offset + 0) = (u_longitude.base >> (8 * 0)) & 0xFF;
irfantitok 0:8f3710bfd298 75 *(outbuffer + offset + 1) = (u_longitude.base >> (8 * 1)) & 0xFF;
irfantitok 0:8f3710bfd298 76 *(outbuffer + offset + 2) = (u_longitude.base >> (8 * 2)) & 0xFF;
irfantitok 0:8f3710bfd298 77 *(outbuffer + offset + 3) = (u_longitude.base >> (8 * 3)) & 0xFF;
irfantitok 0:8f3710bfd298 78 offset += sizeof(this->longitude);
irfantitok 0:8f3710bfd298 79 union {
irfantitok 0:8f3710bfd298 80 float real;
irfantitok 0:8f3710bfd298 81 uint32_t base;
irfantitok 0:8f3710bfd298 82 } u_altitude;
irfantitok 0:8f3710bfd298 83 u_altitude.real = this->altitude;
irfantitok 0:8f3710bfd298 84 *(outbuffer + offset + 0) = (u_altitude.base >> (8 * 0)) & 0xFF;
irfantitok 0:8f3710bfd298 85 *(outbuffer + offset + 1) = (u_altitude.base >> (8 * 1)) & 0xFF;
irfantitok 0:8f3710bfd298 86 *(outbuffer + offset + 2) = (u_altitude.base >> (8 * 2)) & 0xFF;
irfantitok 0:8f3710bfd298 87 *(outbuffer + offset + 3) = (u_altitude.base >> (8 * 3)) & 0xFF;
irfantitok 0:8f3710bfd298 88 offset += sizeof(this->altitude);
irfantitok 0:8f3710bfd298 89 return offset;
irfantitok 0:8f3710bfd298 90 }
irfantitok 0:8f3710bfd298 91
irfantitok 0:8f3710bfd298 92 virtual int deserialize(unsigned char *inbuffer)
irfantitok 0:8f3710bfd298 93 {
irfantitok 0:8f3710bfd298 94 int offset = 0;
irfantitok 0:8f3710bfd298 95 union {
irfantitok 0:8f3710bfd298 96 float real;
irfantitok 0:8f3710bfd298 97 uint32_t base;
irfantitok 0:8f3710bfd298 98 } u_min_pitch;
irfantitok 0:8f3710bfd298 99 u_min_pitch.base = 0;
irfantitok 0:8f3710bfd298 100 u_min_pitch.base |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
irfantitok 0:8f3710bfd298 101 u_min_pitch.base |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
irfantitok 0:8f3710bfd298 102 u_min_pitch.base |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
irfantitok 0:8f3710bfd298 103 u_min_pitch.base |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
irfantitok 0:8f3710bfd298 104 this->min_pitch = u_min_pitch.real;
irfantitok 0:8f3710bfd298 105 offset += sizeof(this->min_pitch);
irfantitok 0:8f3710bfd298 106 union {
irfantitok 0:8f3710bfd298 107 float real;
irfantitok 0:8f3710bfd298 108 uint32_t base;
irfantitok 0:8f3710bfd298 109 } u_yaw;
irfantitok 0:8f3710bfd298 110 u_yaw.base = 0;
irfantitok 0:8f3710bfd298 111 u_yaw.base |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
irfantitok 0:8f3710bfd298 112 u_yaw.base |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
irfantitok 0:8f3710bfd298 113 u_yaw.base |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
irfantitok 0:8f3710bfd298 114 u_yaw.base |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
irfantitok 0:8f3710bfd298 115 this->yaw = u_yaw.real;
irfantitok 0:8f3710bfd298 116 offset += sizeof(this->yaw);
irfantitok 0:8f3710bfd298 117 union {
irfantitok 0:8f3710bfd298 118 float real;
irfantitok 0:8f3710bfd298 119 uint32_t base;
irfantitok 0:8f3710bfd298 120 } u_latitude;
irfantitok 0:8f3710bfd298 121 u_latitude.base = 0;
irfantitok 0:8f3710bfd298 122 u_latitude.base |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
irfantitok 0:8f3710bfd298 123 u_latitude.base |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
irfantitok 0:8f3710bfd298 124 u_latitude.base |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
irfantitok 0:8f3710bfd298 125 u_latitude.base |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
irfantitok 0:8f3710bfd298 126 this->latitude = u_latitude.real;
irfantitok 0:8f3710bfd298 127 offset += sizeof(this->latitude);
irfantitok 0:8f3710bfd298 128 union {
irfantitok 0:8f3710bfd298 129 float real;
irfantitok 0:8f3710bfd298 130 uint32_t base;
irfantitok 0:8f3710bfd298 131 } u_longitude;
irfantitok 0:8f3710bfd298 132 u_longitude.base = 0;
irfantitok 0:8f3710bfd298 133 u_longitude.base |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
irfantitok 0:8f3710bfd298 134 u_longitude.base |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
irfantitok 0:8f3710bfd298 135 u_longitude.base |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
irfantitok 0:8f3710bfd298 136 u_longitude.base |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
irfantitok 0:8f3710bfd298 137 this->longitude = u_longitude.real;
irfantitok 0:8f3710bfd298 138 offset += sizeof(this->longitude);
irfantitok 0:8f3710bfd298 139 union {
irfantitok 0:8f3710bfd298 140 float real;
irfantitok 0:8f3710bfd298 141 uint32_t base;
irfantitok 0:8f3710bfd298 142 } u_altitude;
irfantitok 0:8f3710bfd298 143 u_altitude.base = 0;
irfantitok 0:8f3710bfd298 144 u_altitude.base |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
irfantitok 0:8f3710bfd298 145 u_altitude.base |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
irfantitok 0:8f3710bfd298 146 u_altitude.base |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
irfantitok 0:8f3710bfd298 147 u_altitude.base |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
irfantitok 0:8f3710bfd298 148 this->altitude = u_altitude.real;
irfantitok 0:8f3710bfd298 149 offset += sizeof(this->altitude);
irfantitok 0:8f3710bfd298 150 return offset;
irfantitok 0:8f3710bfd298 151 }
irfantitok 0:8f3710bfd298 152
irfantitok 0:8f3710bfd298 153 const char * getType(){ return COMMANDTOL; };
irfantitok 0:8f3710bfd298 154 const char * getMD5(){ return "5aec7e34bcfe9ec68949aebae7bcd1ec"; };
irfantitok 0:8f3710bfd298 155
irfantitok 0:8f3710bfd298 156 };
irfantitok 0:8f3710bfd298 157
irfantitok 0:8f3710bfd298 158 class CommandTOLResponse : public ros::Msg
irfantitok 0:8f3710bfd298 159 {
irfantitok 0:8f3710bfd298 160 public:
irfantitok 0:8f3710bfd298 161 typedef bool _success_type;
irfantitok 0:8f3710bfd298 162 _success_type success;
irfantitok 0:8f3710bfd298 163 typedef uint8_t _result_type;
irfantitok 0:8f3710bfd298 164 _result_type result;
irfantitok 0:8f3710bfd298 165
irfantitok 0:8f3710bfd298 166 CommandTOLResponse():
irfantitok 0:8f3710bfd298 167 success(0),
irfantitok 0:8f3710bfd298 168 result(0)
irfantitok 0:8f3710bfd298 169 {
irfantitok 0:8f3710bfd298 170 }
irfantitok 0:8f3710bfd298 171
irfantitok 0:8f3710bfd298 172 virtual int serialize(unsigned char *outbuffer) const
irfantitok 0:8f3710bfd298 173 {
irfantitok 0:8f3710bfd298 174 int offset = 0;
irfantitok 0:8f3710bfd298 175 union {
irfantitok 0:8f3710bfd298 176 bool real;
irfantitok 0:8f3710bfd298 177 uint8_t base;
irfantitok 0:8f3710bfd298 178 } u_success;
irfantitok 0:8f3710bfd298 179 u_success.real = this->success;
irfantitok 0:8f3710bfd298 180 *(outbuffer + offset + 0) = (u_success.base >> (8 * 0)) & 0xFF;
irfantitok 0:8f3710bfd298 181 offset += sizeof(this->success);
irfantitok 0:8f3710bfd298 182 *(outbuffer + offset + 0) = (this->result >> (8 * 0)) & 0xFF;
irfantitok 0:8f3710bfd298 183 offset += sizeof(this->result);
irfantitok 0:8f3710bfd298 184 return offset;
irfantitok 0:8f3710bfd298 185 }
irfantitok 0:8f3710bfd298 186
irfantitok 0:8f3710bfd298 187 virtual int deserialize(unsigned char *inbuffer)
irfantitok 0:8f3710bfd298 188 {
irfantitok 0:8f3710bfd298 189 int offset = 0;
irfantitok 0:8f3710bfd298 190 union {
irfantitok 0:8f3710bfd298 191 bool real;
irfantitok 0:8f3710bfd298 192 uint8_t base;
irfantitok 0:8f3710bfd298 193 } u_success;
irfantitok 0:8f3710bfd298 194 u_success.base = 0;
irfantitok 0:8f3710bfd298 195 u_success.base |= ((uint8_t) (*(inbuffer + offset + 0))) << (8 * 0);
irfantitok 0:8f3710bfd298 196 this->success = u_success.real;
irfantitok 0:8f3710bfd298 197 offset += sizeof(this->success);
irfantitok 0:8f3710bfd298 198 this->result = ((uint8_t) (*(inbuffer + offset)));
irfantitok 0:8f3710bfd298 199 offset += sizeof(this->result);
irfantitok 0:8f3710bfd298 200 return offset;
irfantitok 0:8f3710bfd298 201 }
irfantitok 0:8f3710bfd298 202
irfantitok 0:8f3710bfd298 203 const char * getType(){ return COMMANDTOL; };
irfantitok 0:8f3710bfd298 204 const char * getMD5(){ return "1cd894375e4e3d2861d2222772894fdb"; };
irfantitok 0:8f3710bfd298 205
irfantitok 0:8f3710bfd298 206 };
irfantitok 0:8f3710bfd298 207
irfantitok 0:8f3710bfd298 208 class CommandTOL {
irfantitok 0:8f3710bfd298 209 public:
irfantitok 0:8f3710bfd298 210 typedef CommandTOLRequest Request;
irfantitok 0:8f3710bfd298 211 typedef CommandTOLResponse Response;
irfantitok 0:8f3710bfd298 212 };
irfantitok 0:8f3710bfd298 213
irfantitok 0:8f3710bfd298 214 }
irfantitok 0:8f3710bfd298 215 #endif