$search
00001 """autogenerated by genmsg_py from GetRobotStateRequest.msg. Do not edit.""" 00002 import roslib.message 00003 import struct 00004 00005 00006 class GetRobotStateRequest(roslib.message.Message): 00007 _md5sum = "d41d8cd98f00b204e9800998ecf8427e" 00008 _type = "arm_navigation_msgs/GetRobotStateRequest" 00009 _has_header = False #flag to mark the presence of a Header object 00010 _full_text = """ 00011 00012 00013 00014 """ 00015 __slots__ = [] 00016 _slot_types = [] 00017 00018 def __init__(self, *args, **kwds): 00019 """ 00020 Constructor. Any message fields that are implicitly/explicitly 00021 set to None will be assigned a default value. The recommend 00022 use is keyword arguments as this is more robust to future message 00023 changes. You cannot mix in-order arguments and keyword arguments. 00024 00025 The available fields are: 00026 00027 00028 @param args: complete set of field values, in .msg order 00029 @param kwds: use keyword arguments corresponding to message field names 00030 to set specific fields. 00031 """ 00032 if args or kwds: 00033 super(GetRobotStateRequest, self).__init__(*args, **kwds) 00034 00035 def _get_types(self): 00036 """ 00037 internal API method 00038 """ 00039 return self._slot_types 00040 00041 def serialize(self, buff): 00042 """ 00043 serialize message into buffer 00044 @param buff: buffer 00045 @type buff: StringIO 00046 """ 00047 try: 00048 pass 00049 except struct.error as se: self._check_types(se) 00050 except TypeError as te: self._check_types(te) 00051 00052 def deserialize(self, str): 00053 """ 00054 unpack serialized message in str into this message instance 00055 @param str: byte array of serialized message 00056 @type str: str 00057 """ 00058 try: 00059 end = 0 00060 return self 00061 except struct.error as e: 00062 raise roslib.message.DeserializationError(e) #most likely buffer underfill 00063 00064 00065 def serialize_numpy(self, buff, numpy): 00066 """ 00067 serialize message with numpy array types into buffer 00068 @param buff: buffer 00069 @type buff: StringIO 00070 @param numpy: numpy python module 00071 @type numpy module 00072 """ 00073 try: 00074 pass 00075 except struct.error as se: self._check_types(se) 00076 except TypeError as te: self._check_types(te) 00077 00078 def deserialize_numpy(self, str, numpy): 00079 """ 00080 unpack serialized message in str into this message instance using numpy for array types 00081 @param str: byte array of serialized message 00082 @type str: str 00083 @param numpy: numpy python module 00084 @type numpy: module 00085 """ 00086 try: 00087 end = 0 00088 return self 00089 except struct.error as e: 00090 raise roslib.message.DeserializationError(e) #most likely buffer underfill 00091 00092 _struct_I = roslib.message.struct_I 00093 """autogenerated by genmsg_py from GetRobotStateResponse.msg. Do not edit.""" 00094 import roslib.message 00095 import struct 00096 00097 import arm_navigation_msgs.msg 00098 import geometry_msgs.msg 00099 import std_msgs.msg 00100 import roslib.rostime 00101 import sensor_msgs.msg 00102 00103 class GetRobotStateResponse(roslib.message.Message): 00104 _md5sum = "9799d82a26586bf3963962b7c3038f40" 00105 _type = "arm_navigation_msgs/GetRobotStateResponse" 00106 _has_header = False #flag to mark the presence of a Header object 00107 _full_text = """ 00108 00109 arm_navigation_msgs/RobotState robot_state 00110 00111 00112 00113 00114 arm_navigation_msgs/ArmNavigationErrorCodes error_code 00115 00116 00117 ================================================================================ 00118 MSG: arm_navigation_msgs/RobotState 00119 # This message contains information about the robot state, i.e. the positions of its joints and links 00120 sensor_msgs/JointState joint_state 00121 arm_navigation_msgs/MultiDOFJointState multi_dof_joint_state 00122 00123 ================================================================================ 00124 MSG: sensor_msgs/JointState 00125 # This is a message that holds data to describe the state of a set of torque controlled joints. 00126 # 00127 # The state of each joint (revolute or prismatic) is defined by: 00128 # * the position of the joint (rad or m), 00129 # * the velocity of the joint (rad/s or m/s) and 00130 # * the effort that is applied in the joint (Nm or N). 00131 # 00132 # Each joint is uniquely identified by its name 00133 # The header specifies the time at which the joint states were recorded. All the joint states 00134 # in one message have to be recorded at the same time. 00135 # 00136 # This message consists of a multiple arrays, one for each part of the joint state. 00137 # The goal is to make each of the fields optional. When e.g. your joints have no 00138 # effort associated with them, you can leave the effort array empty. 00139 # 00140 # All arrays in this message should have the same size, or be empty. 00141 # This is the only way to uniquely associate the joint name with the correct 00142 # states. 00143 00144 00145 Header header 00146 00147 string[] name 00148 float64[] position 00149 float64[] velocity 00150 float64[] effort 00151 00152 ================================================================================ 00153 MSG: std_msgs/Header 00154 # Standard metadata for higher-level stamped data types. 00155 # This is generally used to communicate timestamped data 00156 # in a particular coordinate frame. 00157 # 00158 # sequence ID: consecutively increasing ID 00159 uint32 seq 00160 #Two-integer timestamp that is expressed as: 00161 # * stamp.secs: seconds (stamp_secs) since epoch 00162 # * stamp.nsecs: nanoseconds since stamp_secs 00163 # time-handling sugar is provided by the client library 00164 time stamp 00165 #Frame this data is associated with 00166 # 0: no frame 00167 # 1: global frame 00168 string frame_id 00169 00170 ================================================================================ 00171 MSG: arm_navigation_msgs/MultiDOFJointState 00172 #A representation of a multi-dof joint state 00173 time stamp 00174 string[] joint_names 00175 string[] frame_ids 00176 string[] child_frame_ids 00177 geometry_msgs/Pose[] poses 00178 00179 ================================================================================ 00180 MSG: geometry_msgs/Pose 00181 # A representation of pose in free space, composed of postion and orientation. 00182 Point position 00183 Quaternion orientation 00184 00185 ================================================================================ 00186 MSG: geometry_msgs/Point 00187 # This contains the position of a point in free space 00188 float64 x 00189 float64 y 00190 float64 z 00191 00192 ================================================================================ 00193 MSG: geometry_msgs/Quaternion 00194 # This represents an orientation in free space in quaternion form. 00195 00196 float64 x 00197 float64 y 00198 float64 z 00199 float64 w 00200 00201 ================================================================================ 00202 MSG: arm_navigation_msgs/ArmNavigationErrorCodes 00203 int32 val 00204 00205 # overall behavior 00206 int32 PLANNING_FAILED=-1 00207 int32 SUCCESS=1 00208 int32 TIMED_OUT=-2 00209 00210 # start state errors 00211 int32 START_STATE_IN_COLLISION=-3 00212 int32 START_STATE_VIOLATES_PATH_CONSTRAINTS=-4 00213 00214 # goal errors 00215 int32 GOAL_IN_COLLISION=-5 00216 int32 GOAL_VIOLATES_PATH_CONSTRAINTS=-6 00217 00218 # robot state 00219 int32 INVALID_ROBOT_STATE=-7 00220 int32 INCOMPLETE_ROBOT_STATE=-8 00221 00222 # planning request errors 00223 int32 INVALID_PLANNER_ID=-9 00224 int32 INVALID_NUM_PLANNING_ATTEMPTS=-10 00225 int32 INVALID_ALLOWED_PLANNING_TIME=-11 00226 int32 INVALID_GROUP_NAME=-12 00227 int32 INVALID_GOAL_JOINT_CONSTRAINTS=-13 00228 int32 INVALID_GOAL_POSITION_CONSTRAINTS=-14 00229 int32 INVALID_GOAL_ORIENTATION_CONSTRAINTS=-15 00230 int32 INVALID_PATH_JOINT_CONSTRAINTS=-16 00231 int32 INVALID_PATH_POSITION_CONSTRAINTS=-17 00232 int32 INVALID_PATH_ORIENTATION_CONSTRAINTS=-18 00233 00234 # state/trajectory monitor errors 00235 int32 INVALID_TRAJECTORY=-19 00236 int32 INVALID_INDEX=-20 00237 int32 JOINT_LIMITS_VIOLATED=-21 00238 int32 PATH_CONSTRAINTS_VIOLATED=-22 00239 int32 COLLISION_CONSTRAINTS_VIOLATED=-23 00240 int32 GOAL_CONSTRAINTS_VIOLATED=-24 00241 int32 JOINTS_NOT_MOVING=-25 00242 int32 TRAJECTORY_CONTROLLER_FAILED=-26 00243 00244 # system errors 00245 int32 FRAME_TRANSFORM_FAILURE=-27 00246 int32 COLLISION_CHECKING_UNAVAILABLE=-28 00247 int32 ROBOT_STATE_STALE=-29 00248 int32 SENSOR_INFO_STALE=-30 00249 00250 # kinematics errors 00251 int32 NO_IK_SOLUTION=-31 00252 int32 INVALID_LINK_NAME=-32 00253 int32 IK_LINK_IN_COLLISION=-33 00254 int32 NO_FK_SOLUTION=-34 00255 int32 KINEMATICS_STATE_IN_COLLISION=-35 00256 00257 # general errors 00258 int32 INVALID_TIMEOUT=-36 00259 00260 00261 """ 00262 __slots__ = ['robot_state','error_code'] 00263 _slot_types = ['arm_navigation_msgs/RobotState','arm_navigation_msgs/ArmNavigationErrorCodes'] 00264 00265 def __init__(self, *args, **kwds): 00266 """ 00267 Constructor. Any message fields that are implicitly/explicitly 00268 set to None will be assigned a default value. The recommend 00269 use is keyword arguments as this is more robust to future message 00270 changes. You cannot mix in-order arguments and keyword arguments. 00271 00272 The available fields are: 00273 robot_state,error_code 00274 00275 @param args: complete set of field values, in .msg order 00276 @param kwds: use keyword arguments corresponding to message field names 00277 to set specific fields. 00278 """ 00279 if args or kwds: 00280 super(GetRobotStateResponse, self).__init__(*args, **kwds) 00281 #message fields cannot be None, assign default values for those that are 00282 if self.robot_state is None: 00283 self.robot_state = arm_navigation_msgs.msg.RobotState() 00284 if self.error_code is None: 00285 self.error_code = arm_navigation_msgs.msg.ArmNavigationErrorCodes() 00286 else: 00287 self.robot_state = arm_navigation_msgs.msg.RobotState() 00288 self.error_code = arm_navigation_msgs.msg.ArmNavigationErrorCodes() 00289 00290 def _get_types(self): 00291 """ 00292 internal API method 00293 """ 00294 return self._slot_types 00295 00296 def serialize(self, buff): 00297 """ 00298 serialize message into buffer 00299 @param buff: buffer 00300 @type buff: StringIO 00301 """ 00302 try: 00303 _x = self 00304 buff.write(_struct_3I.pack(_x.robot_state.joint_state.header.seq, _x.robot_state.joint_state.header.stamp.secs, _x.robot_state.joint_state.header.stamp.nsecs)) 00305 _x = self.robot_state.joint_state.header.frame_id 00306 length = len(_x) 00307 buff.write(struct.pack('<I%ss'%length, length, _x)) 00308 length = len(self.robot_state.joint_state.name) 00309 buff.write(_struct_I.pack(length)) 00310 for val1 in self.robot_state.joint_state.name: 00311 length = len(val1) 00312 buff.write(struct.pack('<I%ss'%length, length, val1)) 00313 length = len(self.robot_state.joint_state.position) 00314 buff.write(_struct_I.pack(length)) 00315 pattern = '<%sd'%length 00316 buff.write(struct.pack(pattern, *self.robot_state.joint_state.position)) 00317 length = len(self.robot_state.joint_state.velocity) 00318 buff.write(_struct_I.pack(length)) 00319 pattern = '<%sd'%length 00320 buff.write(struct.pack(pattern, *self.robot_state.joint_state.velocity)) 00321 length = len(self.robot_state.joint_state.effort) 00322 buff.write(_struct_I.pack(length)) 00323 pattern = '<%sd'%length 00324 buff.write(struct.pack(pattern, *self.robot_state.joint_state.effort)) 00325 _x = self 00326 buff.write(_struct_2I.pack(_x.robot_state.multi_dof_joint_state.stamp.secs, _x.robot_state.multi_dof_joint_state.stamp.nsecs)) 00327 length = len(self.robot_state.multi_dof_joint_state.joint_names) 00328 buff.write(_struct_I.pack(length)) 00329 for val1 in self.robot_state.multi_dof_joint_state.joint_names: 00330 length = len(val1) 00331 buff.write(struct.pack('<I%ss'%length, length, val1)) 00332 length = len(self.robot_state.multi_dof_joint_state.frame_ids) 00333 buff.write(_struct_I.pack(length)) 00334 for val1 in self.robot_state.multi_dof_joint_state.frame_ids: 00335 length = len(val1) 00336 buff.write(struct.pack('<I%ss'%length, length, val1)) 00337 length = len(self.robot_state.multi_dof_joint_state.child_frame_ids) 00338 buff.write(_struct_I.pack(length)) 00339 for val1 in self.robot_state.multi_dof_joint_state.child_frame_ids: 00340 length = len(val1) 00341 buff.write(struct.pack('<I%ss'%length, length, val1)) 00342 length = len(self.robot_state.multi_dof_joint_state.poses) 00343 buff.write(_struct_I.pack(length)) 00344 for val1 in self.robot_state.multi_dof_joint_state.poses: 00345 _v1 = val1.position 00346 _x = _v1 00347 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 00348 _v2 = val1.orientation 00349 _x = _v2 00350 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 00351 buff.write(_struct_i.pack(self.error_code.val)) 00352 except struct.error as se: self._check_types(se) 00353 except TypeError as te: self._check_types(te) 00354 00355 def deserialize(self, str): 00356 """ 00357 unpack serialized message in str into this message instance 00358 @param str: byte array of serialized message 00359 @type str: str 00360 """ 00361 try: 00362 if self.robot_state is None: 00363 self.robot_state = arm_navigation_msgs.msg.RobotState() 00364 if self.error_code is None: 00365 self.error_code = arm_navigation_msgs.msg.ArmNavigationErrorCodes() 00366 end = 0 00367 _x = self 00368 start = end 00369 end += 12 00370 (_x.robot_state.joint_state.header.seq, _x.robot_state.joint_state.header.stamp.secs, _x.robot_state.joint_state.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end]) 00371 start = end 00372 end += 4 00373 (length,) = _struct_I.unpack(str[start:end]) 00374 start = end 00375 end += length 00376 self.robot_state.joint_state.header.frame_id = str[start:end] 00377 start = end 00378 end += 4 00379 (length,) = _struct_I.unpack(str[start:end]) 00380 self.robot_state.joint_state.name = [] 00381 for i in range(0, length): 00382 start = end 00383 end += 4 00384 (length,) = _struct_I.unpack(str[start:end]) 00385 start = end 00386 end += length 00387 val1 = str[start:end] 00388 self.robot_state.joint_state.name.append(val1) 00389 start = end 00390 end += 4 00391 (length,) = _struct_I.unpack(str[start:end]) 00392 pattern = '<%sd'%length 00393 start = end 00394 end += struct.calcsize(pattern) 00395 self.robot_state.joint_state.position = struct.unpack(pattern, str[start:end]) 00396 start = end 00397 end += 4 00398 (length,) = _struct_I.unpack(str[start:end]) 00399 pattern = '<%sd'%length 00400 start = end 00401 end += struct.calcsize(pattern) 00402 self.robot_state.joint_state.velocity = struct.unpack(pattern, str[start:end]) 00403 start = end 00404 end += 4 00405 (length,) = _struct_I.unpack(str[start:end]) 00406 pattern = '<%sd'%length 00407 start = end 00408 end += struct.calcsize(pattern) 00409 self.robot_state.joint_state.effort = struct.unpack(pattern, str[start:end]) 00410 _x = self 00411 start = end 00412 end += 8 00413 (_x.robot_state.multi_dof_joint_state.stamp.secs, _x.robot_state.multi_dof_joint_state.stamp.nsecs,) = _struct_2I.unpack(str[start:end]) 00414 start = end 00415 end += 4 00416 (length,) = _struct_I.unpack(str[start:end]) 00417 self.robot_state.multi_dof_joint_state.joint_names = [] 00418 for i in range(0, length): 00419 start = end 00420 end += 4 00421 (length,) = _struct_I.unpack(str[start:end]) 00422 start = end 00423 end += length 00424 val1 = str[start:end] 00425 self.robot_state.multi_dof_joint_state.joint_names.append(val1) 00426 start = end 00427 end += 4 00428 (length,) = _struct_I.unpack(str[start:end]) 00429 self.robot_state.multi_dof_joint_state.frame_ids = [] 00430 for i in range(0, length): 00431 start = end 00432 end += 4 00433 (length,) = _struct_I.unpack(str[start:end]) 00434 start = end 00435 end += length 00436 val1 = str[start:end] 00437 self.robot_state.multi_dof_joint_state.frame_ids.append(val1) 00438 start = end 00439 end += 4 00440 (length,) = _struct_I.unpack(str[start:end]) 00441 self.robot_state.multi_dof_joint_state.child_frame_ids = [] 00442 for i in range(0, length): 00443 start = end 00444 end += 4 00445 (length,) = _struct_I.unpack(str[start:end]) 00446 start = end 00447 end += length 00448 val1 = str[start:end] 00449 self.robot_state.multi_dof_joint_state.child_frame_ids.append(val1) 00450 start = end 00451 end += 4 00452 (length,) = _struct_I.unpack(str[start:end]) 00453 self.robot_state.multi_dof_joint_state.poses = [] 00454 for i in range(0, length): 00455 val1 = geometry_msgs.msg.Pose() 00456 _v3 = val1.position 00457 _x = _v3 00458 start = end 00459 end += 24 00460 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 00461 _v4 = val1.orientation 00462 _x = _v4 00463 start = end 00464 end += 32 00465 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 00466 self.robot_state.multi_dof_joint_state.poses.append(val1) 00467 start = end 00468 end += 4 00469 (self.error_code.val,) = _struct_i.unpack(str[start:end]) 00470 return self 00471 except struct.error as e: 00472 raise roslib.message.DeserializationError(e) #most likely buffer underfill 00473 00474 00475 def serialize_numpy(self, buff, numpy): 00476 """ 00477 serialize message with numpy array types into buffer 00478 @param buff: buffer 00479 @type buff: StringIO 00480 @param numpy: numpy python module 00481 @type numpy module 00482 """ 00483 try: 00484 _x = self 00485 buff.write(_struct_3I.pack(_x.robot_state.joint_state.header.seq, _x.robot_state.joint_state.header.stamp.secs, _x.robot_state.joint_state.header.stamp.nsecs)) 00486 _x = self.robot_state.joint_state.header.frame_id 00487 length = len(_x) 00488 buff.write(struct.pack('<I%ss'%length, length, _x)) 00489 length = len(self.robot_state.joint_state.name) 00490 buff.write(_struct_I.pack(length)) 00491 for val1 in self.robot_state.joint_state.name: 00492 length = len(val1) 00493 buff.write(struct.pack('<I%ss'%length, length, val1)) 00494 length = len(self.robot_state.joint_state.position) 00495 buff.write(_struct_I.pack(length)) 00496 pattern = '<%sd'%length 00497 buff.write(self.robot_state.joint_state.position.tostring()) 00498 length = len(self.robot_state.joint_state.velocity) 00499 buff.write(_struct_I.pack(length)) 00500 pattern = '<%sd'%length 00501 buff.write(self.robot_state.joint_state.velocity.tostring()) 00502 length = len(self.robot_state.joint_state.effort) 00503 buff.write(_struct_I.pack(length)) 00504 pattern = '<%sd'%length 00505 buff.write(self.robot_state.joint_state.effort.tostring()) 00506 _x = self 00507 buff.write(_struct_2I.pack(_x.robot_state.multi_dof_joint_state.stamp.secs, _x.robot_state.multi_dof_joint_state.stamp.nsecs)) 00508 length = len(self.robot_state.multi_dof_joint_state.joint_names) 00509 buff.write(_struct_I.pack(length)) 00510 for val1 in self.robot_state.multi_dof_joint_state.joint_names: 00511 length = len(val1) 00512 buff.write(struct.pack('<I%ss'%length, length, val1)) 00513 length = len(self.robot_state.multi_dof_joint_state.frame_ids) 00514 buff.write(_struct_I.pack(length)) 00515 for val1 in self.robot_state.multi_dof_joint_state.frame_ids: 00516 length = len(val1) 00517 buff.write(struct.pack('<I%ss'%length, length, val1)) 00518 length = len(self.robot_state.multi_dof_joint_state.child_frame_ids) 00519 buff.write(_struct_I.pack(length)) 00520 for val1 in self.robot_state.multi_dof_joint_state.child_frame_ids: 00521 length = len(val1) 00522 buff.write(struct.pack('<I%ss'%length, length, val1)) 00523 length = len(self.robot_state.multi_dof_joint_state.poses) 00524 buff.write(_struct_I.pack(length)) 00525 for val1 in self.robot_state.multi_dof_joint_state.poses: 00526 _v5 = val1.position 00527 _x = _v5 00528 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 00529 _v6 = val1.orientation 00530 _x = _v6 00531 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 00532 buff.write(_struct_i.pack(self.error_code.val)) 00533 except struct.error as se: self._check_types(se) 00534 except TypeError as te: self._check_types(te) 00535 00536 def deserialize_numpy(self, str, numpy): 00537 """ 00538 unpack serialized message in str into this message instance using numpy for array types 00539 @param str: byte array of serialized message 00540 @type str: str 00541 @param numpy: numpy python module 00542 @type numpy: module 00543 """ 00544 try: 00545 if self.robot_state is None: 00546 self.robot_state = arm_navigation_msgs.msg.RobotState() 00547 if self.error_code is None: 00548 self.error_code = arm_navigation_msgs.msg.ArmNavigationErrorCodes() 00549 end = 0 00550 _x = self 00551 start = end 00552 end += 12 00553 (_x.robot_state.joint_state.header.seq, _x.robot_state.joint_state.header.stamp.secs, _x.robot_state.joint_state.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end]) 00554 start = end 00555 end += 4 00556 (length,) = _struct_I.unpack(str[start:end]) 00557 start = end 00558 end += length 00559 self.robot_state.joint_state.header.frame_id = str[start:end] 00560 start = end 00561 end += 4 00562 (length,) = _struct_I.unpack(str[start:end]) 00563 self.robot_state.joint_state.name = [] 00564 for i in range(0, length): 00565 start = end 00566 end += 4 00567 (length,) = _struct_I.unpack(str[start:end]) 00568 start = end 00569 end += length 00570 val1 = str[start:end] 00571 self.robot_state.joint_state.name.append(val1) 00572 start = end 00573 end += 4 00574 (length,) = _struct_I.unpack(str[start:end]) 00575 pattern = '<%sd'%length 00576 start = end 00577 end += struct.calcsize(pattern) 00578 self.robot_state.joint_state.position = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length) 00579 start = end 00580 end += 4 00581 (length,) = _struct_I.unpack(str[start:end]) 00582 pattern = '<%sd'%length 00583 start = end 00584 end += struct.calcsize(pattern) 00585 self.robot_state.joint_state.velocity = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length) 00586 start = end 00587 end += 4 00588 (length,) = _struct_I.unpack(str[start:end]) 00589 pattern = '<%sd'%length 00590 start = end 00591 end += struct.calcsize(pattern) 00592 self.robot_state.joint_state.effort = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length) 00593 _x = self 00594 start = end 00595 end += 8 00596 (_x.robot_state.multi_dof_joint_state.stamp.secs, _x.robot_state.multi_dof_joint_state.stamp.nsecs,) = _struct_2I.unpack(str[start:end]) 00597 start = end 00598 end += 4 00599 (length,) = _struct_I.unpack(str[start:end]) 00600 self.robot_state.multi_dof_joint_state.joint_names = [] 00601 for i in range(0, length): 00602 start = end 00603 end += 4 00604 (length,) = _struct_I.unpack(str[start:end]) 00605 start = end 00606 end += length 00607 val1 = str[start:end] 00608 self.robot_state.multi_dof_joint_state.joint_names.append(val1) 00609 start = end 00610 end += 4 00611 (length,) = _struct_I.unpack(str[start:end]) 00612 self.robot_state.multi_dof_joint_state.frame_ids = [] 00613 for i in range(0, length): 00614 start = end 00615 end += 4 00616 (length,) = _struct_I.unpack(str[start:end]) 00617 start = end 00618 end += length 00619 val1 = str[start:end] 00620 self.robot_state.multi_dof_joint_state.frame_ids.append(val1) 00621 start = end 00622 end += 4 00623 (length,) = _struct_I.unpack(str[start:end]) 00624 self.robot_state.multi_dof_joint_state.child_frame_ids = [] 00625 for i in range(0, length): 00626 start = end 00627 end += 4 00628 (length,) = _struct_I.unpack(str[start:end]) 00629 start = end 00630 end += length 00631 val1 = str[start:end] 00632 self.robot_state.multi_dof_joint_state.child_frame_ids.append(val1) 00633 start = end 00634 end += 4 00635 (length,) = _struct_I.unpack(str[start:end]) 00636 self.robot_state.multi_dof_joint_state.poses = [] 00637 for i in range(0, length): 00638 val1 = geometry_msgs.msg.Pose() 00639 _v7 = val1.position 00640 _x = _v7 00641 start = end 00642 end += 24 00643 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 00644 _v8 = val1.orientation 00645 _x = _v8 00646 start = end 00647 end += 32 00648 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 00649 self.robot_state.multi_dof_joint_state.poses.append(val1) 00650 start = end 00651 end += 4 00652 (self.error_code.val,) = _struct_i.unpack(str[start:end]) 00653 return self 00654 except struct.error as e: 00655 raise roslib.message.DeserializationError(e) #most likely buffer underfill 00656 00657 _struct_I = roslib.message.struct_I 00658 _struct_i = struct.Struct("<i") 00659 _struct_4d = struct.Struct("<4d") 00660 _struct_3I = struct.Struct("<3I") 00661 _struct_2I = struct.Struct("<2I") 00662 _struct_3d = struct.Struct("<3d") 00663 class GetRobotState(roslib.message.ServiceDefinition): 00664 _type = 'arm_navigation_msgs/GetRobotState' 00665 _md5sum = '9799d82a26586bf3963962b7c3038f40' 00666 _request_class = GetRobotStateRequest 00667 _response_class = GetRobotStateResponse