1 #ifndef _ROS_sensor_msgs_Image_h
2 #define _ROS_sensor_msgs_Image_h
37 virtual int serialize(
unsigned char *outbuffer)
const
41 *(outbuffer + offset + 0) = (this->
height >> (8 * 0)) & 0xFF;
42 *(outbuffer + offset + 1) = (this->
height >> (8 * 1)) & 0xFF;
43 *(outbuffer + offset + 2) = (this->
height >> (8 * 2)) & 0xFF;
44 *(outbuffer + offset + 3) = (this->
height >> (8 * 3)) & 0xFF;
45 offset +=
sizeof(this->
height);
46 *(outbuffer + offset + 0) = (this->
width >> (8 * 0)) & 0xFF;
47 *(outbuffer + offset + 1) = (this->
width >> (8 * 1)) & 0xFF;
48 *(outbuffer + offset + 2) = (this->
width >> (8 * 2)) & 0xFF;
49 *(outbuffer + offset + 3) = (this->
width >> (8 * 3)) & 0xFF;
50 offset +=
sizeof(this->
width);
51 uint32_t length_encoding = strlen(this->
encoding);
52 memcpy(outbuffer + offset, &length_encoding,
sizeof(uint32_t));
54 memcpy(outbuffer + offset, this->
encoding, length_encoding);
55 offset += length_encoding;
56 *(outbuffer + offset + 0) = (this->
is_bigendian >> (8 * 0)) & 0xFF;
58 *(outbuffer + offset + 0) = (this->
step >> (8 * 0)) & 0xFF;
59 *(outbuffer + offset + 1) = (this->
step >> (8 * 1)) & 0xFF;
60 *(outbuffer + offset + 2) = (this->
step >> (8 * 2)) & 0xFF;
61 *(outbuffer + offset + 3) = (this->
step >> (8 * 3)) & 0xFF;
62 offset +=
sizeof(this->
step);
64 *(outbuffer + offset++) = 0;
65 *(outbuffer + offset++) = 0;
66 *(outbuffer + offset++) = 0;
68 *(outbuffer + offset + 0) = (this->
data[i] >> (8 * 0)) & 0xFF;
69 offset +=
sizeof(this->
data[i]);
78 this->
height = ((uint32_t) (*(inbuffer + offset)));
79 this->
height |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
80 this->
height |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
81 this->
height |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
82 offset +=
sizeof(this->
height);
83 this->
width = ((uint32_t) (*(inbuffer + offset)));
84 this->
width |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
85 this->
width |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
86 this->
width |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
87 offset +=
sizeof(this->
width);
88 uint32_t length_encoding;
89 memcpy(&length_encoding, (inbuffer + offset),
sizeof(uint32_t));
91 for(
unsigned int k= offset; k< offset+length_encoding; ++k){
92 inbuffer[k-1]=inbuffer[k];
94 inbuffer[offset+length_encoding-1]=0;
95 this->
encoding = (
char *)(inbuffer + offset-1);
96 offset += length_encoding;
99 this->
step = ((uint32_t) (*(inbuffer + offset)));
100 this->
step |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
101 this->
step |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
102 this->
step |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
103 offset +=
sizeof(this->
step);
104 uint8_t data_lengthT = *(inbuffer + offset++);
106 this->
data = (uint8_t*)realloc(this->
data, data_lengthT *
sizeof(uint8_t));
110 this->
st_data = ((uint8_t) (*(inbuffer + offset)));
111 offset +=
sizeof(this->
st_data);
112 memcpy( &(this->
data[i]), &(this->
st_data),
sizeof(uint8_t));
117 const char *
getType(){
return "sensor_msgs/Image"; };
118 const char *
getMD5(){
return "060021388200f6f0f447d0fcd9c64743"; };
uint32_t height
Definition: Image.h:17
uint8_t data_length
Definition: Image.h:22
uint8_t is_bigendian
Definition: Image.h:20
uint32_t step
Definition: Image.h:21
Image()
Definition: Image.h:26
virtual int serialize(unsigned char *outbuffer) const
Definition: Image.h:37
const char * encoding
Definition: Image.h:19
const char * getMD5()
Definition: Image.h:118
uint32_t width
Definition: Image.h:18
uint8_t st_data
Definition: Image.h:23
virtual int deserialize(unsigned char *inbuffer)
Definition: Image.h:74
uint8_t * data
Definition: Image.h:24
std_msgs::Header header
Definition: Image.h:16
const char * getType()
Definition: Image.h:117