00001 #ifndef _ROS_dynamic_reconfigure_ConfigDescription_h 00002 #define _ROS_dynamic_reconfigure_ConfigDescription_h 00003 00004 #include <stdint.h> 00005 #include <string.h> 00006 #include <stdlib.h> 00007 #include "ros/msg.h" 00008 #include "dynamic_reconfigure/Group.h" 00009 #include "dynamic_reconfigure/Config.h" 00010 00011 namespace dynamic_reconfigure 00012 { 00013 00014 class ConfigDescription : public ros::Msg 00015 { 00016 public: 00017 uint8_t groups_length; 00018 dynamic_reconfigure::Group st_groups; 00019 dynamic_reconfigure::Group * groups; 00020 dynamic_reconfigure::Config max; 00021 dynamic_reconfigure::Config min; 00022 dynamic_reconfigure::Config dflt; 00023 00024 virtual int serialize(unsigned char *outbuffer) const 00025 { 00026 int offset = 0; 00027 *(outbuffer + offset++) = groups_length; 00028 *(outbuffer + offset++) = 0; 00029 *(outbuffer + offset++) = 0; 00030 *(outbuffer + offset++) = 0; 00031 for( uint8_t i = 0; i < groups_length; i++){ 00032 offset += this->groups[i].serialize(outbuffer + offset); 00033 } 00034 offset += this->max.serialize(outbuffer + offset); 00035 offset += this->min.serialize(outbuffer + offset); 00036 offset += this->dflt.serialize(outbuffer + offset); 00037 return offset; 00038 } 00039 00040 virtual int deserialize(unsigned char *inbuffer) 00041 { 00042 int offset = 0; 00043 uint8_t groups_lengthT = *(inbuffer + offset++); 00044 if(groups_lengthT > groups_length) 00045 this->groups = (dynamic_reconfigure::Group*)realloc(this->groups, groups_lengthT * sizeof(dynamic_reconfigure::Group)); 00046 offset += 3; 00047 groups_length = groups_lengthT; 00048 for( uint8_t i = 0; i < groups_length; i++){ 00049 offset += this->st_groups.deserialize(inbuffer + offset); 00050 memcpy( &(this->groups[i]), &(this->st_groups), sizeof(dynamic_reconfigure::Group)); 00051 } 00052 offset += this->max.deserialize(inbuffer + offset); 00053 offset += this->min.deserialize(inbuffer + offset); 00054 offset += this->dflt.deserialize(inbuffer + offset); 00055 return offset; 00056 } 00057 00058 const char * getType(){ return "dynamic_reconfigure/ConfigDescription"; }; 00059 const char * getMD5(){ return "757ce9d44ba8ddd801bb30bc456f946f"; }; 00060 00061 }; 00062 00063 } 00064 #endif