kitt_platform
 All Classes Namespaces Files Functions Variables Typedefs Enumerator Macros
Int8MultiArray.h
Go to the documentation of this file.
1 #ifndef _ROS_std_msgs_Int8MultiArray_h
2 #define _ROS_std_msgs_Int8MultiArray_h
3 
4 #include <stdint.h>
5 #include <string.h>
6 #include <stdlib.h>
7 #include "ros/msg.h"
9 
10 namespace std_msgs
11 {
12 
13  class Int8MultiArray : public ros::Msg
14  {
15  public:
17  uint8_t data_length;
18  int8_t st_data;
19  int8_t * data;
20 
22  layout(),
23  data_length(0), data(NULL)
24  {
25  }
26 
27  virtual int serialize(unsigned char *outbuffer) const
28  {
29  int offset = 0;
30  offset += this->layout.serialize(outbuffer + offset);
31  *(outbuffer + offset++) = data_length;
32  *(outbuffer + offset++) = 0;
33  *(outbuffer + offset++) = 0;
34  *(outbuffer + offset++) = 0;
35  for( uint8_t i = 0; i < data_length; i++){
36  union {
37  int8_t real;
38  uint8_t base;
39  } u_datai;
40  u_datai.real = this->data[i];
41  *(outbuffer + offset + 0) = (u_datai.base >> (8 * 0)) & 0xFF;
42  offset += sizeof(this->data[i]);
43  }
44  return offset;
45  }
46 
47  virtual int deserialize(unsigned char *inbuffer)
48  {
49  int offset = 0;
50  offset += this->layout.deserialize(inbuffer + offset);
51  uint8_t data_lengthT = *(inbuffer + offset++);
52  if(data_lengthT > data_length)
53  this->data = (int8_t*)realloc(this->data, data_lengthT * sizeof(int8_t));
54  offset += 3;
55  data_length = data_lengthT;
56  for( uint8_t i = 0; i < data_length; i++){
57  union {
58  int8_t real;
59  uint8_t base;
60  } u_st_data;
61  u_st_data.base = 0;
62  u_st_data.base |= ((uint8_t) (*(inbuffer + offset + 0))) << (8 * 0);
63  this->st_data = u_st_data.real;
64  offset += sizeof(this->st_data);
65  memcpy( &(this->data[i]), &(this->st_data), sizeof(int8_t));
66  }
67  return offset;
68  }
69 
70  const char * getType(){ return "std_msgs/Int8MultiArray"; };
71  const char * getMD5(){ return "d7c1af35a1b4781bbe79e03dd94b7c13"; };
72 
73  };
74 
75 }
76 #endif
int8_t st_data
Definition: Int8MultiArray.h:18
virtual int serialize(unsigned char *outbuffer) const
Definition: MultiArrayLayout.h:27
Definition: MultiArrayLayout.h:13
Definition: Int8MultiArray.h:13
const char * getType()
Definition: Int8MultiArray.h:70
virtual int deserialize(unsigned char *inbuffer)
Definition: Int8MultiArray.h:47
std_msgs::MultiArrayLayout layout
Definition: Int8MultiArray.h:16
int8_t * data
Definition: Int8MultiArray.h:19
uint8_t data_length
Definition: Int8MultiArray.h:17
virtual int serialize(unsigned char *outbuffer) const
Definition: Int8MultiArray.h:27
const char * getMD5()
Definition: Int8MultiArray.h:71
Int8MultiArray()
Definition: Int8MultiArray.h:21
Definition: msg.h:43
virtual int deserialize(unsigned char *inbuffer)
Definition: MultiArrayLayout.h:45