SetLinkProperties.h
Go to the documentation of this file.
00001 #ifndef _ROS_SERVICE_SetLinkProperties_h
00002 #define _ROS_SERVICE_SetLinkProperties_h
00003 #include <stdint.h>
00004 #include <string.h>
00005 #include <stdlib.h>
00006 #include "ros/msg.h"
00007 #include "geometry_msgs/Pose.h"
00008 
00009 namespace gazebo_msgs
00010 {
00011 
00012 static const char SETLINKPROPERTIES[] = "gazebo_msgs/SetLinkProperties";
00013 
00014   class SetLinkPropertiesRequest : public ros::Msg
00015   {
00016     public:
00017       char * link_name;
00018       geometry_msgs::Pose com;
00019       bool gravity_mode;
00020       float mass;
00021       float ixx;
00022       float ixy;
00023       float ixz;
00024       float iyy;
00025       float iyz;
00026       float izz;
00027 
00028     virtual int serialize(unsigned char *outbuffer) const
00029     {
00030       int offset = 0;
00031       uint32_t length_link_name = strlen( (const char*) this->link_name);
00032       memcpy(outbuffer + offset, &length_link_name, sizeof(uint32_t));
00033       offset += 4;
00034       memcpy(outbuffer + offset, this->link_name, length_link_name);
00035       offset += length_link_name;
00036       offset += this->com.serialize(outbuffer + offset);
00037       union {
00038         bool real;
00039         uint8_t base;
00040       } u_gravity_mode;
00041       u_gravity_mode.real = this->gravity_mode;
00042       *(outbuffer + offset + 0) = (u_gravity_mode.base >> (8 * 0)) & 0xFF;
00043       offset += sizeof(this->gravity_mode);
00044       int32_t * val_mass = (int32_t *) &(this->mass);
00045       int32_t exp_mass = (((*val_mass)>>23)&255);
00046       if(exp_mass != 0)
00047         exp_mass += 1023-127;
00048       int32_t sig_mass = *val_mass;
00049       *(outbuffer + offset++) = 0;
00050       *(outbuffer + offset++) = 0;
00051       *(outbuffer + offset++) = 0;
00052       *(outbuffer + offset++) = (sig_mass<<5) & 0xff;
00053       *(outbuffer + offset++) = (sig_mass>>3) & 0xff;
00054       *(outbuffer + offset++) = (sig_mass>>11) & 0xff;
00055       *(outbuffer + offset++) = ((exp_mass<<4) & 0xF0) | ((sig_mass>>19)&0x0F);
00056       *(outbuffer + offset++) = (exp_mass>>4) & 0x7F;
00057       if(this->mass < 0) *(outbuffer + offset -1) |= 0x80;
00058       int32_t * val_ixx = (int32_t *) &(this->ixx);
00059       int32_t exp_ixx = (((*val_ixx)>>23)&255);
00060       if(exp_ixx != 0)
00061         exp_ixx += 1023-127;
00062       int32_t sig_ixx = *val_ixx;
00063       *(outbuffer + offset++) = 0;
00064       *(outbuffer + offset++) = 0;
00065       *(outbuffer + offset++) = 0;
00066       *(outbuffer + offset++) = (sig_ixx<<5) & 0xff;
00067       *(outbuffer + offset++) = (sig_ixx>>3) & 0xff;
00068       *(outbuffer + offset++) = (sig_ixx>>11) & 0xff;
00069       *(outbuffer + offset++) = ((exp_ixx<<4) & 0xF0) | ((sig_ixx>>19)&0x0F);
00070       *(outbuffer + offset++) = (exp_ixx>>4) & 0x7F;
00071       if(this->ixx < 0) *(outbuffer + offset -1) |= 0x80;
00072       int32_t * val_ixy = (int32_t *) &(this->ixy);
00073       int32_t exp_ixy = (((*val_ixy)>>23)&255);
00074       if(exp_ixy != 0)
00075         exp_ixy += 1023-127;
00076       int32_t sig_ixy = *val_ixy;
00077       *(outbuffer + offset++) = 0;
00078       *(outbuffer + offset++) = 0;
00079       *(outbuffer + offset++) = 0;
00080       *(outbuffer + offset++) = (sig_ixy<<5) & 0xff;
00081       *(outbuffer + offset++) = (sig_ixy>>3) & 0xff;
00082       *(outbuffer + offset++) = (sig_ixy>>11) & 0xff;
00083       *(outbuffer + offset++) = ((exp_ixy<<4) & 0xF0) | ((sig_ixy>>19)&0x0F);
00084       *(outbuffer + offset++) = (exp_ixy>>4) & 0x7F;
00085       if(this->ixy < 0) *(outbuffer + offset -1) |= 0x80;
00086       int32_t * val_ixz = (int32_t *) &(this->ixz);
00087       int32_t exp_ixz = (((*val_ixz)>>23)&255);
00088       if(exp_ixz != 0)
00089         exp_ixz += 1023-127;
00090       int32_t sig_ixz = *val_ixz;
00091       *(outbuffer + offset++) = 0;
00092       *(outbuffer + offset++) = 0;
00093       *(outbuffer + offset++) = 0;
00094       *(outbuffer + offset++) = (sig_ixz<<5) & 0xff;
00095       *(outbuffer + offset++) = (sig_ixz>>3) & 0xff;
00096       *(outbuffer + offset++) = (sig_ixz>>11) & 0xff;
00097       *(outbuffer + offset++) = ((exp_ixz<<4) & 0xF0) | ((sig_ixz>>19)&0x0F);
00098       *(outbuffer + offset++) = (exp_ixz>>4) & 0x7F;
00099       if(this->ixz < 0) *(outbuffer + offset -1) |= 0x80;
00100       int32_t * val_iyy = (int32_t *) &(this->iyy);
00101       int32_t exp_iyy = (((*val_iyy)>>23)&255);
00102       if(exp_iyy != 0)
00103         exp_iyy += 1023-127;
00104       int32_t sig_iyy = *val_iyy;
00105       *(outbuffer + offset++) = 0;
00106       *(outbuffer + offset++) = 0;
00107       *(outbuffer + offset++) = 0;
00108       *(outbuffer + offset++) = (sig_iyy<<5) & 0xff;
00109       *(outbuffer + offset++) = (sig_iyy>>3) & 0xff;
00110       *(outbuffer + offset++) = (sig_iyy>>11) & 0xff;
00111       *(outbuffer + offset++) = ((exp_iyy<<4) & 0xF0) | ((sig_iyy>>19)&0x0F);
00112       *(outbuffer + offset++) = (exp_iyy>>4) & 0x7F;
00113       if(this->iyy < 0) *(outbuffer + offset -1) |= 0x80;
00114       int32_t * val_iyz = (int32_t *) &(this->iyz);
00115       int32_t exp_iyz = (((*val_iyz)>>23)&255);
00116       if(exp_iyz != 0)
00117         exp_iyz += 1023-127;
00118       int32_t sig_iyz = *val_iyz;
00119       *(outbuffer + offset++) = 0;
00120       *(outbuffer + offset++) = 0;
00121       *(outbuffer + offset++) = 0;
00122       *(outbuffer + offset++) = (sig_iyz<<5) & 0xff;
00123       *(outbuffer + offset++) = (sig_iyz>>3) & 0xff;
00124       *(outbuffer + offset++) = (sig_iyz>>11) & 0xff;
00125       *(outbuffer + offset++) = ((exp_iyz<<4) & 0xF0) | ((sig_iyz>>19)&0x0F);
00126       *(outbuffer + offset++) = (exp_iyz>>4) & 0x7F;
00127       if(this->iyz < 0) *(outbuffer + offset -1) |= 0x80;
00128       int32_t * val_izz = (int32_t *) &(this->izz);
00129       int32_t exp_izz = (((*val_izz)>>23)&255);
00130       if(exp_izz != 0)
00131         exp_izz += 1023-127;
00132       int32_t sig_izz = *val_izz;
00133       *(outbuffer + offset++) = 0;
00134       *(outbuffer + offset++) = 0;
00135       *(outbuffer + offset++) = 0;
00136       *(outbuffer + offset++) = (sig_izz<<5) & 0xff;
00137       *(outbuffer + offset++) = (sig_izz>>3) & 0xff;
00138       *(outbuffer + offset++) = (sig_izz>>11) & 0xff;
00139       *(outbuffer + offset++) = ((exp_izz<<4) & 0xF0) | ((sig_izz>>19)&0x0F);
00140       *(outbuffer + offset++) = (exp_izz>>4) & 0x7F;
00141       if(this->izz < 0) *(outbuffer + offset -1) |= 0x80;
00142       return offset;
00143     }
00144 
00145     virtual int deserialize(unsigned char *inbuffer)
00146     {
00147       int offset = 0;
00148       uint32_t length_link_name;
00149       memcpy(&length_link_name, (inbuffer + offset), sizeof(uint32_t));
00150       offset += 4;
00151       for(unsigned int k= offset; k< offset+length_link_name; ++k){
00152           inbuffer[k-1]=inbuffer[k];
00153       }
00154       inbuffer[offset+length_link_name-1]=0;
00155       this->link_name = (char *)(inbuffer + offset-1);
00156       offset += length_link_name;
00157       offset += this->com.deserialize(inbuffer + offset);
00158       union {
00159         bool real;
00160         uint8_t base;
00161       } u_gravity_mode;
00162       u_gravity_mode.base = 0;
00163       u_gravity_mode.base |= ((uint8_t) (*(inbuffer + offset + 0))) << (8 * 0);
00164       this->gravity_mode = u_gravity_mode.real;
00165       offset += sizeof(this->gravity_mode);
00166       uint32_t * val_mass = (uint32_t*) &(this->mass);
00167       offset += 3;
00168       *val_mass = ((uint32_t)(*(inbuffer + offset++))>>5 & 0x07);
00169       *val_mass |= ((uint32_t)(*(inbuffer + offset++)) & 0xff)<<3;
00170       *val_mass |= ((uint32_t)(*(inbuffer + offset++)) & 0xff)<<11;
00171       *val_mass |= ((uint32_t)(*(inbuffer + offset)) & 0x0f)<<19;
00172       uint32_t exp_mass = ((uint32_t)(*(inbuffer + offset++))&0xf0)>>4;
00173       exp_mass |= ((uint32_t)(*(inbuffer + offset)) & 0x7f)<<4;
00174       if(exp_mass !=0)
00175         *val_mass |= ((exp_mass)-1023+127)<<23;
00176       if( ((*(inbuffer+offset++)) & 0x80) > 0) this->mass = -this->mass;
00177       uint32_t * val_ixx = (uint32_t*) &(this->ixx);
00178       offset += 3;
00179       *val_ixx = ((uint32_t)(*(inbuffer + offset++))>>5 & 0x07);
00180       *val_ixx |= ((uint32_t)(*(inbuffer + offset++)) & 0xff)<<3;
00181       *val_ixx |= ((uint32_t)(*(inbuffer + offset++)) & 0xff)<<11;
00182       *val_ixx |= ((uint32_t)(*(inbuffer + offset)) & 0x0f)<<19;
00183       uint32_t exp_ixx = ((uint32_t)(*(inbuffer + offset++))&0xf0)>>4;
00184       exp_ixx |= ((uint32_t)(*(inbuffer + offset)) & 0x7f)<<4;
00185       if(exp_ixx !=0)
00186         *val_ixx |= ((exp_ixx)-1023+127)<<23;
00187       if( ((*(inbuffer+offset++)) & 0x80) > 0) this->ixx = -this->ixx;
00188       uint32_t * val_ixy = (uint32_t*) &(this->ixy);
00189       offset += 3;
00190       *val_ixy = ((uint32_t)(*(inbuffer + offset++))>>5 & 0x07);
00191       *val_ixy |= ((uint32_t)(*(inbuffer + offset++)) & 0xff)<<3;
00192       *val_ixy |= ((uint32_t)(*(inbuffer + offset++)) & 0xff)<<11;
00193       *val_ixy |= ((uint32_t)(*(inbuffer + offset)) & 0x0f)<<19;
00194       uint32_t exp_ixy = ((uint32_t)(*(inbuffer + offset++))&0xf0)>>4;
00195       exp_ixy |= ((uint32_t)(*(inbuffer + offset)) & 0x7f)<<4;
00196       if(exp_ixy !=0)
00197         *val_ixy |= ((exp_ixy)-1023+127)<<23;
00198       if( ((*(inbuffer+offset++)) & 0x80) > 0) this->ixy = -this->ixy;
00199       uint32_t * val_ixz = (uint32_t*) &(this->ixz);
00200       offset += 3;
00201       *val_ixz = ((uint32_t)(*(inbuffer + offset++))>>5 & 0x07);
00202       *val_ixz |= ((uint32_t)(*(inbuffer + offset++)) & 0xff)<<3;
00203       *val_ixz |= ((uint32_t)(*(inbuffer + offset++)) & 0xff)<<11;
00204       *val_ixz |= ((uint32_t)(*(inbuffer + offset)) & 0x0f)<<19;
00205       uint32_t exp_ixz = ((uint32_t)(*(inbuffer + offset++))&0xf0)>>4;
00206       exp_ixz |= ((uint32_t)(*(inbuffer + offset)) & 0x7f)<<4;
00207       if(exp_ixz !=0)
00208         *val_ixz |= ((exp_ixz)-1023+127)<<23;
00209       if( ((*(inbuffer+offset++)) & 0x80) > 0) this->ixz = -this->ixz;
00210       uint32_t * val_iyy = (uint32_t*) &(this->iyy);
00211       offset += 3;
00212       *val_iyy = ((uint32_t)(*(inbuffer + offset++))>>5 & 0x07);
00213       *val_iyy |= ((uint32_t)(*(inbuffer + offset++)) & 0xff)<<3;
00214       *val_iyy |= ((uint32_t)(*(inbuffer + offset++)) & 0xff)<<11;
00215       *val_iyy |= ((uint32_t)(*(inbuffer + offset)) & 0x0f)<<19;
00216       uint32_t exp_iyy = ((uint32_t)(*(inbuffer + offset++))&0xf0)>>4;
00217       exp_iyy |= ((uint32_t)(*(inbuffer + offset)) & 0x7f)<<4;
00218       if(exp_iyy !=0)
00219         *val_iyy |= ((exp_iyy)-1023+127)<<23;
00220       if( ((*(inbuffer+offset++)) & 0x80) > 0) this->iyy = -this->iyy;
00221       uint32_t * val_iyz = (uint32_t*) &(this->iyz);
00222       offset += 3;
00223       *val_iyz = ((uint32_t)(*(inbuffer + offset++))>>5 & 0x07);
00224       *val_iyz |= ((uint32_t)(*(inbuffer + offset++)) & 0xff)<<3;
00225       *val_iyz |= ((uint32_t)(*(inbuffer + offset++)) & 0xff)<<11;
00226       *val_iyz |= ((uint32_t)(*(inbuffer + offset)) & 0x0f)<<19;
00227       uint32_t exp_iyz = ((uint32_t)(*(inbuffer + offset++))&0xf0)>>4;
00228       exp_iyz |= ((uint32_t)(*(inbuffer + offset)) & 0x7f)<<4;
00229       if(exp_iyz !=0)
00230         *val_iyz |= ((exp_iyz)-1023+127)<<23;
00231       if( ((*(inbuffer+offset++)) & 0x80) > 0) this->iyz = -this->iyz;
00232       uint32_t * val_izz = (uint32_t*) &(this->izz);
00233       offset += 3;
00234       *val_izz = ((uint32_t)(*(inbuffer + offset++))>>5 & 0x07);
00235       *val_izz |= ((uint32_t)(*(inbuffer + offset++)) & 0xff)<<3;
00236       *val_izz |= ((uint32_t)(*(inbuffer + offset++)) & 0xff)<<11;
00237       *val_izz |= ((uint32_t)(*(inbuffer + offset)) & 0x0f)<<19;
00238       uint32_t exp_izz = ((uint32_t)(*(inbuffer + offset++))&0xf0)>>4;
00239       exp_izz |= ((uint32_t)(*(inbuffer + offset)) & 0x7f)<<4;
00240       if(exp_izz !=0)
00241         *val_izz |= ((exp_izz)-1023+127)<<23;
00242       if( ((*(inbuffer+offset++)) & 0x80) > 0) this->izz = -this->izz;
00243      return offset;
00244     }
00245 
00246     const char * getType(){ return SETLINKPROPERTIES; };
00247     const char * getMD5(){ return "68ac74a4be01b165bc305b5ccdc45e91"; };
00248 
00249   };
00250 
00251   class SetLinkPropertiesResponse : public ros::Msg
00252   {
00253     public:
00254       bool success;
00255       char * status_message;
00256 
00257     virtual int serialize(unsigned char *outbuffer) const
00258     {
00259       int offset = 0;
00260       union {
00261         bool real;
00262         uint8_t base;
00263       } u_success;
00264       u_success.real = this->success;
00265       *(outbuffer + offset + 0) = (u_success.base >> (8 * 0)) & 0xFF;
00266       offset += sizeof(this->success);
00267       uint32_t length_status_message = strlen( (const char*) this->status_message);
00268       memcpy(outbuffer + offset, &length_status_message, sizeof(uint32_t));
00269       offset += 4;
00270       memcpy(outbuffer + offset, this->status_message, length_status_message);
00271       offset += length_status_message;
00272       return offset;
00273     }
00274 
00275     virtual int deserialize(unsigned char *inbuffer)
00276     {
00277       int offset = 0;
00278       union {
00279         bool real;
00280         uint8_t base;
00281       } u_success;
00282       u_success.base = 0;
00283       u_success.base |= ((uint8_t) (*(inbuffer + offset + 0))) << (8 * 0);
00284       this->success = u_success.real;
00285       offset += sizeof(this->success);
00286       uint32_t length_status_message;
00287       memcpy(&length_status_message, (inbuffer + offset), sizeof(uint32_t));
00288       offset += 4;
00289       for(unsigned int k= offset; k< offset+length_status_message; ++k){
00290           inbuffer[k-1]=inbuffer[k];
00291       }
00292       inbuffer[offset+length_status_message-1]=0;
00293       this->status_message = (char *)(inbuffer + offset-1);
00294       offset += length_status_message;
00295      return offset;
00296     }
00297 
00298     const char * getType(){ return SETLINKPROPERTIES; };
00299     const char * getMD5(){ return "2ec6f3eff0161f4257b808b12bc830c2"; };
00300 
00301   };
00302 
00303   class SetLinkProperties {
00304     public:
00305     typedef SetLinkPropertiesRequest Request;
00306     typedef SetLinkPropertiesResponse Response;
00307   };
00308 
00309 }
00310 #endif


lizi_arduino
Author(s): RoboTiCan
autogenerated on Wed Aug 26 2015 12:24:22