added 1 custom message

Dependencies:   BufferedSerial

Fork of ros_lib_kinetic by Gary Servin

Committer:
randalthor
Date:
Fri May 19 08:59:12 2017 +0000
Revision:
2:af816ffd33df
custom message mobile robot added for ITU cyber physical lab

Who changed what in which revision?

UserRevisionLine numberNew contents of line
randalthor 2:af816ffd33df 1 #ifndef _ROS_openlab_mobileRobot_h
randalthor 2:af816ffd33df 2 #define _ROS_openlab_mobileRobot_h
randalthor 2:af816ffd33df 3
randalthor 2:af816ffd33df 4 #include <stdint.h>
randalthor 2:af816ffd33df 5 #include <string.h>
randalthor 2:af816ffd33df 6 #include <stdlib.h>
randalthor 2:af816ffd33df 7 #include "ros/msg.h"
randalthor 2:af816ffd33df 8
randalthor 2:af816ffd33df 9 namespace openlab
randalthor 2:af816ffd33df 10 {
randalthor 2:af816ffd33df 11
randalthor 2:af816ffd33df 12 class mobileRobot : public ros::Msg
randalthor 2:af816ffd33df 13 {
randalthor 2:af816ffd33df 14 public:
randalthor 2:af816ffd33df 15 typedef float _cmd_velocity_linx_type;
randalthor 2:af816ffd33df 16 _cmd_velocity_linx_type cmd_velocity_linx;
randalthor 2:af816ffd33df 17 typedef float _cmd_velocity_angz_type;
randalthor 2:af816ffd33df 18 _cmd_velocity_angz_type cmd_velocity_angz;
randalthor 2:af816ffd33df 19 typedef float _real_velocity_linx_type;
randalthor 2:af816ffd33df 20 _real_velocity_linx_type real_velocity_linx;
randalthor 2:af816ffd33df 21 typedef float _real_velocity_angz_type;
randalthor 2:af816ffd33df 22 _real_velocity_angz_type real_velocity_angz;
randalthor 2:af816ffd33df 23 typedef float _pwm_1_type;
randalthor 2:af816ffd33df 24 _pwm_1_type pwm_1;
randalthor 2:af816ffd33df 25 typedef float _pwm_2_type;
randalthor 2:af816ffd33df 26 _pwm_2_type pwm_2;
randalthor 2:af816ffd33df 27 typedef float _dc_current_1_type;
randalthor 2:af816ffd33df 28 _dc_current_1_type dc_current_1;
randalthor 2:af816ffd33df 29 typedef float _dc_current_2_type;
randalthor 2:af816ffd33df 30 _dc_current_2_type dc_current_2;
randalthor 2:af816ffd33df 31 typedef int32_t _encoder_1_type;
randalthor 2:af816ffd33df 32 _encoder_1_type encoder_1;
randalthor 2:af816ffd33df 33 typedef int32_t _encoder_2_type;
randalthor 2:af816ffd33df 34 _encoder_2_type encoder_2;
randalthor 2:af816ffd33df 35
randalthor 2:af816ffd33df 36 mobileRobot():
randalthor 2:af816ffd33df 37 cmd_velocity_linx(0),
randalthor 2:af816ffd33df 38 cmd_velocity_angz(0),
randalthor 2:af816ffd33df 39 real_velocity_linx(0),
randalthor 2:af816ffd33df 40 real_velocity_angz(0),
randalthor 2:af816ffd33df 41 pwm_1(0),
randalthor 2:af816ffd33df 42 pwm_2(0),
randalthor 2:af816ffd33df 43 dc_current_1(0),
randalthor 2:af816ffd33df 44 dc_current_2(0),
randalthor 2:af816ffd33df 45 encoder_1(0),
randalthor 2:af816ffd33df 46 encoder_2(0)
randalthor 2:af816ffd33df 47 {
randalthor 2:af816ffd33df 48 }
randalthor 2:af816ffd33df 49
randalthor 2:af816ffd33df 50 virtual int serialize(unsigned char *outbuffer) const
randalthor 2:af816ffd33df 51 {
randalthor 2:af816ffd33df 52 int offset = 0;
randalthor 2:af816ffd33df 53 union {
randalthor 2:af816ffd33df 54 float real;
randalthor 2:af816ffd33df 55 uint32_t base;
randalthor 2:af816ffd33df 56 } u_cmd_velocity_linx;
randalthor 2:af816ffd33df 57 u_cmd_velocity_linx.real = this->cmd_velocity_linx;
randalthor 2:af816ffd33df 58 *(outbuffer + offset + 0) = (u_cmd_velocity_linx.base >> (8 * 0)) & 0xFF;
randalthor 2:af816ffd33df 59 *(outbuffer + offset + 1) = (u_cmd_velocity_linx.base >> (8 * 1)) & 0xFF;
randalthor 2:af816ffd33df 60 *(outbuffer + offset + 2) = (u_cmd_velocity_linx.base >> (8 * 2)) & 0xFF;
randalthor 2:af816ffd33df 61 *(outbuffer + offset + 3) = (u_cmd_velocity_linx.base >> (8 * 3)) & 0xFF;
randalthor 2:af816ffd33df 62 offset += sizeof(this->cmd_velocity_linx);
randalthor 2:af816ffd33df 63 union {
randalthor 2:af816ffd33df 64 float real;
randalthor 2:af816ffd33df 65 uint32_t base;
randalthor 2:af816ffd33df 66 } u_cmd_velocity_angz;
randalthor 2:af816ffd33df 67 u_cmd_velocity_angz.real = this->cmd_velocity_angz;
randalthor 2:af816ffd33df 68 *(outbuffer + offset + 0) = (u_cmd_velocity_angz.base >> (8 * 0)) & 0xFF;
randalthor 2:af816ffd33df 69 *(outbuffer + offset + 1) = (u_cmd_velocity_angz.base >> (8 * 1)) & 0xFF;
randalthor 2:af816ffd33df 70 *(outbuffer + offset + 2) = (u_cmd_velocity_angz.base >> (8 * 2)) & 0xFF;
randalthor 2:af816ffd33df 71 *(outbuffer + offset + 3) = (u_cmd_velocity_angz.base >> (8 * 3)) & 0xFF;
randalthor 2:af816ffd33df 72 offset += sizeof(this->cmd_velocity_angz);
randalthor 2:af816ffd33df 73 union {
randalthor 2:af816ffd33df 74 float real;
randalthor 2:af816ffd33df 75 uint32_t base;
randalthor 2:af816ffd33df 76 } u_real_velocity_linx;
randalthor 2:af816ffd33df 77 u_real_velocity_linx.real = this->real_velocity_linx;
randalthor 2:af816ffd33df 78 *(outbuffer + offset + 0) = (u_real_velocity_linx.base >> (8 * 0)) & 0xFF;
randalthor 2:af816ffd33df 79 *(outbuffer + offset + 1) = (u_real_velocity_linx.base >> (8 * 1)) & 0xFF;
randalthor 2:af816ffd33df 80 *(outbuffer + offset + 2) = (u_real_velocity_linx.base >> (8 * 2)) & 0xFF;
randalthor 2:af816ffd33df 81 *(outbuffer + offset + 3) = (u_real_velocity_linx.base >> (8 * 3)) & 0xFF;
randalthor 2:af816ffd33df 82 offset += sizeof(this->real_velocity_linx);
randalthor 2:af816ffd33df 83 union {
randalthor 2:af816ffd33df 84 float real;
randalthor 2:af816ffd33df 85 uint32_t base;
randalthor 2:af816ffd33df 86 } u_real_velocity_angz;
randalthor 2:af816ffd33df 87 u_real_velocity_angz.real = this->real_velocity_angz;
randalthor 2:af816ffd33df 88 *(outbuffer + offset + 0) = (u_real_velocity_angz.base >> (8 * 0)) & 0xFF;
randalthor 2:af816ffd33df 89 *(outbuffer + offset + 1) = (u_real_velocity_angz.base >> (8 * 1)) & 0xFF;
randalthor 2:af816ffd33df 90 *(outbuffer + offset + 2) = (u_real_velocity_angz.base >> (8 * 2)) & 0xFF;
randalthor 2:af816ffd33df 91 *(outbuffer + offset + 3) = (u_real_velocity_angz.base >> (8 * 3)) & 0xFF;
randalthor 2:af816ffd33df 92 offset += sizeof(this->real_velocity_angz);
randalthor 2:af816ffd33df 93 union {
randalthor 2:af816ffd33df 94 float real;
randalthor 2:af816ffd33df 95 uint32_t base;
randalthor 2:af816ffd33df 96 } u_pwm_1;
randalthor 2:af816ffd33df 97 u_pwm_1.real = this->pwm_1;
randalthor 2:af816ffd33df 98 *(outbuffer + offset + 0) = (u_pwm_1.base >> (8 * 0)) & 0xFF;
randalthor 2:af816ffd33df 99 *(outbuffer + offset + 1) = (u_pwm_1.base >> (8 * 1)) & 0xFF;
randalthor 2:af816ffd33df 100 *(outbuffer + offset + 2) = (u_pwm_1.base >> (8 * 2)) & 0xFF;
randalthor 2:af816ffd33df 101 *(outbuffer + offset + 3) = (u_pwm_1.base >> (8 * 3)) & 0xFF;
randalthor 2:af816ffd33df 102 offset += sizeof(this->pwm_1);
randalthor 2:af816ffd33df 103 union {
randalthor 2:af816ffd33df 104 float real;
randalthor 2:af816ffd33df 105 uint32_t base;
randalthor 2:af816ffd33df 106 } u_pwm_2;
randalthor 2:af816ffd33df 107 u_pwm_2.real = this->pwm_2;
randalthor 2:af816ffd33df 108 *(outbuffer + offset + 0) = (u_pwm_2.base >> (8 * 0)) & 0xFF;
randalthor 2:af816ffd33df 109 *(outbuffer + offset + 1) = (u_pwm_2.base >> (8 * 1)) & 0xFF;
randalthor 2:af816ffd33df 110 *(outbuffer + offset + 2) = (u_pwm_2.base >> (8 * 2)) & 0xFF;
randalthor 2:af816ffd33df 111 *(outbuffer + offset + 3) = (u_pwm_2.base >> (8 * 3)) & 0xFF;
randalthor 2:af816ffd33df 112 offset += sizeof(this->pwm_2);
randalthor 2:af816ffd33df 113 union {
randalthor 2:af816ffd33df 114 float real;
randalthor 2:af816ffd33df 115 uint32_t base;
randalthor 2:af816ffd33df 116 } u_dc_current_1;
randalthor 2:af816ffd33df 117 u_dc_current_1.real = this->dc_current_1;
randalthor 2:af816ffd33df 118 *(outbuffer + offset + 0) = (u_dc_current_1.base >> (8 * 0)) & 0xFF;
randalthor 2:af816ffd33df 119 *(outbuffer + offset + 1) = (u_dc_current_1.base >> (8 * 1)) & 0xFF;
randalthor 2:af816ffd33df 120 *(outbuffer + offset + 2) = (u_dc_current_1.base >> (8 * 2)) & 0xFF;
randalthor 2:af816ffd33df 121 *(outbuffer + offset + 3) = (u_dc_current_1.base >> (8 * 3)) & 0xFF;
randalthor 2:af816ffd33df 122 offset += sizeof(this->dc_current_1);
randalthor 2:af816ffd33df 123 union {
randalthor 2:af816ffd33df 124 float real;
randalthor 2:af816ffd33df 125 uint32_t base;
randalthor 2:af816ffd33df 126 } u_dc_current_2;
randalthor 2:af816ffd33df 127 u_dc_current_2.real = this->dc_current_2;
randalthor 2:af816ffd33df 128 *(outbuffer + offset + 0) = (u_dc_current_2.base >> (8 * 0)) & 0xFF;
randalthor 2:af816ffd33df 129 *(outbuffer + offset + 1) = (u_dc_current_2.base >> (8 * 1)) & 0xFF;
randalthor 2:af816ffd33df 130 *(outbuffer + offset + 2) = (u_dc_current_2.base >> (8 * 2)) & 0xFF;
randalthor 2:af816ffd33df 131 *(outbuffer + offset + 3) = (u_dc_current_2.base >> (8 * 3)) & 0xFF;
randalthor 2:af816ffd33df 132 offset += sizeof(this->dc_current_2);
randalthor 2:af816ffd33df 133 union {
randalthor 2:af816ffd33df 134 int32_t real;
randalthor 2:af816ffd33df 135 uint32_t base;
randalthor 2:af816ffd33df 136 } u_encoder_1;
randalthor 2:af816ffd33df 137 u_encoder_1.real = this->encoder_1;
randalthor 2:af816ffd33df 138 *(outbuffer + offset + 0) = (u_encoder_1.base >> (8 * 0)) & 0xFF;
randalthor 2:af816ffd33df 139 *(outbuffer + offset + 1) = (u_encoder_1.base >> (8 * 1)) & 0xFF;
randalthor 2:af816ffd33df 140 *(outbuffer + offset + 2) = (u_encoder_1.base >> (8 * 2)) & 0xFF;
randalthor 2:af816ffd33df 141 *(outbuffer + offset + 3) = (u_encoder_1.base >> (8 * 3)) & 0xFF;
randalthor 2:af816ffd33df 142 offset += sizeof(this->encoder_1);
randalthor 2:af816ffd33df 143 union {
randalthor 2:af816ffd33df 144 int32_t real;
randalthor 2:af816ffd33df 145 uint32_t base;
randalthor 2:af816ffd33df 146 } u_encoder_2;
randalthor 2:af816ffd33df 147 u_encoder_2.real = this->encoder_2;
randalthor 2:af816ffd33df 148 *(outbuffer + offset + 0) = (u_encoder_2.base >> (8 * 0)) & 0xFF;
randalthor 2:af816ffd33df 149 *(outbuffer + offset + 1) = (u_encoder_2.base >> (8 * 1)) & 0xFF;
randalthor 2:af816ffd33df 150 *(outbuffer + offset + 2) = (u_encoder_2.base >> (8 * 2)) & 0xFF;
randalthor 2:af816ffd33df 151 *(outbuffer + offset + 3) = (u_encoder_2.base >> (8 * 3)) & 0xFF;
randalthor 2:af816ffd33df 152 offset += sizeof(this->encoder_2);
randalthor 2:af816ffd33df 153 return offset;
randalthor 2:af816ffd33df 154 }
randalthor 2:af816ffd33df 155
randalthor 2:af816ffd33df 156 virtual int deserialize(unsigned char *inbuffer)
randalthor 2:af816ffd33df 157 {
randalthor 2:af816ffd33df 158 int offset = 0;
randalthor 2:af816ffd33df 159 union {
randalthor 2:af816ffd33df 160 float real;
randalthor 2:af816ffd33df 161 uint32_t base;
randalthor 2:af816ffd33df 162 } u_cmd_velocity_linx;
randalthor 2:af816ffd33df 163 u_cmd_velocity_linx.base = 0;
randalthor 2:af816ffd33df 164 u_cmd_velocity_linx.base |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
randalthor 2:af816ffd33df 165 u_cmd_velocity_linx.base |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
randalthor 2:af816ffd33df 166 u_cmd_velocity_linx.base |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
randalthor 2:af816ffd33df 167 u_cmd_velocity_linx.base |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
randalthor 2:af816ffd33df 168 this->cmd_velocity_linx = u_cmd_velocity_linx.real;
randalthor 2:af816ffd33df 169 offset += sizeof(this->cmd_velocity_linx);
randalthor 2:af816ffd33df 170 union {
randalthor 2:af816ffd33df 171 float real;
randalthor 2:af816ffd33df 172 uint32_t base;
randalthor 2:af816ffd33df 173 } u_cmd_velocity_angz;
randalthor 2:af816ffd33df 174 u_cmd_velocity_angz.base = 0;
randalthor 2:af816ffd33df 175 u_cmd_velocity_angz.base |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
randalthor 2:af816ffd33df 176 u_cmd_velocity_angz.base |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
randalthor 2:af816ffd33df 177 u_cmd_velocity_angz.base |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
randalthor 2:af816ffd33df 178 u_cmd_velocity_angz.base |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
randalthor 2:af816ffd33df 179 this->cmd_velocity_angz = u_cmd_velocity_angz.real;
randalthor 2:af816ffd33df 180 offset += sizeof(this->cmd_velocity_angz);
randalthor 2:af816ffd33df 181 union {
randalthor 2:af816ffd33df 182 float real;
randalthor 2:af816ffd33df 183 uint32_t base;
randalthor 2:af816ffd33df 184 } u_real_velocity_linx;
randalthor 2:af816ffd33df 185 u_real_velocity_linx.base = 0;
randalthor 2:af816ffd33df 186 u_real_velocity_linx.base |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
randalthor 2:af816ffd33df 187 u_real_velocity_linx.base |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
randalthor 2:af816ffd33df 188 u_real_velocity_linx.base |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
randalthor 2:af816ffd33df 189 u_real_velocity_linx.base |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
randalthor 2:af816ffd33df 190 this->real_velocity_linx = u_real_velocity_linx.real;
randalthor 2:af816ffd33df 191 offset += sizeof(this->real_velocity_linx);
randalthor 2:af816ffd33df 192 union {
randalthor 2:af816ffd33df 193 float real;
randalthor 2:af816ffd33df 194 uint32_t base;
randalthor 2:af816ffd33df 195 } u_real_velocity_angz;
randalthor 2:af816ffd33df 196 u_real_velocity_angz.base = 0;
randalthor 2:af816ffd33df 197 u_real_velocity_angz.base |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
randalthor 2:af816ffd33df 198 u_real_velocity_angz.base |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
randalthor 2:af816ffd33df 199 u_real_velocity_angz.base |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
randalthor 2:af816ffd33df 200 u_real_velocity_angz.base |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
randalthor 2:af816ffd33df 201 this->real_velocity_angz = u_real_velocity_angz.real;
randalthor 2:af816ffd33df 202 offset += sizeof(this->real_velocity_angz);
randalthor 2:af816ffd33df 203 union {
randalthor 2:af816ffd33df 204 float real;
randalthor 2:af816ffd33df 205 uint32_t base;
randalthor 2:af816ffd33df 206 } u_pwm_1;
randalthor 2:af816ffd33df 207 u_pwm_1.base = 0;
randalthor 2:af816ffd33df 208 u_pwm_1.base |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
randalthor 2:af816ffd33df 209 u_pwm_1.base |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
randalthor 2:af816ffd33df 210 u_pwm_1.base |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
randalthor 2:af816ffd33df 211 u_pwm_1.base |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
randalthor 2:af816ffd33df 212 this->pwm_1 = u_pwm_1.real;
randalthor 2:af816ffd33df 213 offset += sizeof(this->pwm_1);
randalthor 2:af816ffd33df 214 union {
randalthor 2:af816ffd33df 215 float real;
randalthor 2:af816ffd33df 216 uint32_t base;
randalthor 2:af816ffd33df 217 } u_pwm_2;
randalthor 2:af816ffd33df 218 u_pwm_2.base = 0;
randalthor 2:af816ffd33df 219 u_pwm_2.base |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
randalthor 2:af816ffd33df 220 u_pwm_2.base |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
randalthor 2:af816ffd33df 221 u_pwm_2.base |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
randalthor 2:af816ffd33df 222 u_pwm_2.base |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
randalthor 2:af816ffd33df 223 this->pwm_2 = u_pwm_2.real;
randalthor 2:af816ffd33df 224 offset += sizeof(this->pwm_2);
randalthor 2:af816ffd33df 225 union {
randalthor 2:af816ffd33df 226 float real;
randalthor 2:af816ffd33df 227 uint32_t base;
randalthor 2:af816ffd33df 228 } u_dc_current_1;
randalthor 2:af816ffd33df 229 u_dc_current_1.base = 0;
randalthor 2:af816ffd33df 230 u_dc_current_1.base |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
randalthor 2:af816ffd33df 231 u_dc_current_1.base |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
randalthor 2:af816ffd33df 232 u_dc_current_1.base |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
randalthor 2:af816ffd33df 233 u_dc_current_1.base |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
randalthor 2:af816ffd33df 234 this->dc_current_1 = u_dc_current_1.real;
randalthor 2:af816ffd33df 235 offset += sizeof(this->dc_current_1);
randalthor 2:af816ffd33df 236 union {
randalthor 2:af816ffd33df 237 float real;
randalthor 2:af816ffd33df 238 uint32_t base;
randalthor 2:af816ffd33df 239 } u_dc_current_2;
randalthor 2:af816ffd33df 240 u_dc_current_2.base = 0;
randalthor 2:af816ffd33df 241 u_dc_current_2.base |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
randalthor 2:af816ffd33df 242 u_dc_current_2.base |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
randalthor 2:af816ffd33df 243 u_dc_current_2.base |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
randalthor 2:af816ffd33df 244 u_dc_current_2.base |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
randalthor 2:af816ffd33df 245 this->dc_current_2 = u_dc_current_2.real;
randalthor 2:af816ffd33df 246 offset += sizeof(this->dc_current_2);
randalthor 2:af816ffd33df 247 union {
randalthor 2:af816ffd33df 248 int32_t real;
randalthor 2:af816ffd33df 249 uint32_t base;
randalthor 2:af816ffd33df 250 } u_encoder_1;
randalthor 2:af816ffd33df 251 u_encoder_1.base = 0;
randalthor 2:af816ffd33df 252 u_encoder_1.base |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
randalthor 2:af816ffd33df 253 u_encoder_1.base |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
randalthor 2:af816ffd33df 254 u_encoder_1.base |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
randalthor 2:af816ffd33df 255 u_encoder_1.base |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
randalthor 2:af816ffd33df 256 this->encoder_1 = u_encoder_1.real;
randalthor 2:af816ffd33df 257 offset += sizeof(this->encoder_1);
randalthor 2:af816ffd33df 258 union {
randalthor 2:af816ffd33df 259 int32_t real;
randalthor 2:af816ffd33df 260 uint32_t base;
randalthor 2:af816ffd33df 261 } u_encoder_2;
randalthor 2:af816ffd33df 262 u_encoder_2.base = 0;
randalthor 2:af816ffd33df 263 u_encoder_2.base |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
randalthor 2:af816ffd33df 264 u_encoder_2.base |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
randalthor 2:af816ffd33df 265 u_encoder_2.base |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
randalthor 2:af816ffd33df 266 u_encoder_2.base |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
randalthor 2:af816ffd33df 267 this->encoder_2 = u_encoder_2.real;
randalthor 2:af816ffd33df 268 offset += sizeof(this->encoder_2);
randalthor 2:af816ffd33df 269 return offset;
randalthor 2:af816ffd33df 270 }
randalthor 2:af816ffd33df 271
randalthor 2:af816ffd33df 272 const char * getType(){ return "openlab/mobileRobot"; };
randalthor 2:af816ffd33df 273 const char * getMD5(){ return "5e54beb06e233db01abe11e2006b8b2e"; };
randalthor 2:af816ffd33df 274
randalthor 2:af816ffd33df 275 };
randalthor 2:af816ffd33df 276
randalthor 2:af816ffd33df 277 }
randalthor 2:af816ffd33df 278 #endif