Go to the documentation of this file.00001 #ifndef ros_std_msgs_Int32_h
00002 #define ros_std_msgs_Int32_h
00003
00004 #include <stdint.h>
00005 #include <string.h>
00006 #include <stdlib.h>
00007 #include "../ros/msg.h"
00008
00009 namespace std_msgs
00010 {
00011
00012 class Int32 : public ros::Msg
00013 {
00014 public:
00015 long data;
00016
00017 virtual int serialize(unsigned char *outbuffer)
00018 {
00019 int offset = 0;
00020 union {
00021 long real;
00022 unsigned long base;
00023 } u_data;
00024 u_data.real = this->data;
00025 *(outbuffer + offset + 0) = (u_data.base >> (8 * 0)) & 0xFF;
00026 *(outbuffer + offset + 1) = (u_data.base >> (8 * 1)) & 0xFF;
00027 *(outbuffer + offset + 2) = (u_data.base >> (8 * 2)) & 0xFF;
00028 *(outbuffer + offset + 3) = (u_data.base >> (8 * 3)) & 0xFF;
00029 offset += sizeof(this->data);
00030 return offset;
00031 }
00032
00033 virtual int deserialize(unsigned char *inbuffer)
00034 {
00035 int offset = 0;
00036 union {
00037 long real;
00038 unsigned long base;
00039 } u_data;
00040 u_data.base = 0;
00041 u_data.base |= ((typeof(u_data.base)) (*(inbuffer + offset + 0))) << (8 * 0);
00042 u_data.base |= ((typeof(u_data.base)) (*(inbuffer + offset + 1))) << (8 * 1);
00043 u_data.base |= ((typeof(u_data.base)) (*(inbuffer + offset + 2))) << (8 * 2);
00044 u_data.base |= ((typeof(u_data.base)) (*(inbuffer + offset + 3))) << (8 * 3);
00045 this->data = u_data.real;
00046 offset += sizeof(this->data);
00047 return offset;
00048 }
00049
00050 const char * getType(){ return "std_msgs/Int32"; };
00051
00052 };
00053
00054 }
00055 #endif