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.
Dependencies: mbed
Action.h
00001 #ifndef _ROS_jsk_gui_msgs_Action_h 00002 #define _ROS_jsk_gui_msgs_Action_h 00003 00004 #include <stdint.h> 00005 #include <string.h> 00006 #include <stdlib.h> 00007 #include "ros/msg.h" 00008 00009 namespace jsk_gui_msgs 00010 { 00011 00012 class Action : public ros::Msg 00013 { 00014 public: 00015 typedef const char* _task_name_type; 00016 _task_name_type task_name; 00017 typedef int64_t _arm_id_type; 00018 _arm_id_type arm_id; 00019 typedef const char* _state_type; 00020 _state_type state; 00021 typedef double _state_value_type; 00022 _state_value_type state_value; 00023 typedef const char* _direction_type; 00024 _direction_type direction; 00025 typedef double _direction_value_type; 00026 _direction_value_type direction_value; 00027 typedef int64_t _touch_x_type; 00028 _touch_x_type touch_x; 00029 typedef int64_t _touch_y_type; 00030 _touch_y_type touch_y; 00031 enum { RARMID = 0 }; 00032 enum { LARMID = 1 }; 00033 00034 Action(): 00035 task_name(""), 00036 arm_id(0), 00037 state(""), 00038 state_value(0), 00039 direction(""), 00040 direction_value(0), 00041 touch_x(0), 00042 touch_y(0) 00043 { 00044 } 00045 00046 virtual int serialize(unsigned char *outbuffer) const 00047 { 00048 int offset = 0; 00049 uint32_t length_task_name = strlen(this->task_name); 00050 varToArr(outbuffer + offset, length_task_name); 00051 offset += 4; 00052 memcpy(outbuffer + offset, this->task_name, length_task_name); 00053 offset += length_task_name; 00054 union { 00055 int64_t real; 00056 uint64_t base; 00057 } u_arm_id; 00058 u_arm_id.real = this->arm_id; 00059 *(outbuffer + offset + 0) = (u_arm_id.base >> (8 * 0)) & 0xFF; 00060 *(outbuffer + offset + 1) = (u_arm_id.base >> (8 * 1)) & 0xFF; 00061 *(outbuffer + offset + 2) = (u_arm_id.base >> (8 * 2)) & 0xFF; 00062 *(outbuffer + offset + 3) = (u_arm_id.base >> (8 * 3)) & 0xFF; 00063 *(outbuffer + offset + 4) = (u_arm_id.base >> (8 * 4)) & 0xFF; 00064 *(outbuffer + offset + 5) = (u_arm_id.base >> (8 * 5)) & 0xFF; 00065 *(outbuffer + offset + 6) = (u_arm_id.base >> (8 * 6)) & 0xFF; 00066 *(outbuffer + offset + 7) = (u_arm_id.base >> (8 * 7)) & 0xFF; 00067 offset += sizeof(this->arm_id); 00068 uint32_t length_state = strlen(this->state); 00069 varToArr(outbuffer + offset, length_state); 00070 offset += 4; 00071 memcpy(outbuffer + offset, this->state, length_state); 00072 offset += length_state; 00073 union { 00074 double real; 00075 uint64_t base; 00076 } u_state_value; 00077 u_state_value.real = this->state_value; 00078 *(outbuffer + offset + 0) = (u_state_value.base >> (8 * 0)) & 0xFF; 00079 *(outbuffer + offset + 1) = (u_state_value.base >> (8 * 1)) & 0xFF; 00080 *(outbuffer + offset + 2) = (u_state_value.base >> (8 * 2)) & 0xFF; 00081 *(outbuffer + offset + 3) = (u_state_value.base >> (8 * 3)) & 0xFF; 00082 *(outbuffer + offset + 4) = (u_state_value.base >> (8 * 4)) & 0xFF; 00083 *(outbuffer + offset + 5) = (u_state_value.base >> (8 * 5)) & 0xFF; 00084 *(outbuffer + offset + 6) = (u_state_value.base >> (8 * 6)) & 0xFF; 00085 *(outbuffer + offset + 7) = (u_state_value.base >> (8 * 7)) & 0xFF; 00086 offset += sizeof(this->state_value); 00087 uint32_t length_direction = strlen(this->direction); 00088 varToArr(outbuffer + offset, length_direction); 00089 offset += 4; 00090 memcpy(outbuffer + offset, this->direction, length_direction); 00091 offset += length_direction; 00092 union { 00093 double real; 00094 uint64_t base; 00095 } u_direction_value; 00096 u_direction_value.real = this->direction_value; 00097 *(outbuffer + offset + 0) = (u_direction_value.base >> (8 * 0)) & 0xFF; 00098 *(outbuffer + offset + 1) = (u_direction_value.base >> (8 * 1)) & 0xFF; 00099 *(outbuffer + offset + 2) = (u_direction_value.base >> (8 * 2)) & 0xFF; 00100 *(outbuffer + offset + 3) = (u_direction_value.base >> (8 * 3)) & 0xFF; 00101 *(outbuffer + offset + 4) = (u_direction_value.base >> (8 * 4)) & 0xFF; 00102 *(outbuffer + offset + 5) = (u_direction_value.base >> (8 * 5)) & 0xFF; 00103 *(outbuffer + offset + 6) = (u_direction_value.base >> (8 * 6)) & 0xFF; 00104 *(outbuffer + offset + 7) = (u_direction_value.base >> (8 * 7)) & 0xFF; 00105 offset += sizeof(this->direction_value); 00106 union { 00107 int64_t real; 00108 uint64_t base; 00109 } u_touch_x; 00110 u_touch_x.real = this->touch_x; 00111 *(outbuffer + offset + 0) = (u_touch_x.base >> (8 * 0)) & 0xFF; 00112 *(outbuffer + offset + 1) = (u_touch_x.base >> (8 * 1)) & 0xFF; 00113 *(outbuffer + offset + 2) = (u_touch_x.base >> (8 * 2)) & 0xFF; 00114 *(outbuffer + offset + 3) = (u_touch_x.base >> (8 * 3)) & 0xFF; 00115 *(outbuffer + offset + 4) = (u_touch_x.base >> (8 * 4)) & 0xFF; 00116 *(outbuffer + offset + 5) = (u_touch_x.base >> (8 * 5)) & 0xFF; 00117 *(outbuffer + offset + 6) = (u_touch_x.base >> (8 * 6)) & 0xFF; 00118 *(outbuffer + offset + 7) = (u_touch_x.base >> (8 * 7)) & 0xFF; 00119 offset += sizeof(this->touch_x); 00120 union { 00121 int64_t real; 00122 uint64_t base; 00123 } u_touch_y; 00124 u_touch_y.real = this->touch_y; 00125 *(outbuffer + offset + 0) = (u_touch_y.base >> (8 * 0)) & 0xFF; 00126 *(outbuffer + offset + 1) = (u_touch_y.base >> (8 * 1)) & 0xFF; 00127 *(outbuffer + offset + 2) = (u_touch_y.base >> (8 * 2)) & 0xFF; 00128 *(outbuffer + offset + 3) = (u_touch_y.base >> (8 * 3)) & 0xFF; 00129 *(outbuffer + offset + 4) = (u_touch_y.base >> (8 * 4)) & 0xFF; 00130 *(outbuffer + offset + 5) = (u_touch_y.base >> (8 * 5)) & 0xFF; 00131 *(outbuffer + offset + 6) = (u_touch_y.base >> (8 * 6)) & 0xFF; 00132 *(outbuffer + offset + 7) = (u_touch_y.base >> (8 * 7)) & 0xFF; 00133 offset += sizeof(this->touch_y); 00134 return offset; 00135 } 00136 00137 virtual int deserialize(unsigned char *inbuffer) 00138 { 00139 int offset = 0; 00140 uint32_t length_task_name; 00141 arrToVar(length_task_name, (inbuffer + offset)); 00142 offset += 4; 00143 for(unsigned int k= offset; k< offset+length_task_name; ++k){ 00144 inbuffer[k-1]=inbuffer[k]; 00145 } 00146 inbuffer[offset+length_task_name-1]=0; 00147 this->task_name = (char *)(inbuffer + offset-1); 00148 offset += length_task_name; 00149 union { 00150 int64_t real; 00151 uint64_t base; 00152 } u_arm_id; 00153 u_arm_id.base = 0; 00154 u_arm_id.base |= ((uint64_t) (*(inbuffer + offset + 0))) << (8 * 0); 00155 u_arm_id.base |= ((uint64_t) (*(inbuffer + offset + 1))) << (8 * 1); 00156 u_arm_id.base |= ((uint64_t) (*(inbuffer + offset + 2))) << (8 * 2); 00157 u_arm_id.base |= ((uint64_t) (*(inbuffer + offset + 3))) << (8 * 3); 00158 u_arm_id.base |= ((uint64_t) (*(inbuffer + offset + 4))) << (8 * 4); 00159 u_arm_id.base |= ((uint64_t) (*(inbuffer + offset + 5))) << (8 * 5); 00160 u_arm_id.base |= ((uint64_t) (*(inbuffer + offset + 6))) << (8 * 6); 00161 u_arm_id.base |= ((uint64_t) (*(inbuffer + offset + 7))) << (8 * 7); 00162 this->arm_id = u_arm_id.real; 00163 offset += sizeof(this->arm_id); 00164 uint32_t length_state; 00165 arrToVar(length_state, (inbuffer + offset)); 00166 offset += 4; 00167 for(unsigned int k= offset; k< offset+length_state; ++k){ 00168 inbuffer[k-1]=inbuffer[k]; 00169 } 00170 inbuffer[offset+length_state-1]=0; 00171 this->state = (char *)(inbuffer + offset-1); 00172 offset += length_state; 00173 union { 00174 double real; 00175 uint64_t base; 00176 } u_state_value; 00177 u_state_value.base = 0; 00178 u_state_value.base |= ((uint64_t) (*(inbuffer + offset + 0))) << (8 * 0); 00179 u_state_value.base |= ((uint64_t) (*(inbuffer + offset + 1))) << (8 * 1); 00180 u_state_value.base |= ((uint64_t) (*(inbuffer + offset + 2))) << (8 * 2); 00181 u_state_value.base |= ((uint64_t) (*(inbuffer + offset + 3))) << (8 * 3); 00182 u_state_value.base |= ((uint64_t) (*(inbuffer + offset + 4))) << (8 * 4); 00183 u_state_value.base |= ((uint64_t) (*(inbuffer + offset + 5))) << (8 * 5); 00184 u_state_value.base |= ((uint64_t) (*(inbuffer + offset + 6))) << (8 * 6); 00185 u_state_value.base |= ((uint64_t) (*(inbuffer + offset + 7))) << (8 * 7); 00186 this->state_value = u_state_value.real; 00187 offset += sizeof(this->state_value); 00188 uint32_t length_direction; 00189 arrToVar(length_direction, (inbuffer + offset)); 00190 offset += 4; 00191 for(unsigned int k= offset; k< offset+length_direction; ++k){ 00192 inbuffer[k-1]=inbuffer[k]; 00193 } 00194 inbuffer[offset+length_direction-1]=0; 00195 this->direction = (char *)(inbuffer + offset-1); 00196 offset += length_direction; 00197 union { 00198 double real; 00199 uint64_t base; 00200 } u_direction_value; 00201 u_direction_value.base = 0; 00202 u_direction_value.base |= ((uint64_t) (*(inbuffer + offset + 0))) << (8 * 0); 00203 u_direction_value.base |= ((uint64_t) (*(inbuffer + offset + 1))) << (8 * 1); 00204 u_direction_value.base |= ((uint64_t) (*(inbuffer + offset + 2))) << (8 * 2); 00205 u_direction_value.base |= ((uint64_t) (*(inbuffer + offset + 3))) << (8 * 3); 00206 u_direction_value.base |= ((uint64_t) (*(inbuffer + offset + 4))) << (8 * 4); 00207 u_direction_value.base |= ((uint64_t) (*(inbuffer + offset + 5))) << (8 * 5); 00208 u_direction_value.base |= ((uint64_t) (*(inbuffer + offset + 6))) << (8 * 6); 00209 u_direction_value.base |= ((uint64_t) (*(inbuffer + offset + 7))) << (8 * 7); 00210 this->direction_value = u_direction_value.real; 00211 offset += sizeof(this->direction_value); 00212 union { 00213 int64_t real; 00214 uint64_t base; 00215 } u_touch_x; 00216 u_touch_x.base = 0; 00217 u_touch_x.base |= ((uint64_t) (*(inbuffer + offset + 0))) << (8 * 0); 00218 u_touch_x.base |= ((uint64_t) (*(inbuffer + offset + 1))) << (8 * 1); 00219 u_touch_x.base |= ((uint64_t) (*(inbuffer + offset + 2))) << (8 * 2); 00220 u_touch_x.base |= ((uint64_t) (*(inbuffer + offset + 3))) << (8 * 3); 00221 u_touch_x.base |= ((uint64_t) (*(inbuffer + offset + 4))) << (8 * 4); 00222 u_touch_x.base |= ((uint64_t) (*(inbuffer + offset + 5))) << (8 * 5); 00223 u_touch_x.base |= ((uint64_t) (*(inbuffer + offset + 6))) << (8 * 6); 00224 u_touch_x.base |= ((uint64_t) (*(inbuffer + offset + 7))) << (8 * 7); 00225 this->touch_x = u_touch_x.real; 00226 offset += sizeof(this->touch_x); 00227 union { 00228 int64_t real; 00229 uint64_t base; 00230 } u_touch_y; 00231 u_touch_y.base = 0; 00232 u_touch_y.base |= ((uint64_t) (*(inbuffer + offset + 0))) << (8 * 0); 00233 u_touch_y.base |= ((uint64_t) (*(inbuffer + offset + 1))) << (8 * 1); 00234 u_touch_y.base |= ((uint64_t) (*(inbuffer + offset + 2))) << (8 * 2); 00235 u_touch_y.base |= ((uint64_t) (*(inbuffer + offset + 3))) << (8 * 3); 00236 u_touch_y.base |= ((uint64_t) (*(inbuffer + offset + 4))) << (8 * 4); 00237 u_touch_y.base |= ((uint64_t) (*(inbuffer + offset + 5))) << (8 * 5); 00238 u_touch_y.base |= ((uint64_t) (*(inbuffer + offset + 6))) << (8 * 6); 00239 u_touch_y.base |= ((uint64_t) (*(inbuffer + offset + 7))) << (8 * 7); 00240 this->touch_y = u_touch_y.real; 00241 offset += sizeof(this->touch_y); 00242 return offset; 00243 } 00244 00245 virtual const char * getType(){ return "jsk_gui_msgs/Action"; }; 00246 virtual const char * getMD5(){ return "d81dc8475ff89ce7097d2e73ebfc2591"; }; 00247 00248 }; 00249 00250 } 00251 #endif
Generated on Mon Sep 26 2022 13:46:59 by
