00001 """autogenerated by genpy from pr2_controllers_msgs/SingleJointPositionAction.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 genpy
00008 import pr2_controllers_msgs.msg
00009 import actionlib_msgs.msg
00010 import std_msgs.msg
00011
00012 class SingleJointPositionAction(genpy.Message):
00013 _md5sum = "c4a786b7d53e5d0983decf967a5a779e"
00014 _type = "pr2_controllers_msgs/SingleJointPositionAction"
00015 _has_header = False
00016 _full_text = """# ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00017
00018 SingleJointPositionActionGoal action_goal
00019 SingleJointPositionActionResult action_result
00020 SingleJointPositionActionFeedback action_feedback
00021
00022 ================================================================================
00023 MSG: pr2_controllers_msgs/SingleJointPositionActionGoal
00024 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00025
00026 Header header
00027 actionlib_msgs/GoalID goal_id
00028 SingleJointPositionGoal goal
00029
00030 ================================================================================
00031 MSG: std_msgs/Header
00032 # Standard metadata for higher-level stamped data types.
00033 # This is generally used to communicate timestamped data
00034 # in a particular coordinate frame.
00035 #
00036 # sequence ID: consecutively increasing ID
00037 uint32 seq
00038 #Two-integer timestamp that is expressed as:
00039 # * stamp.secs: seconds (stamp_secs) since epoch
00040 # * stamp.nsecs: nanoseconds since stamp_secs
00041 # time-handling sugar is provided by the client library
00042 time stamp
00043 #Frame this data is associated with
00044 # 0: no frame
00045 # 1: global frame
00046 string frame_id
00047
00048 ================================================================================
00049 MSG: actionlib_msgs/GoalID
00050 # The stamp should store the time at which this goal was requested.
00051 # It is used by an action server when it tries to preempt all
00052 # goals that were requested before a certain time
00053 time stamp
00054
00055 # The id provides a way to associate feedback and
00056 # result message with specific goal requests. The id
00057 # specified must be unique.
00058 string id
00059
00060
00061 ================================================================================
00062 MSG: pr2_controllers_msgs/SingleJointPositionGoal
00063 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00064 float64 position
00065 duration min_duration
00066 float64 max_velocity
00067
00068 ================================================================================
00069 MSG: pr2_controllers_msgs/SingleJointPositionActionResult
00070 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00071
00072 Header header
00073 actionlib_msgs/GoalStatus status
00074 SingleJointPositionResult result
00075
00076 ================================================================================
00077 MSG: actionlib_msgs/GoalStatus
00078 GoalID goal_id
00079 uint8 status
00080 uint8 PENDING = 0 # The goal has yet to be processed by the action server
00081 uint8 ACTIVE = 1 # The goal is currently being processed by the action server
00082 uint8 PREEMPTED = 2 # The goal received a cancel request after it started executing
00083 # and has since completed its execution (Terminal State)
00084 uint8 SUCCEEDED = 3 # The goal was achieved successfully by the action server (Terminal State)
00085 uint8 ABORTED = 4 # The goal was aborted during execution by the action server due
00086 # to some failure (Terminal State)
00087 uint8 REJECTED = 5 # The goal was rejected by the action server without being processed,
00088 # because the goal was unattainable or invalid (Terminal State)
00089 uint8 PREEMPTING = 6 # The goal received a cancel request after it started executing
00090 # and has not yet completed execution
00091 uint8 RECALLING = 7 # The goal received a cancel request before it started executing,
00092 # but the action server has not yet confirmed that the goal is canceled
00093 uint8 RECALLED = 8 # The goal received a cancel request before it started executing
00094 # and was successfully cancelled (Terminal State)
00095 uint8 LOST = 9 # An action client can determine that a goal is LOST. This should not be
00096 # sent over the wire by an action server
00097
00098 #Allow for the user to associate a string with GoalStatus for debugging
00099 string text
00100
00101
00102 ================================================================================
00103 MSG: pr2_controllers_msgs/SingleJointPositionResult
00104 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00105
00106 ================================================================================
00107 MSG: pr2_controllers_msgs/SingleJointPositionActionFeedback
00108 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00109
00110 Header header
00111 actionlib_msgs/GoalStatus status
00112 SingleJointPositionFeedback feedback
00113
00114 ================================================================================
00115 MSG: pr2_controllers_msgs/SingleJointPositionFeedback
00116 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00117 Header header
00118 float64 position
00119 float64 velocity
00120 float64 error
00121
00122
00123 """
00124 __slots__ = ['action_goal','action_result','action_feedback']
00125 _slot_types = ['pr2_controllers_msgs/SingleJointPositionActionGoal','pr2_controllers_msgs/SingleJointPositionActionResult','pr2_controllers_msgs/SingleJointPositionActionFeedback']
00126
00127 def __init__(self, *args, **kwds):
00128 """
00129 Constructor. Any message fields that are implicitly/explicitly
00130 set to None will be assigned a default value. The recommend
00131 use is keyword arguments as this is more robust to future message
00132 changes. You cannot mix in-order arguments and keyword arguments.
00133
00134 The available fields are:
00135 action_goal,action_result,action_feedback
00136
00137 :param args: complete set of field values, in .msg order
00138 :param kwds: use keyword arguments corresponding to message field names
00139 to set specific fields.
00140 """
00141 if args or kwds:
00142 super(SingleJointPositionAction, self).__init__(*args, **kwds)
00143
00144 if self.action_goal is None:
00145 self.action_goal = pr2_controllers_msgs.msg.SingleJointPositionActionGoal()
00146 if self.action_result is None:
00147 self.action_result = pr2_controllers_msgs.msg.SingleJointPositionActionResult()
00148 if self.action_feedback is None:
00149 self.action_feedback = pr2_controllers_msgs.msg.SingleJointPositionActionFeedback()
00150 else:
00151 self.action_goal = pr2_controllers_msgs.msg.SingleJointPositionActionGoal()
00152 self.action_result = pr2_controllers_msgs.msg.SingleJointPositionActionResult()
00153 self.action_feedback = pr2_controllers_msgs.msg.SingleJointPositionActionFeedback()
00154
00155 def _get_types(self):
00156 """
00157 internal API method
00158 """
00159 return self._slot_types
00160
00161 def serialize(self, buff):
00162 """
00163 serialize message into buffer
00164 :param buff: buffer, ``StringIO``
00165 """
00166 try:
00167 _x = self
00168 buff.write(_struct_3I.pack(_x.action_goal.header.seq, _x.action_goal.header.stamp.secs, _x.action_goal.header.stamp.nsecs))
00169 _x = self.action_goal.header.frame_id
00170 length = len(_x)
00171 if python3 or type(_x) == unicode:
00172 _x = _x.encode('utf-8')
00173 length = len(_x)
00174 buff.write(struct.pack('<I%ss'%length, length, _x))
00175 _x = self
00176 buff.write(_struct_2I.pack(_x.action_goal.goal_id.stamp.secs, _x.action_goal.goal_id.stamp.nsecs))
00177 _x = self.action_goal.goal_id.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 _x = self
00184 buff.write(_struct_d2id3I.pack(_x.action_goal.goal.position, _x.action_goal.goal.min_duration.secs, _x.action_goal.goal.min_duration.nsecs, _x.action_goal.goal.max_velocity, _x.action_result.header.seq, _x.action_result.header.stamp.secs, _x.action_result.header.stamp.nsecs))
00185 _x = self.action_result.header.frame_id
00186 length = len(_x)
00187 if python3 or type(_x) == unicode:
00188 _x = _x.encode('utf-8')
00189 length = len(_x)
00190 buff.write(struct.pack('<I%ss'%length, length, _x))
00191 _x = self
00192 buff.write(_struct_2I.pack(_x.action_result.status.goal_id.stamp.secs, _x.action_result.status.goal_id.stamp.nsecs))
00193 _x = self.action_result.status.goal_id.id
00194 length = len(_x)
00195 if python3 or type(_x) == unicode:
00196 _x = _x.encode('utf-8')
00197 length = len(_x)
00198 buff.write(struct.pack('<I%ss'%length, length, _x))
00199 buff.write(_struct_B.pack(self.action_result.status.status))
00200 _x = self.action_result.status.text
00201 length = len(_x)
00202 if python3 or type(_x) == unicode:
00203 _x = _x.encode('utf-8')
00204 length = len(_x)
00205 buff.write(struct.pack('<I%ss'%length, length, _x))
00206 _x = self
00207 buff.write(_struct_3I.pack(_x.action_feedback.header.seq, _x.action_feedback.header.stamp.secs, _x.action_feedback.header.stamp.nsecs))
00208 _x = self.action_feedback.header.frame_id
00209 length = len(_x)
00210 if python3 or type(_x) == unicode:
00211 _x = _x.encode('utf-8')
00212 length = len(_x)
00213 buff.write(struct.pack('<I%ss'%length, length, _x))
00214 _x = self
00215 buff.write(_struct_2I.pack(_x.action_feedback.status.goal_id.stamp.secs, _x.action_feedback.status.goal_id.stamp.nsecs))
00216 _x = self.action_feedback.status.goal_id.id
00217 length = len(_x)
00218 if python3 or type(_x) == unicode:
00219 _x = _x.encode('utf-8')
00220 length = len(_x)
00221 buff.write(struct.pack('<I%ss'%length, length, _x))
00222 buff.write(_struct_B.pack(self.action_feedback.status.status))
00223 _x = self.action_feedback.status.text
00224 length = len(_x)
00225 if python3 or type(_x) == unicode:
00226 _x = _x.encode('utf-8')
00227 length = len(_x)
00228 buff.write(struct.pack('<I%ss'%length, length, _x))
00229 _x = self
00230 buff.write(_struct_3I.pack(_x.action_feedback.feedback.header.seq, _x.action_feedback.feedback.header.stamp.secs, _x.action_feedback.feedback.header.stamp.nsecs))
00231 _x = self.action_feedback.feedback.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 _x = self
00238 buff.write(_struct_3d.pack(_x.action_feedback.feedback.position, _x.action_feedback.feedback.velocity, _x.action_feedback.feedback.error))
00239 except struct.error as se: self._check_types(struct.error("%s: '%s' when writing '%s'" % (type(se), str(se), str(_x))))
00240 except TypeError as te: self._check_types(ValueError("%s: '%s' when writing '%s'" % (type(te), str(te), str(_x))))
00241
00242 def deserialize(self, str):
00243 """
00244 unpack serialized message in str into this message instance
00245 :param str: byte array of serialized message, ``str``
00246 """
00247 try:
00248 if self.action_goal is None:
00249 self.action_goal = pr2_controllers_msgs.msg.SingleJointPositionActionGoal()
00250 if self.action_result is None:
00251 self.action_result = pr2_controllers_msgs.msg.SingleJointPositionActionResult()
00252 if self.action_feedback is None:
00253 self.action_feedback = pr2_controllers_msgs.msg.SingleJointPositionActionFeedback()
00254 end = 0
00255 _x = self
00256 start = end
00257 end += 12
00258 (_x.action_goal.header.seq, _x.action_goal.header.stamp.secs, _x.action_goal.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00259 start = end
00260 end += 4
00261 (length,) = _struct_I.unpack(str[start:end])
00262 start = end
00263 end += length
00264 if python3:
00265 self.action_goal.header.frame_id = str[start:end].decode('utf-8')
00266 else:
00267 self.action_goal.header.frame_id = str[start:end]
00268 _x = self
00269 start = end
00270 end += 8
00271 (_x.action_goal.goal_id.stamp.secs, _x.action_goal.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00272 start = end
00273 end += 4
00274 (length,) = _struct_I.unpack(str[start:end])
00275 start = end
00276 end += length
00277 if python3:
00278 self.action_goal.goal_id.id = str[start:end].decode('utf-8')
00279 else:
00280 self.action_goal.goal_id.id = str[start:end]
00281 _x = self
00282 start = end
00283 end += 36
00284 (_x.action_goal.goal.position, _x.action_goal.goal.min_duration.secs, _x.action_goal.goal.min_duration.nsecs, _x.action_goal.goal.max_velocity, _x.action_result.header.seq, _x.action_result.header.stamp.secs, _x.action_result.header.stamp.nsecs,) = _struct_d2id3I.unpack(str[start:end])
00285 start = end
00286 end += 4
00287 (length,) = _struct_I.unpack(str[start:end])
00288 start = end
00289 end += length
00290 if python3:
00291 self.action_result.header.frame_id = str[start:end].decode('utf-8')
00292 else:
00293 self.action_result.header.frame_id = str[start:end]
00294 _x = self
00295 start = end
00296 end += 8
00297 (_x.action_result.status.goal_id.stamp.secs, _x.action_result.status.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00298 start = end
00299 end += 4
00300 (length,) = _struct_I.unpack(str[start:end])
00301 start = end
00302 end += length
00303 if python3:
00304 self.action_result.status.goal_id.id = str[start:end].decode('utf-8')
00305 else:
00306 self.action_result.status.goal_id.id = str[start:end]
00307 start = end
00308 end += 1
00309 (self.action_result.status.status,) = _struct_B.unpack(str[start:end])
00310 start = end
00311 end += 4
00312 (length,) = _struct_I.unpack(str[start:end])
00313 start = end
00314 end += length
00315 if python3:
00316 self.action_result.status.text = str[start:end].decode('utf-8')
00317 else:
00318 self.action_result.status.text = str[start:end]
00319 _x = self
00320 start = end
00321 end += 12
00322 (_x.action_feedback.header.seq, _x.action_feedback.header.stamp.secs, _x.action_feedback.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00323 start = end
00324 end += 4
00325 (length,) = _struct_I.unpack(str[start:end])
00326 start = end
00327 end += length
00328 if python3:
00329 self.action_feedback.header.frame_id = str[start:end].decode('utf-8')
00330 else:
00331 self.action_feedback.header.frame_id = str[start:end]
00332 _x = self
00333 start = end
00334 end += 8
00335 (_x.action_feedback.status.goal_id.stamp.secs, _x.action_feedback.status.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00336 start = end
00337 end += 4
00338 (length,) = _struct_I.unpack(str[start:end])
00339 start = end
00340 end += length
00341 if python3:
00342 self.action_feedback.status.goal_id.id = str[start:end].decode('utf-8')
00343 else:
00344 self.action_feedback.status.goal_id.id = str[start:end]
00345 start = end
00346 end += 1
00347 (self.action_feedback.status.status,) = _struct_B.unpack(str[start:end])
00348 start = end
00349 end += 4
00350 (length,) = _struct_I.unpack(str[start:end])
00351 start = end
00352 end += length
00353 if python3:
00354 self.action_feedback.status.text = str[start:end].decode('utf-8')
00355 else:
00356 self.action_feedback.status.text = str[start:end]
00357 _x = self
00358 start = end
00359 end += 12
00360 (_x.action_feedback.feedback.header.seq, _x.action_feedback.feedback.header.stamp.secs, _x.action_feedback.feedback.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00361 start = end
00362 end += 4
00363 (length,) = _struct_I.unpack(str[start:end])
00364 start = end
00365 end += length
00366 if python3:
00367 self.action_feedback.feedback.header.frame_id = str[start:end].decode('utf-8')
00368 else:
00369 self.action_feedback.feedback.header.frame_id = str[start:end]
00370 _x = self
00371 start = end
00372 end += 24
00373 (_x.action_feedback.feedback.position, _x.action_feedback.feedback.velocity, _x.action_feedback.feedback.error,) = _struct_3d.unpack(str[start:end])
00374 return self
00375 except struct.error as e:
00376 raise genpy.DeserializationError(e)
00377
00378
00379 def serialize_numpy(self, buff, numpy):
00380 """
00381 serialize message with numpy array types into buffer
00382 :param buff: buffer, ``StringIO``
00383 :param numpy: numpy python module
00384 """
00385 try:
00386 _x = self
00387 buff.write(_struct_3I.pack(_x.action_goal.header.seq, _x.action_goal.header.stamp.secs, _x.action_goal.header.stamp.nsecs))
00388 _x = self.action_goal.header.frame_id
00389 length = len(_x)
00390 if python3 or type(_x) == unicode:
00391 _x = _x.encode('utf-8')
00392 length = len(_x)
00393 buff.write(struct.pack('<I%ss'%length, length, _x))
00394 _x = self
00395 buff.write(_struct_2I.pack(_x.action_goal.goal_id.stamp.secs, _x.action_goal.goal_id.stamp.nsecs))
00396 _x = self.action_goal.goal_id.id
00397 length = len(_x)
00398 if python3 or type(_x) == unicode:
00399 _x = _x.encode('utf-8')
00400 length = len(_x)
00401 buff.write(struct.pack('<I%ss'%length, length, _x))
00402 _x = self
00403 buff.write(_struct_d2id3I.pack(_x.action_goal.goal.position, _x.action_goal.goal.min_duration.secs, _x.action_goal.goal.min_duration.nsecs, _x.action_goal.goal.max_velocity, _x.action_result.header.seq, _x.action_result.header.stamp.secs, _x.action_result.header.stamp.nsecs))
00404 _x = self.action_result.header.frame_id
00405 length = len(_x)
00406 if python3 or type(_x) == unicode:
00407 _x = _x.encode('utf-8')
00408 length = len(_x)
00409 buff.write(struct.pack('<I%ss'%length, length, _x))
00410 _x = self
00411 buff.write(_struct_2I.pack(_x.action_result.status.goal_id.stamp.secs, _x.action_result.status.goal_id.stamp.nsecs))
00412 _x = self.action_result.status.goal_id.id
00413 length = len(_x)
00414 if python3 or type(_x) == unicode:
00415 _x = _x.encode('utf-8')
00416 length = len(_x)
00417 buff.write(struct.pack('<I%ss'%length, length, _x))
00418 buff.write(_struct_B.pack(self.action_result.status.status))
00419 _x = self.action_result.status.text
00420 length = len(_x)
00421 if python3 or type(_x) == unicode:
00422 _x = _x.encode('utf-8')
00423 length = len(_x)
00424 buff.write(struct.pack('<I%ss'%length, length, _x))
00425 _x = self
00426 buff.write(_struct_3I.pack(_x.action_feedback.header.seq, _x.action_feedback.header.stamp.secs, _x.action_feedback.header.stamp.nsecs))
00427 _x = self.action_feedback.header.frame_id
00428 length = len(_x)
00429 if python3 or type(_x) == unicode:
00430 _x = _x.encode('utf-8')
00431 length = len(_x)
00432 buff.write(struct.pack('<I%ss'%length, length, _x))
00433 _x = self
00434 buff.write(_struct_2I.pack(_x.action_feedback.status.goal_id.stamp.secs, _x.action_feedback.status.goal_id.stamp.nsecs))
00435 _x = self.action_feedback.status.goal_id.id
00436 length = len(_x)
00437 if python3 or type(_x) == unicode:
00438 _x = _x.encode('utf-8')
00439 length = len(_x)
00440 buff.write(struct.pack('<I%ss'%length, length, _x))
00441 buff.write(_struct_B.pack(self.action_feedback.status.status))
00442 _x = self.action_feedback.status.text
00443 length = len(_x)
00444 if python3 or type(_x) == unicode:
00445 _x = _x.encode('utf-8')
00446 length = len(_x)
00447 buff.write(struct.pack('<I%ss'%length, length, _x))
00448 _x = self
00449 buff.write(_struct_3I.pack(_x.action_feedback.feedback.header.seq, _x.action_feedback.feedback.header.stamp.secs, _x.action_feedback.feedback.header.stamp.nsecs))
00450 _x = self.action_feedback.feedback.header.frame_id
00451 length = len(_x)
00452 if python3 or type(_x) == unicode:
00453 _x = _x.encode('utf-8')
00454 length = len(_x)
00455 buff.write(struct.pack('<I%ss'%length, length, _x))
00456 _x = self
00457 buff.write(_struct_3d.pack(_x.action_feedback.feedback.position, _x.action_feedback.feedback.velocity, _x.action_feedback.feedback.error))
00458 except struct.error as se: self._check_types(struct.error("%s: '%s' when writing '%s'" % (type(se), str(se), str(_x))))
00459 except TypeError as te: self._check_types(ValueError("%s: '%s' when writing '%s'" % (type(te), str(te), str(_x))))
00460
00461 def deserialize_numpy(self, str, numpy):
00462 """
00463 unpack serialized message in str into this message instance using numpy for array types
00464 :param str: byte array of serialized message, ``str``
00465 :param numpy: numpy python module
00466 """
00467 try:
00468 if self.action_goal is None:
00469 self.action_goal = pr2_controllers_msgs.msg.SingleJointPositionActionGoal()
00470 if self.action_result is None:
00471 self.action_result = pr2_controllers_msgs.msg.SingleJointPositionActionResult()
00472 if self.action_feedback is None:
00473 self.action_feedback = pr2_controllers_msgs.msg.SingleJointPositionActionFeedback()
00474 end = 0
00475 _x = self
00476 start = end
00477 end += 12
00478 (_x.action_goal.header.seq, _x.action_goal.header.stamp.secs, _x.action_goal.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00479 start = end
00480 end += 4
00481 (length,) = _struct_I.unpack(str[start:end])
00482 start = end
00483 end += length
00484 if python3:
00485 self.action_goal.header.frame_id = str[start:end].decode('utf-8')
00486 else:
00487 self.action_goal.header.frame_id = str[start:end]
00488 _x = self
00489 start = end
00490 end += 8
00491 (_x.action_goal.goal_id.stamp.secs, _x.action_goal.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00492 start = end
00493 end += 4
00494 (length,) = _struct_I.unpack(str[start:end])
00495 start = end
00496 end += length
00497 if python3:
00498 self.action_goal.goal_id.id = str[start:end].decode('utf-8')
00499 else:
00500 self.action_goal.goal_id.id = str[start:end]
00501 _x = self
00502 start = end
00503 end += 36
00504 (_x.action_goal.goal.position, _x.action_goal.goal.min_duration.secs, _x.action_goal.goal.min_duration.nsecs, _x.action_goal.goal.max_velocity, _x.action_result.header.seq, _x.action_result.header.stamp.secs, _x.action_result.header.stamp.nsecs,) = _struct_d2id3I.unpack(str[start:end])
00505 start = end
00506 end += 4
00507 (length,) = _struct_I.unpack(str[start:end])
00508 start = end
00509 end += length
00510 if python3:
00511 self.action_result.header.frame_id = str[start:end].decode('utf-8')
00512 else:
00513 self.action_result.header.frame_id = str[start:end]
00514 _x = self
00515 start = end
00516 end += 8
00517 (_x.action_result.status.goal_id.stamp.secs, _x.action_result.status.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00518 start = end
00519 end += 4
00520 (length,) = _struct_I.unpack(str[start:end])
00521 start = end
00522 end += length
00523 if python3:
00524 self.action_result.status.goal_id.id = str[start:end].decode('utf-8')
00525 else:
00526 self.action_result.status.goal_id.id = str[start:end]
00527 start = end
00528 end += 1
00529 (self.action_result.status.status,) = _struct_B.unpack(str[start:end])
00530 start = end
00531 end += 4
00532 (length,) = _struct_I.unpack(str[start:end])
00533 start = end
00534 end += length
00535 if python3:
00536 self.action_result.status.text = str[start:end].decode('utf-8')
00537 else:
00538 self.action_result.status.text = str[start:end]
00539 _x = self
00540 start = end
00541 end += 12
00542 (_x.action_feedback.header.seq, _x.action_feedback.header.stamp.secs, _x.action_feedback.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00543 start = end
00544 end += 4
00545 (length,) = _struct_I.unpack(str[start:end])
00546 start = end
00547 end += length
00548 if python3:
00549 self.action_feedback.header.frame_id = str[start:end].decode('utf-8')
00550 else:
00551 self.action_feedback.header.frame_id = str[start:end]
00552 _x = self
00553 start = end
00554 end += 8
00555 (_x.action_feedback.status.goal_id.stamp.secs, _x.action_feedback.status.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00556 start = end
00557 end += 4
00558 (length,) = _struct_I.unpack(str[start:end])
00559 start = end
00560 end += length
00561 if python3:
00562 self.action_feedback.status.goal_id.id = str[start:end].decode('utf-8')
00563 else:
00564 self.action_feedback.status.goal_id.id = str[start:end]
00565 start = end
00566 end += 1
00567 (self.action_feedback.status.status,) = _struct_B.unpack(str[start:end])
00568 start = end
00569 end += 4
00570 (length,) = _struct_I.unpack(str[start:end])
00571 start = end
00572 end += length
00573 if python3:
00574 self.action_feedback.status.text = str[start:end].decode('utf-8')
00575 else:
00576 self.action_feedback.status.text = str[start:end]
00577 _x = self
00578 start = end
00579 end += 12
00580 (_x.action_feedback.feedback.header.seq, _x.action_feedback.feedback.header.stamp.secs, _x.action_feedback.feedback.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00581 start = end
00582 end += 4
00583 (length,) = _struct_I.unpack(str[start:end])
00584 start = end
00585 end += length
00586 if python3:
00587 self.action_feedback.feedback.header.frame_id = str[start:end].decode('utf-8')
00588 else:
00589 self.action_feedback.feedback.header.frame_id = str[start:end]
00590 _x = self
00591 start = end
00592 end += 24
00593 (_x.action_feedback.feedback.position, _x.action_feedback.feedback.velocity, _x.action_feedback.feedback.error,) = _struct_3d.unpack(str[start:end])
00594 return self
00595 except struct.error as e:
00596 raise genpy.DeserializationError(e)
00597
00598 _struct_I = genpy.struct_I
00599 _struct_3I = struct.Struct("<3I")
00600 _struct_d2id3I = struct.Struct("<d2id3I")
00601 _struct_2I = struct.Struct("<2I")
00602 _struct_B = struct.Struct("<B")
00603 _struct_3d = struct.Struct("<3d")