ROS Serial library for Mbed platforms for ROS Indigo Igloo. Check http://wiki.ros.org/rosserial_mbed/ for more information

Dependencies:   BufferedSerial

Dependents:   rosserial_mbed_hello_world_publisher rtos_base_control rosserial_mbed_F64MA ROS-RTOS ... more

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers SetLoggerLevel.h Source File

SetLoggerLevel.h

00001 #ifndef _ROS_SERVICE_SetLoggerLevel_h
00002 #define _ROS_SERVICE_SetLoggerLevel_h
00003 #include <stdint.h>
00004 #include <string.h>
00005 #include <stdlib.h>
00006 #include "ros/msg.h"
00007 
00008 namespace roscpp
00009 {
00010 
00011 static const char SETLOGGERLEVEL[] = "roscpp/SetLoggerLevel";
00012 
00013   class SetLoggerLevelRequest : public ros::Msg
00014   {
00015     public:
00016       const char* logger;
00017       const char* level;
00018 
00019     SetLoggerLevelRequest():
00020       logger(""),
00021       level("")
00022     {
00023     }
00024 
00025     virtual int serialize(unsigned char *outbuffer) const
00026     {
00027       int offset = 0;
00028       uint32_t length_logger = strlen(this->logger);
00029       memcpy(outbuffer + offset, &length_logger, sizeof(uint32_t));
00030       offset += 4;
00031       memcpy(outbuffer + offset, this->logger, length_logger);
00032       offset += length_logger;
00033       uint32_t length_level = strlen(this->level);
00034       memcpy(outbuffer + offset, &length_level, sizeof(uint32_t));
00035       offset += 4;
00036       memcpy(outbuffer + offset, this->level, length_level);
00037       offset += length_level;
00038       return offset;
00039     }
00040 
00041     virtual int deserialize(unsigned char *inbuffer)
00042     {
00043       int offset = 0;
00044       uint32_t length_logger;
00045       memcpy(&length_logger, (inbuffer + offset), sizeof(uint32_t));
00046       offset += 4;
00047       for(unsigned int k= offset; k< offset+length_logger; ++k){
00048           inbuffer[k-1]=inbuffer[k];
00049       }
00050       inbuffer[offset+length_logger-1]=0;
00051       this->logger = (char *)(inbuffer + offset-1);
00052       offset += length_logger;
00053       uint32_t length_level;
00054       memcpy(&length_level, (inbuffer + offset), sizeof(uint32_t));
00055       offset += 4;
00056       for(unsigned int k= offset; k< offset+length_level; ++k){
00057           inbuffer[k-1]=inbuffer[k];
00058       }
00059       inbuffer[offset+length_level-1]=0;
00060       this->level = (char *)(inbuffer + offset-1);
00061       offset += length_level;
00062      return offset;
00063     }
00064 
00065     const char * getType(){ return SETLOGGERLEVEL; };
00066     const char * getMD5(){ return "51da076440d78ca1684d36c868df61ea"; };
00067 
00068   };
00069 
00070   class SetLoggerLevelResponse : public ros::Msg
00071   {
00072     public:
00073 
00074     SetLoggerLevelResponse()
00075     {
00076     }
00077 
00078     virtual int serialize(unsigned char *outbuffer) const
00079     {
00080       int offset = 0;
00081       return offset;
00082     }
00083 
00084     virtual int deserialize(unsigned char *inbuffer)
00085     {
00086       int offset = 0;
00087      return offset;
00088     }
00089 
00090     const char * getType(){ return SETLOGGERLEVEL; };
00091     const char * getMD5(){ return "d41d8cd98f00b204e9800998ecf8427e"; };
00092 
00093   };
00094 
00095   class SetLoggerLevel {
00096     public:
00097     typedef SetLoggerLevelRequest Request;
00098     typedef SetLoggerLevelResponse Response;
00099   };
00100 
00101 }
00102 #endif