00001 """autogenerated by genpy from walk_msgs/WalkPath.msg. Do not edit."""
00002 import sys
00003 python3 = True if sys.hexversion > 0x03000000 else False
00004 import genpy
00005 import struct
00006
00007 import geometry_msgs.msg
00008 import walk_msgs.msg
00009 import nav_msgs.msg
00010 import std_msgs.msg
00011
00012 class WalkPath(genpy.Message):
00013 _md5sum = "d0a0a99ccf67829c6bd2a9f0499ae76e"
00014 _type = "walk_msgs/WalkPath"
00015 _has_header = False
00016 _full_text = """nav_msgs/Path left_foot
00017 nav_msgs/Path right_foot
00018 walk_msgs/PathPoint3d center_of_mass
00019 walk_msgs/PathPoint2d zmp
00020
00021 ================================================================================
00022 MSG: nav_msgs/Path
00023 #An array of poses that represents a Path for a robot to follow
00024 Header header
00025 geometry_msgs/PoseStamped[] poses
00026
00027 ================================================================================
00028 MSG: std_msgs/Header
00029 # Standard metadata for higher-level stamped data types.
00030 # This is generally used to communicate timestamped data
00031 # in a particular coordinate frame.
00032 #
00033 # sequence ID: consecutively increasing ID
00034 uint32 seq
00035 #Two-integer timestamp that is expressed as:
00036 # * stamp.secs: seconds (stamp_secs) since epoch
00037 # * stamp.nsecs: nanoseconds since stamp_secs
00038 # time-handling sugar is provided by the client library
00039 time stamp
00040 #Frame this data is associated with
00041 # 0: no frame
00042 # 1: global frame
00043 string frame_id
00044
00045 ================================================================================
00046 MSG: geometry_msgs/PoseStamped
00047 # A Pose with reference coordinate frame and timestamp
00048 Header header
00049 Pose pose
00050
00051 ================================================================================
00052 MSG: geometry_msgs/Pose
00053 # A representation of pose in free space, composed of postion and orientation.
00054 Point position
00055 Quaternion orientation
00056
00057 ================================================================================
00058 MSG: geometry_msgs/Point
00059 # This contains the position of a point in free space
00060 float64 x
00061 float64 y
00062 float64 z
00063
00064 ================================================================================
00065 MSG: geometry_msgs/Quaternion
00066 # This represents an orientation in free space in quaternion form.
00067
00068 float64 x
00069 float64 y
00070 float64 z
00071 float64 w
00072
00073 ================================================================================
00074 MSG: walk_msgs/PathPoint3d
00075 Header header
00076 geometry_msgs/PointStamped[] points
00077
00078 ================================================================================
00079 MSG: geometry_msgs/PointStamped
00080 # This represents a Point with reference coordinate frame and timestamp
00081 Header header
00082 Point point
00083
00084 ================================================================================
00085 MSG: walk_msgs/PathPoint2d
00086 Header header
00087 walk_msgs/Point2dStamped[] points
00088
00089 ================================================================================
00090 MSG: walk_msgs/Point2dStamped
00091 Header header
00092 Point2d point
00093
00094 ================================================================================
00095 MSG: walk_msgs/Point2d
00096 float64 x
00097 float64 y
00098
00099 """
00100 __slots__ = ['left_foot','right_foot','center_of_mass','zmp']
00101 _slot_types = ['nav_msgs/Path','nav_msgs/Path','walk_msgs/PathPoint3d','walk_msgs/PathPoint2d']
00102
00103 def __init__(self, *args, **kwds):
00104 """
00105 Constructor. Any message fields that are implicitly/explicitly
00106 set to None will be assigned a default value. The recommend
00107 use is keyword arguments as this is more robust to future message
00108 changes. You cannot mix in-order arguments and keyword arguments.
00109
00110 The available fields are:
00111 left_foot,right_foot,center_of_mass,zmp
00112
00113 :param args: complete set of field values, in .msg order
00114 :param kwds: use keyword arguments corresponding to message field names
00115 to set specific fields.
00116 """
00117 if args or kwds:
00118 super(WalkPath, self).__init__(*args, **kwds)
00119
00120 if self.left_foot is None:
00121 self.left_foot = nav_msgs.msg.Path()
00122 if self.right_foot is None:
00123 self.right_foot = nav_msgs.msg.Path()
00124 if self.center_of_mass is None:
00125 self.center_of_mass = walk_msgs.msg.PathPoint3d()
00126 if self.zmp is None:
00127 self.zmp = walk_msgs.msg.PathPoint2d()
00128 else:
00129 self.left_foot = nav_msgs.msg.Path()
00130 self.right_foot = nav_msgs.msg.Path()
00131 self.center_of_mass = walk_msgs.msg.PathPoint3d()
00132 self.zmp = walk_msgs.msg.PathPoint2d()
00133
00134 def _get_types(self):
00135 """
00136 internal API method
00137 """
00138 return self._slot_types
00139
00140 def serialize(self, buff):
00141 """
00142 serialize message into buffer
00143 :param buff: buffer, ``StringIO``
00144 """
00145 try:
00146 _x = self
00147 buff.write(_struct_3I.pack(_x.left_foot.header.seq, _x.left_foot.header.stamp.secs, _x.left_foot.header.stamp.nsecs))
00148 _x = self.left_foot.header.frame_id
00149 length = len(_x)
00150 if python3 or type(_x) == unicode:
00151 _x = _x.encode('utf-8')
00152 length = len(_x)
00153 buff.write(struct.pack('<I%ss'%length, length, _x))
00154 length = len(self.left_foot.poses)
00155 buff.write(_struct_I.pack(length))
00156 for val1 in self.left_foot.poses:
00157 _v1 = val1.header
00158 buff.write(_struct_I.pack(_v1.seq))
00159 _v2 = _v1.stamp
00160 _x = _v2
00161 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00162 _x = _v1.frame_id
00163 length = len(_x)
00164 if python3 or type(_x) == unicode:
00165 _x = _x.encode('utf-8')
00166 length = len(_x)
00167 buff.write(struct.pack('<I%ss'%length, length, _x))
00168 _v3 = val1.pose
00169 _v4 = _v3.position
00170 _x = _v4
00171 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00172 _v5 = _v3.orientation
00173 _x = _v5
00174 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
00175 _x = self
00176 buff.write(_struct_3I.pack(_x.right_foot.header.seq, _x.right_foot.header.stamp.secs, _x.right_foot.header.stamp.nsecs))
00177 _x = self.right_foot.header.frame_id
00178 length = len(_x)
00179 if python3 or type(_x) == unicode:
00180 _x = _x.encode('utf-8')
00181 length = len(_x)
00182 buff.write(struct.pack('<I%ss'%length, length, _x))
00183 length = len(self.right_foot.poses)
00184 buff.write(_struct_I.pack(length))
00185 for val1 in self.right_foot.poses:
00186 _v6 = val1.header
00187 buff.write(_struct_I.pack(_v6.seq))
00188 _v7 = _v6.stamp
00189 _x = _v7
00190 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00191 _x = _v6.frame_id
00192 length = len(_x)
00193 if python3 or type(_x) == unicode:
00194 _x = _x.encode('utf-8')
00195 length = len(_x)
00196 buff.write(struct.pack('<I%ss'%length, length, _x))
00197 _v8 = val1.pose
00198 _v9 = _v8.position
00199 _x = _v9
00200 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00201 _v10 = _v8.orientation
00202 _x = _v10
00203 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
00204 _x = self
00205 buff.write(_struct_3I.pack(_x.center_of_mass.header.seq, _x.center_of_mass.header.stamp.secs, _x.center_of_mass.header.stamp.nsecs))
00206 _x = self.center_of_mass.header.frame_id
00207 length = len(_x)
00208 if python3 or type(_x) == unicode:
00209 _x = _x.encode('utf-8')
00210 length = len(_x)
00211 buff.write(struct.pack('<I%ss'%length, length, _x))
00212 length = len(self.center_of_mass.points)
00213 buff.write(_struct_I.pack(length))
00214 for val1 in self.center_of_mass.points:
00215 _v11 = val1.header
00216 buff.write(_struct_I.pack(_v11.seq))
00217 _v12 = _v11.stamp
00218 _x = _v12
00219 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00220 _x = _v11.frame_id
00221 length = len(_x)
00222 if python3 or type(_x) == unicode:
00223 _x = _x.encode('utf-8')
00224 length = len(_x)
00225 buff.write(struct.pack('<I%ss'%length, length, _x))
00226 _v13 = val1.point
00227 _x = _v13
00228 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00229 _x = self
00230 buff.write(_struct_3I.pack(_x.zmp.header.seq, _x.zmp.header.stamp.secs, _x.zmp.header.stamp.nsecs))
00231 _x = self.zmp.header.frame_id
00232 length = len(_x)
00233 if python3 or type(_x) == unicode:
00234 _x = _x.encode('utf-8')
00235 length = len(_x)
00236 buff.write(struct.pack('<I%ss'%length, length, _x))
00237 length = len(self.zmp.points)
00238 buff.write(_struct_I.pack(length))
00239 for val1 in self.zmp.points:
00240 _v14 = val1.header
00241 buff.write(_struct_I.pack(_v14.seq))
00242 _v15 = _v14.stamp
00243 _x = _v15
00244 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00245 _x = _v14.frame_id
00246 length = len(_x)
00247 if python3 or type(_x) == unicode:
00248 _x = _x.encode('utf-8')
00249 length = len(_x)
00250 buff.write(struct.pack('<I%ss'%length, length, _x))
00251 _v16 = val1.point
00252 _x = _v16
00253 buff.write(_struct_2d.pack(_x.x, _x.y))
00254 except struct.error as se: self._check_types(se)
00255 except TypeError as te: self._check_types(te)
00256
00257 def deserialize(self, str):
00258 """
00259 unpack serialized message in str into this message instance
00260 :param str: byte array of serialized message, ``str``
00261 """
00262 try:
00263 if self.left_foot is None:
00264 self.left_foot = nav_msgs.msg.Path()
00265 if self.right_foot is None:
00266 self.right_foot = nav_msgs.msg.Path()
00267 if self.center_of_mass is None:
00268 self.center_of_mass = walk_msgs.msg.PathPoint3d()
00269 if self.zmp is None:
00270 self.zmp = walk_msgs.msg.PathPoint2d()
00271 end = 0
00272 _x = self
00273 start = end
00274 end += 12
00275 (_x.left_foot.header.seq, _x.left_foot.header.stamp.secs, _x.left_foot.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00276 start = end
00277 end += 4
00278 (length,) = _struct_I.unpack(str[start:end])
00279 start = end
00280 end += length
00281 if python3:
00282 self.left_foot.header.frame_id = str[start:end].decode('utf-8')
00283 else:
00284 self.left_foot.header.frame_id = str[start:end]
00285 start = end
00286 end += 4
00287 (length,) = _struct_I.unpack(str[start:end])
00288 self.left_foot.poses = []
00289 for i in range(0, length):
00290 val1 = geometry_msgs.msg.PoseStamped()
00291 _v17 = val1.header
00292 start = end
00293 end += 4
00294 (_v17.seq,) = _struct_I.unpack(str[start:end])
00295 _v18 = _v17.stamp
00296 _x = _v18
00297 start = end
00298 end += 8
00299 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
00300 start = end
00301 end += 4
00302 (length,) = _struct_I.unpack(str[start:end])
00303 start = end
00304 end += length
00305 if python3:
00306 _v17.frame_id = str[start:end].decode('utf-8')
00307 else:
00308 _v17.frame_id = str[start:end]
00309 _v19 = val1.pose
00310 _v20 = _v19.position
00311 _x = _v20
00312 start = end
00313 end += 24
00314 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
00315 _v21 = _v19.orientation
00316 _x = _v21
00317 start = end
00318 end += 32
00319 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
00320 self.left_foot.poses.append(val1)
00321 _x = self
00322 start = end
00323 end += 12
00324 (_x.right_foot.header.seq, _x.right_foot.header.stamp.secs, _x.right_foot.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00325 start = end
00326 end += 4
00327 (length,) = _struct_I.unpack(str[start:end])
00328 start = end
00329 end += length
00330 if python3:
00331 self.right_foot.header.frame_id = str[start:end].decode('utf-8')
00332 else:
00333 self.right_foot.header.frame_id = str[start:end]
00334 start = end
00335 end += 4
00336 (length,) = _struct_I.unpack(str[start:end])
00337 self.right_foot.poses = []
00338 for i in range(0, length):
00339 val1 = geometry_msgs.msg.PoseStamped()
00340 _v22 = val1.header
00341 start = end
00342 end += 4
00343 (_v22.seq,) = _struct_I.unpack(str[start:end])
00344 _v23 = _v22.stamp
00345 _x = _v23
00346 start = end
00347 end += 8
00348 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
00349 start = end
00350 end += 4
00351 (length,) = _struct_I.unpack(str[start:end])
00352 start = end
00353 end += length
00354 if python3:
00355 _v22.frame_id = str[start:end].decode('utf-8')
00356 else:
00357 _v22.frame_id = str[start:end]
00358 _v24 = val1.pose
00359 _v25 = _v24.position
00360 _x = _v25
00361 start = end
00362 end += 24
00363 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
00364 _v26 = _v24.orientation
00365 _x = _v26
00366 start = end
00367 end += 32
00368 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
00369 self.right_foot.poses.append(val1)
00370 _x = self
00371 start = end
00372 end += 12
00373 (_x.center_of_mass.header.seq, _x.center_of_mass.header.stamp.secs, _x.center_of_mass.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00374 start = end
00375 end += 4
00376 (length,) = _struct_I.unpack(str[start:end])
00377 start = end
00378 end += length
00379 if python3:
00380 self.center_of_mass.header.frame_id = str[start:end].decode('utf-8')
00381 else:
00382 self.center_of_mass.header.frame_id = str[start:end]
00383 start = end
00384 end += 4
00385 (length,) = _struct_I.unpack(str[start:end])
00386 self.center_of_mass.points = []
00387 for i in range(0, length):
00388 val1 = geometry_msgs.msg.PointStamped()
00389 _v27 = val1.header
00390 start = end
00391 end += 4
00392 (_v27.seq,) = _struct_I.unpack(str[start:end])
00393 _v28 = _v27.stamp
00394 _x = _v28
00395 start = end
00396 end += 8
00397 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
00398 start = end
00399 end += 4
00400 (length,) = _struct_I.unpack(str[start:end])
00401 start = end
00402 end += length
00403 if python3:
00404 _v27.frame_id = str[start:end].decode('utf-8')
00405 else:
00406 _v27.frame_id = str[start:end]
00407 _v29 = val1.point
00408 _x = _v29
00409 start = end
00410 end += 24
00411 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
00412 self.center_of_mass.points.append(val1)
00413 _x = self
00414 start = end
00415 end += 12
00416 (_x.zmp.header.seq, _x.zmp.header.stamp.secs, _x.zmp.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00417 start = end
00418 end += 4
00419 (length,) = _struct_I.unpack(str[start:end])
00420 start = end
00421 end += length
00422 if python3:
00423 self.zmp.header.frame_id = str[start:end].decode('utf-8')
00424 else:
00425 self.zmp.header.frame_id = str[start:end]
00426 start = end
00427 end += 4
00428 (length,) = _struct_I.unpack(str[start:end])
00429 self.zmp.points = []
00430 for i in range(0, length):
00431 val1 = walk_msgs.msg.Point2dStamped()
00432 _v30 = val1.header
00433 start = end
00434 end += 4
00435 (_v30.seq,) = _struct_I.unpack(str[start:end])
00436 _v31 = _v30.stamp
00437 _x = _v31
00438 start = end
00439 end += 8
00440 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
00441 start = end
00442 end += 4
00443 (length,) = _struct_I.unpack(str[start:end])
00444 start = end
00445 end += length
00446 if python3:
00447 _v30.frame_id = str[start:end].decode('utf-8')
00448 else:
00449 _v30.frame_id = str[start:end]
00450 _v32 = val1.point
00451 _x = _v32
00452 start = end
00453 end += 16
00454 (_x.x, _x.y,) = _struct_2d.unpack(str[start:end])
00455 self.zmp.points.append(val1)
00456 return self
00457 except struct.error as e:
00458 raise genpy.DeserializationError(e)
00459
00460
00461 def serialize_numpy(self, buff, numpy):
00462 """
00463 serialize message with numpy array types into buffer
00464 :param buff: buffer, ``StringIO``
00465 :param numpy: numpy python module
00466 """
00467 try:
00468 _x = self
00469 buff.write(_struct_3I.pack(_x.left_foot.header.seq, _x.left_foot.header.stamp.secs, _x.left_foot.header.stamp.nsecs))
00470 _x = self.left_foot.header.frame_id
00471 length = len(_x)
00472 if python3 or type(_x) == unicode:
00473 _x = _x.encode('utf-8')
00474 length = len(_x)
00475 buff.write(struct.pack('<I%ss'%length, length, _x))
00476 length = len(self.left_foot.poses)
00477 buff.write(_struct_I.pack(length))
00478 for val1 in self.left_foot.poses:
00479 _v33 = val1.header
00480 buff.write(_struct_I.pack(_v33.seq))
00481 _v34 = _v33.stamp
00482 _x = _v34
00483 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00484 _x = _v33.frame_id
00485 length = len(_x)
00486 if python3 or type(_x) == unicode:
00487 _x = _x.encode('utf-8')
00488 length = len(_x)
00489 buff.write(struct.pack('<I%ss'%length, length, _x))
00490 _v35 = val1.pose
00491 _v36 = _v35.position
00492 _x = _v36
00493 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00494 _v37 = _v35.orientation
00495 _x = _v37
00496 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
00497 _x = self
00498 buff.write(_struct_3I.pack(_x.right_foot.header.seq, _x.right_foot.header.stamp.secs, _x.right_foot.header.stamp.nsecs))
00499 _x = self.right_foot.header.frame_id
00500 length = len(_x)
00501 if python3 or type(_x) == unicode:
00502 _x = _x.encode('utf-8')
00503 length = len(_x)
00504 buff.write(struct.pack('<I%ss'%length, length, _x))
00505 length = len(self.right_foot.poses)
00506 buff.write(_struct_I.pack(length))
00507 for val1 in self.right_foot.poses:
00508 _v38 = val1.header
00509 buff.write(_struct_I.pack(_v38.seq))
00510 _v39 = _v38.stamp
00511 _x = _v39
00512 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00513 _x = _v38.frame_id
00514 length = len(_x)
00515 if python3 or type(_x) == unicode:
00516 _x = _x.encode('utf-8')
00517 length = len(_x)
00518 buff.write(struct.pack('<I%ss'%length, length, _x))
00519 _v40 = val1.pose
00520 _v41 = _v40.position
00521 _x = _v41
00522 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00523 _v42 = _v40.orientation
00524 _x = _v42
00525 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
00526 _x = self
00527 buff.write(_struct_3I.pack(_x.center_of_mass.header.seq, _x.center_of_mass.header.stamp.secs, _x.center_of_mass.header.stamp.nsecs))
00528 _x = self.center_of_mass.header.frame_id
00529 length = len(_x)
00530 if python3 or type(_x) == unicode:
00531 _x = _x.encode('utf-8')
00532 length = len(_x)
00533 buff.write(struct.pack('<I%ss'%length, length, _x))
00534 length = len(self.center_of_mass.points)
00535 buff.write(_struct_I.pack(length))
00536 for val1 in self.center_of_mass.points:
00537 _v43 = val1.header
00538 buff.write(_struct_I.pack(_v43.seq))
00539 _v44 = _v43.stamp
00540 _x = _v44
00541 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00542 _x = _v43.frame_id
00543 length = len(_x)
00544 if python3 or type(_x) == unicode:
00545 _x = _x.encode('utf-8')
00546 length = len(_x)
00547 buff.write(struct.pack('<I%ss'%length, length, _x))
00548 _v45 = val1.point
00549 _x = _v45
00550 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00551 _x = self
00552 buff.write(_struct_3I.pack(_x.zmp.header.seq, _x.zmp.header.stamp.secs, _x.zmp.header.stamp.nsecs))
00553 _x = self.zmp.header.frame_id
00554 length = len(_x)
00555 if python3 or type(_x) == unicode:
00556 _x = _x.encode('utf-8')
00557 length = len(_x)
00558 buff.write(struct.pack('<I%ss'%length, length, _x))
00559 length = len(self.zmp.points)
00560 buff.write(_struct_I.pack(length))
00561 for val1 in self.zmp.points:
00562 _v46 = val1.header
00563 buff.write(_struct_I.pack(_v46.seq))
00564 _v47 = _v46.stamp
00565 _x = _v47
00566 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00567 _x = _v46.frame_id
00568 length = len(_x)
00569 if python3 or type(_x) == unicode:
00570 _x = _x.encode('utf-8')
00571 length = len(_x)
00572 buff.write(struct.pack('<I%ss'%length, length, _x))
00573 _v48 = val1.point
00574 _x = _v48
00575 buff.write(_struct_2d.pack(_x.x, _x.y))
00576 except struct.error as se: self._check_types(se)
00577 except TypeError as te: self._check_types(te)
00578
00579 def deserialize_numpy(self, str, numpy):
00580 """
00581 unpack serialized message in str into this message instance using numpy for array types
00582 :param str: byte array of serialized message, ``str``
00583 :param numpy: numpy python module
00584 """
00585 try:
00586 if self.left_foot is None:
00587 self.left_foot = nav_msgs.msg.Path()
00588 if self.right_foot is None:
00589 self.right_foot = nav_msgs.msg.Path()
00590 if self.center_of_mass is None:
00591 self.center_of_mass = walk_msgs.msg.PathPoint3d()
00592 if self.zmp is None:
00593 self.zmp = walk_msgs.msg.PathPoint2d()
00594 end = 0
00595 _x = self
00596 start = end
00597 end += 12
00598 (_x.left_foot.header.seq, _x.left_foot.header.stamp.secs, _x.left_foot.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00599 start = end
00600 end += 4
00601 (length,) = _struct_I.unpack(str[start:end])
00602 start = end
00603 end += length
00604 if python3:
00605 self.left_foot.header.frame_id = str[start:end].decode('utf-8')
00606 else:
00607 self.left_foot.header.frame_id = str[start:end]
00608 start = end
00609 end += 4
00610 (length,) = _struct_I.unpack(str[start:end])
00611 self.left_foot.poses = []
00612 for i in range(0, length):
00613 val1 = geometry_msgs.msg.PoseStamped()
00614 _v49 = val1.header
00615 start = end
00616 end += 4
00617 (_v49.seq,) = _struct_I.unpack(str[start:end])
00618 _v50 = _v49.stamp
00619 _x = _v50
00620 start = end
00621 end += 8
00622 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
00623 start = end
00624 end += 4
00625 (length,) = _struct_I.unpack(str[start:end])
00626 start = end
00627 end += length
00628 if python3:
00629 _v49.frame_id = str[start:end].decode('utf-8')
00630 else:
00631 _v49.frame_id = str[start:end]
00632 _v51 = val1.pose
00633 _v52 = _v51.position
00634 _x = _v52
00635 start = end
00636 end += 24
00637 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
00638 _v53 = _v51.orientation
00639 _x = _v53
00640 start = end
00641 end += 32
00642 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
00643 self.left_foot.poses.append(val1)
00644 _x = self
00645 start = end
00646 end += 12
00647 (_x.right_foot.header.seq, _x.right_foot.header.stamp.secs, _x.right_foot.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00648 start = end
00649 end += 4
00650 (length,) = _struct_I.unpack(str[start:end])
00651 start = end
00652 end += length
00653 if python3:
00654 self.right_foot.header.frame_id = str[start:end].decode('utf-8')
00655 else:
00656 self.right_foot.header.frame_id = str[start:end]
00657 start = end
00658 end += 4
00659 (length,) = _struct_I.unpack(str[start:end])
00660 self.right_foot.poses = []
00661 for i in range(0, length):
00662 val1 = geometry_msgs.msg.PoseStamped()
00663 _v54 = val1.header
00664 start = end
00665 end += 4
00666 (_v54.seq,) = _struct_I.unpack(str[start:end])
00667 _v55 = _v54.stamp
00668 _x = _v55
00669 start = end
00670 end += 8
00671 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
00672 start = end
00673 end += 4
00674 (length,) = _struct_I.unpack(str[start:end])
00675 start = end
00676 end += length
00677 if python3:
00678 _v54.frame_id = str[start:end].decode('utf-8')
00679 else:
00680 _v54.frame_id = str[start:end]
00681 _v56 = val1.pose
00682 _v57 = _v56.position
00683 _x = _v57
00684 start = end
00685 end += 24
00686 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
00687 _v58 = _v56.orientation
00688 _x = _v58
00689 start = end
00690 end += 32
00691 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
00692 self.right_foot.poses.append(val1)
00693 _x = self
00694 start = end
00695 end += 12
00696 (_x.center_of_mass.header.seq, _x.center_of_mass.header.stamp.secs, _x.center_of_mass.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00697 start = end
00698 end += 4
00699 (length,) = _struct_I.unpack(str[start:end])
00700 start = end
00701 end += length
00702 if python3:
00703 self.center_of_mass.header.frame_id = str[start:end].decode('utf-8')
00704 else:
00705 self.center_of_mass.header.frame_id = str[start:end]
00706 start = end
00707 end += 4
00708 (length,) = _struct_I.unpack(str[start:end])
00709 self.center_of_mass.points = []
00710 for i in range(0, length):
00711 val1 = geometry_msgs.msg.PointStamped()
00712 _v59 = val1.header
00713 start = end
00714 end += 4
00715 (_v59.seq,) = _struct_I.unpack(str[start:end])
00716 _v60 = _v59.stamp
00717 _x = _v60
00718 start = end
00719 end += 8
00720 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
00721 start = end
00722 end += 4
00723 (length,) = _struct_I.unpack(str[start:end])
00724 start = end
00725 end += length
00726 if python3:
00727 _v59.frame_id = str[start:end].decode('utf-8')
00728 else:
00729 _v59.frame_id = str[start:end]
00730 _v61 = val1.point
00731 _x = _v61
00732 start = end
00733 end += 24
00734 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
00735 self.center_of_mass.points.append(val1)
00736 _x = self
00737 start = end
00738 end += 12
00739 (_x.zmp.header.seq, _x.zmp.header.stamp.secs, _x.zmp.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00740 start = end
00741 end += 4
00742 (length,) = _struct_I.unpack(str[start:end])
00743 start = end
00744 end += length
00745 if python3:
00746 self.zmp.header.frame_id = str[start:end].decode('utf-8')
00747 else:
00748 self.zmp.header.frame_id = str[start:end]
00749 start = end
00750 end += 4
00751 (length,) = _struct_I.unpack(str[start:end])
00752 self.zmp.points = []
00753 for i in range(0, length):
00754 val1 = walk_msgs.msg.Point2dStamped()
00755 _v62 = val1.header
00756 start = end
00757 end += 4
00758 (_v62.seq,) = _struct_I.unpack(str[start:end])
00759 _v63 = _v62.stamp
00760 _x = _v63
00761 start = end
00762 end += 8
00763 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
00764 start = end
00765 end += 4
00766 (length,) = _struct_I.unpack(str[start:end])
00767 start = end
00768 end += length
00769 if python3:
00770 _v62.frame_id = str[start:end].decode('utf-8')
00771 else:
00772 _v62.frame_id = str[start:end]
00773 _v64 = val1.point
00774 _x = _v64
00775 start = end
00776 end += 16
00777 (_x.x, _x.y,) = _struct_2d.unpack(str[start:end])
00778 self.zmp.points.append(val1)
00779 return self
00780 except struct.error as e:
00781 raise genpy.DeserializationError(e)
00782
00783 _struct_I = genpy.struct_I
00784 _struct_2d = struct.Struct("<2d")
00785 _struct_3I = struct.Struct("<3I")
00786 _struct_4d = struct.Struct("<4d")
00787 _struct_2I = struct.Struct("<2I")
00788 _struct_3d = struct.Struct("<3d")