Go to the documentation of this file.00001 #ifndef _ROS_SERVICE_MuxAdd_h
00002 #define _ROS_SERVICE_MuxAdd_h
00003 #include <stdint.h>
00004 #include <string.h>
00005 #include <stdlib.h>
00006 #include "ros/msg.h"
00007
00008 namespace topic_tools
00009 {
00010
00011 static const char MUXADD[] = "topic_tools/MuxAdd";
00012
00013 class MuxAddRequest : public ros::Msg
00014 {
00015 public:
00016 const char* topic;
00017
00018 virtual int serialize(unsigned char *outbuffer) const
00019 {
00020 int offset = 0;
00021 uint32_t length_topic = strlen(this->topic);
00022 memcpy(outbuffer + offset, &length_topic, sizeof(uint32_t));
00023 offset += 4;
00024 memcpy(outbuffer + offset, this->topic, length_topic);
00025 offset += length_topic;
00026 return offset;
00027 }
00028
00029 virtual int deserialize(unsigned char *inbuffer)
00030 {
00031 int offset = 0;
00032 uint32_t length_topic;
00033 memcpy(&length_topic, (inbuffer + offset), sizeof(uint32_t));
00034 offset += 4;
00035 for(unsigned int k= offset; k< offset+length_topic; ++k){
00036 inbuffer[k-1]=inbuffer[k];
00037 }
00038 inbuffer[offset+length_topic-1]=0;
00039 this->topic = (char *)(inbuffer + offset-1);
00040 offset += length_topic;
00041 return offset;
00042 }
00043
00044 const char * getType(){ return MUXADD; };
00045 const char * getMD5(){ return "d8f94bae31b356b24d0427f80426d0c3"; };
00046
00047 };
00048
00049 class MuxAddResponse : public ros::Msg
00050 {
00051 public:
00052
00053 virtual int serialize(unsigned char *outbuffer) const
00054 {
00055 int offset = 0;
00056 return offset;
00057 }
00058
00059 virtual int deserialize(unsigned char *inbuffer)
00060 {
00061 int offset = 0;
00062 return offset;
00063 }
00064
00065 const char * getType(){ return MUXADD; };
00066 const char * getMD5(){ return "d41d8cd98f00b204e9800998ecf8427e"; };
00067
00068 };
00069
00070 class MuxAdd {
00071 public:
00072 typedef MuxAddRequest Request;
00073 typedef MuxAddResponse Response;
00074 };
00075
00076 }
00077 #endif