00001 """autogenerated by genpy from shell_execution_action_server/ShellCommandAction.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 actionlib_msgs.msg
00009 import shell_execution_action_server.msg
00010 import std_msgs.msg
00011
00012 class ShellCommandAction(genpy.Message):
00013 _md5sum = "e47151c393c91a946601934b650d608b"
00014 _type = "shell_execution_action_server/ShellCommandAction"
00015 _has_header = False
00016 _full_text = """# ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00017
00018 ShellCommandActionGoal action_goal
00019 ShellCommandActionResult action_result
00020 ShellCommandActionFeedback action_feedback
00021
00022 ================================================================================
00023 MSG: shell_execution_action_server/ShellCommandActionGoal
00024 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00025
00026 Header header
00027 actionlib_msgs/GoalID goal_id
00028 ShellCommandGoal 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: shell_execution_action_server/ShellCommandGoal
00063 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00064 #Goal definition (e.g. "sleep 3; echo hello; ls /nonexisting23")
00065 string command
00066
00067 ================================================================================
00068 MSG: shell_execution_action_server/ShellCommandActionResult
00069 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00070
00071 Header header
00072 actionlib_msgs/GoalStatus status
00073 ShellCommandResult result
00074
00075 ================================================================================
00076 MSG: actionlib_msgs/GoalStatus
00077 GoalID goal_id
00078 uint8 status
00079 uint8 PENDING = 0 # The goal has yet to be processed by the action server
00080 uint8 ACTIVE = 1 # The goal is currently being processed by the action server
00081 uint8 PREEMPTED = 2 # The goal received a cancel request after it started executing
00082 # and has since completed its execution (Terminal State)
00083 uint8 SUCCEEDED = 3 # The goal was achieved successfully by the action server (Terminal State)
00084 uint8 ABORTED = 4 # The goal was aborted during execution by the action server due
00085 # to some failure (Terminal State)
00086 uint8 REJECTED = 5 # The goal was rejected by the action server without being processed,
00087 # because the goal was unattainable or invalid (Terminal State)
00088 uint8 PREEMPTING = 6 # The goal received a cancel request after it started executing
00089 # and has not yet completed execution
00090 uint8 RECALLING = 7 # The goal received a cancel request before it started executing,
00091 # but the action server has not yet confirmed that the goal is canceled
00092 uint8 RECALLED = 8 # The goal received a cancel request before it started executing
00093 # and was successfully cancelled (Terminal State)
00094 uint8 LOST = 9 # An action client can determine that a goal is LOST. This should not be
00095 # sent over the wire by an action server
00096
00097 #Allow for the user to associate a string with GoalStatus for debugging
00098 string text
00099
00100
00101 ================================================================================
00102 MSG: shell_execution_action_server/ShellCommandResult
00103 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00104 #Result (accumulated output from start to end)
00105 string stdout
00106 string stderr
00107 uint8 exit_code
00108
00109 ================================================================================
00110 MSG: shell_execution_action_server/ShellCommandActionFeedback
00111 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00112
00113 Header header
00114 actionlib_msgs/GoalStatus status
00115 ShellCommandFeedback feedback
00116
00117 ================================================================================
00118 MSG: shell_execution_action_server/ShellCommandFeedback
00119 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00120 #Feedback (current output)
00121 string stdout
00122 string stderr
00123
00124
00125 """
00126 __slots__ = ['action_goal','action_result','action_feedback']
00127 _slot_types = ['shell_execution_action_server/ShellCommandActionGoal','shell_execution_action_server/ShellCommandActionResult','shell_execution_action_server/ShellCommandActionFeedback']
00128
00129 def __init__(self, *args, **kwds):
00130 """
00131 Constructor. Any message fields that are implicitly/explicitly
00132 set to None will be assigned a default value. The recommend
00133 use is keyword arguments as this is more robust to future message
00134 changes. You cannot mix in-order arguments and keyword arguments.
00135
00136 The available fields are:
00137 action_goal,action_result,action_feedback
00138
00139 :param args: complete set of field values, in .msg order
00140 :param kwds: use keyword arguments corresponding to message field names
00141 to set specific fields.
00142 """
00143 if args or kwds:
00144 super(ShellCommandAction, self).__init__(*args, **kwds)
00145
00146 if self.action_goal is None:
00147 self.action_goal = shell_execution_action_server.msg.ShellCommandActionGoal()
00148 if self.action_result is None:
00149 self.action_result = shell_execution_action_server.msg.ShellCommandActionResult()
00150 if self.action_feedback is None:
00151 self.action_feedback = shell_execution_action_server.msg.ShellCommandActionFeedback()
00152 else:
00153 self.action_goal = shell_execution_action_server.msg.ShellCommandActionGoal()
00154 self.action_result = shell_execution_action_server.msg.ShellCommandActionResult()
00155 self.action_feedback = shell_execution_action_server.msg.ShellCommandActionFeedback()
00156
00157 def _get_types(self):
00158 """
00159 internal API method
00160 """
00161 return self._slot_types
00162
00163 def serialize(self, buff):
00164 """
00165 serialize message into buffer
00166 :param buff: buffer, ``StringIO``
00167 """
00168 try:
00169 _x = self
00170 buff.write(_struct_3I.pack(_x.action_goal.header.seq, _x.action_goal.header.stamp.secs, _x.action_goal.header.stamp.nsecs))
00171 _x = self.action_goal.header.frame_id
00172 length = len(_x)
00173 if python3 or type(_x) == unicode:
00174 _x = _x.encode('utf-8')
00175 length = len(_x)
00176 buff.write(struct.pack('<I%ss'%length, length, _x))
00177 _x = self
00178 buff.write(_struct_2I.pack(_x.action_goal.goal_id.stamp.secs, _x.action_goal.goal_id.stamp.nsecs))
00179 _x = self.action_goal.goal_id.id
00180 length = len(_x)
00181 if python3 or type(_x) == unicode:
00182 _x = _x.encode('utf-8')
00183 length = len(_x)
00184 buff.write(struct.pack('<I%ss'%length, length, _x))
00185 _x = self.action_goal.goal.command
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_3I.pack(_x.action_result.header.seq, _x.action_result.header.stamp.secs, _x.action_result.header.stamp.nsecs))
00193 _x = self.action_result.header.frame_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 _x = self
00200 buff.write(_struct_2I.pack(_x.action_result.status.goal_id.stamp.secs, _x.action_result.status.goal_id.stamp.nsecs))
00201 _x = self.action_result.status.goal_id.id
00202 length = len(_x)
00203 if python3 or type(_x) == unicode:
00204 _x = _x.encode('utf-8')
00205 length = len(_x)
00206 buff.write(struct.pack('<I%ss'%length, length, _x))
00207 buff.write(_struct_B.pack(self.action_result.status.status))
00208 _x = self.action_result.status.text
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.action_result.result.stdout
00215 length = len(_x)
00216 if python3 or type(_x) == unicode:
00217 _x = _x.encode('utf-8')
00218 length = len(_x)
00219 buff.write(struct.pack('<I%ss'%length, length, _x))
00220 _x = self.action_result.result.stderr
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 _x = self
00227 buff.write(_struct_B3I.pack(_x.action_result.result.exit_code, _x.action_feedback.header.seq, _x.action_feedback.header.stamp.secs, _x.action_feedback.header.stamp.nsecs))
00228 _x = self.action_feedback.header.frame_id
00229 length = len(_x)
00230 if python3 or type(_x) == unicode:
00231 _x = _x.encode('utf-8')
00232 length = len(_x)
00233 buff.write(struct.pack('<I%ss'%length, length, _x))
00234 _x = self
00235 buff.write(_struct_2I.pack(_x.action_feedback.status.goal_id.stamp.secs, _x.action_feedback.status.goal_id.stamp.nsecs))
00236 _x = self.action_feedback.status.goal_id.id
00237 length = len(_x)
00238 if python3 or type(_x) == unicode:
00239 _x = _x.encode('utf-8')
00240 length = len(_x)
00241 buff.write(struct.pack('<I%ss'%length, length, _x))
00242 buff.write(_struct_B.pack(self.action_feedback.status.status))
00243 _x = self.action_feedback.status.text
00244 length = len(_x)
00245 if python3 or type(_x) == unicode:
00246 _x = _x.encode('utf-8')
00247 length = len(_x)
00248 buff.write(struct.pack('<I%ss'%length, length, _x))
00249 _x = self.action_feedback.feedback.stdout
00250 length = len(_x)
00251 if python3 or type(_x) == unicode:
00252 _x = _x.encode('utf-8')
00253 length = len(_x)
00254 buff.write(struct.pack('<I%ss'%length, length, _x))
00255 _x = self.action_feedback.feedback.stderr
00256 length = len(_x)
00257 if python3 or type(_x) == unicode:
00258 _x = _x.encode('utf-8')
00259 length = len(_x)
00260 buff.write(struct.pack('<I%ss'%length, length, _x))
00261 except struct.error as se: self._check_types(se)
00262 except TypeError as te: self._check_types(te)
00263
00264 def deserialize(self, str):
00265 """
00266 unpack serialized message in str into this message instance
00267 :param str: byte array of serialized message, ``str``
00268 """
00269 try:
00270 if self.action_goal is None:
00271 self.action_goal = shell_execution_action_server.msg.ShellCommandActionGoal()
00272 if self.action_result is None:
00273 self.action_result = shell_execution_action_server.msg.ShellCommandActionResult()
00274 if self.action_feedback is None:
00275 self.action_feedback = shell_execution_action_server.msg.ShellCommandActionFeedback()
00276 end = 0
00277 _x = self
00278 start = end
00279 end += 12
00280 (_x.action_goal.header.seq, _x.action_goal.header.stamp.secs, _x.action_goal.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00281 start = end
00282 end += 4
00283 (length,) = _struct_I.unpack(str[start:end])
00284 start = end
00285 end += length
00286 if python3:
00287 self.action_goal.header.frame_id = str[start:end].decode('utf-8')
00288 else:
00289 self.action_goal.header.frame_id = str[start:end]
00290 _x = self
00291 start = end
00292 end += 8
00293 (_x.action_goal.goal_id.stamp.secs, _x.action_goal.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00294 start = end
00295 end += 4
00296 (length,) = _struct_I.unpack(str[start:end])
00297 start = end
00298 end += length
00299 if python3:
00300 self.action_goal.goal_id.id = str[start:end].decode('utf-8')
00301 else:
00302 self.action_goal.goal_id.id = str[start:end]
00303 start = end
00304 end += 4
00305 (length,) = _struct_I.unpack(str[start:end])
00306 start = end
00307 end += length
00308 if python3:
00309 self.action_goal.goal.command = str[start:end].decode('utf-8')
00310 else:
00311 self.action_goal.goal.command = str[start:end]
00312 _x = self
00313 start = end
00314 end += 12
00315 (_x.action_result.header.seq, _x.action_result.header.stamp.secs, _x.action_result.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00316 start = end
00317 end += 4
00318 (length,) = _struct_I.unpack(str[start:end])
00319 start = end
00320 end += length
00321 if python3:
00322 self.action_result.header.frame_id = str[start:end].decode('utf-8')
00323 else:
00324 self.action_result.header.frame_id = str[start:end]
00325 _x = self
00326 start = end
00327 end += 8
00328 (_x.action_result.status.goal_id.stamp.secs, _x.action_result.status.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00329 start = end
00330 end += 4
00331 (length,) = _struct_I.unpack(str[start:end])
00332 start = end
00333 end += length
00334 if python3:
00335 self.action_result.status.goal_id.id = str[start:end].decode('utf-8')
00336 else:
00337 self.action_result.status.goal_id.id = str[start:end]
00338 start = end
00339 end += 1
00340 (self.action_result.status.status,) = _struct_B.unpack(str[start:end])
00341 start = end
00342 end += 4
00343 (length,) = _struct_I.unpack(str[start:end])
00344 start = end
00345 end += length
00346 if python3:
00347 self.action_result.status.text = str[start:end].decode('utf-8')
00348 else:
00349 self.action_result.status.text = str[start:end]
00350 start = end
00351 end += 4
00352 (length,) = _struct_I.unpack(str[start:end])
00353 start = end
00354 end += length
00355 if python3:
00356 self.action_result.result.stdout = str[start:end].decode('utf-8')
00357 else:
00358 self.action_result.result.stdout = str[start:end]
00359 start = end
00360 end += 4
00361 (length,) = _struct_I.unpack(str[start:end])
00362 start = end
00363 end += length
00364 if python3:
00365 self.action_result.result.stderr = str[start:end].decode('utf-8')
00366 else:
00367 self.action_result.result.stderr = str[start:end]
00368 _x = self
00369 start = end
00370 end += 13
00371 (_x.action_result.result.exit_code, _x.action_feedback.header.seq, _x.action_feedback.header.stamp.secs, _x.action_feedback.header.stamp.nsecs,) = _struct_B3I.unpack(str[start:end])
00372 start = end
00373 end += 4
00374 (length,) = _struct_I.unpack(str[start:end])
00375 start = end
00376 end += length
00377 if python3:
00378 self.action_feedback.header.frame_id = str[start:end].decode('utf-8')
00379 else:
00380 self.action_feedback.header.frame_id = str[start:end]
00381 _x = self
00382 start = end
00383 end += 8
00384 (_x.action_feedback.status.goal_id.stamp.secs, _x.action_feedback.status.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00385 start = end
00386 end += 4
00387 (length,) = _struct_I.unpack(str[start:end])
00388 start = end
00389 end += length
00390 if python3:
00391 self.action_feedback.status.goal_id.id = str[start:end].decode('utf-8')
00392 else:
00393 self.action_feedback.status.goal_id.id = str[start:end]
00394 start = end
00395 end += 1
00396 (self.action_feedback.status.status,) = _struct_B.unpack(str[start:end])
00397 start = end
00398 end += 4
00399 (length,) = _struct_I.unpack(str[start:end])
00400 start = end
00401 end += length
00402 if python3:
00403 self.action_feedback.status.text = str[start:end].decode('utf-8')
00404 else:
00405 self.action_feedback.status.text = str[start:end]
00406 start = end
00407 end += 4
00408 (length,) = _struct_I.unpack(str[start:end])
00409 start = end
00410 end += length
00411 if python3:
00412 self.action_feedback.feedback.stdout = str[start:end].decode('utf-8')
00413 else:
00414 self.action_feedback.feedback.stdout = str[start:end]
00415 start = end
00416 end += 4
00417 (length,) = _struct_I.unpack(str[start:end])
00418 start = end
00419 end += length
00420 if python3:
00421 self.action_feedback.feedback.stderr = str[start:end].decode('utf-8')
00422 else:
00423 self.action_feedback.feedback.stderr = str[start:end]
00424 return self
00425 except struct.error as e:
00426 raise genpy.DeserializationError(e)
00427
00428
00429 def serialize_numpy(self, buff, numpy):
00430 """
00431 serialize message with numpy array types into buffer
00432 :param buff: buffer, ``StringIO``
00433 :param numpy: numpy python module
00434 """
00435 try:
00436 _x = self
00437 buff.write(_struct_3I.pack(_x.action_goal.header.seq, _x.action_goal.header.stamp.secs, _x.action_goal.header.stamp.nsecs))
00438 _x = self.action_goal.header.frame_id
00439 length = len(_x)
00440 if python3 or type(_x) == unicode:
00441 _x = _x.encode('utf-8')
00442 length = len(_x)
00443 buff.write(struct.pack('<I%ss'%length, length, _x))
00444 _x = self
00445 buff.write(_struct_2I.pack(_x.action_goal.goal_id.stamp.secs, _x.action_goal.goal_id.stamp.nsecs))
00446 _x = self.action_goal.goal_id.id
00447 length = len(_x)
00448 if python3 or type(_x) == unicode:
00449 _x = _x.encode('utf-8')
00450 length = len(_x)
00451 buff.write(struct.pack('<I%ss'%length, length, _x))
00452 _x = self.action_goal.goal.command
00453 length = len(_x)
00454 if python3 or type(_x) == unicode:
00455 _x = _x.encode('utf-8')
00456 length = len(_x)
00457 buff.write(struct.pack('<I%ss'%length, length, _x))
00458 _x = self
00459 buff.write(_struct_3I.pack(_x.action_result.header.seq, _x.action_result.header.stamp.secs, _x.action_result.header.stamp.nsecs))
00460 _x = self.action_result.header.frame_id
00461 length = len(_x)
00462 if python3 or type(_x) == unicode:
00463 _x = _x.encode('utf-8')
00464 length = len(_x)
00465 buff.write(struct.pack('<I%ss'%length, length, _x))
00466 _x = self
00467 buff.write(_struct_2I.pack(_x.action_result.status.goal_id.stamp.secs, _x.action_result.status.goal_id.stamp.nsecs))
00468 _x = self.action_result.status.goal_id.id
00469 length = len(_x)
00470 if python3 or type(_x) == unicode:
00471 _x = _x.encode('utf-8')
00472 length = len(_x)
00473 buff.write(struct.pack('<I%ss'%length, length, _x))
00474 buff.write(_struct_B.pack(self.action_result.status.status))
00475 _x = self.action_result.status.text
00476 length = len(_x)
00477 if python3 or type(_x) == unicode:
00478 _x = _x.encode('utf-8')
00479 length = len(_x)
00480 buff.write(struct.pack('<I%ss'%length, length, _x))
00481 _x = self.action_result.result.stdout
00482 length = len(_x)
00483 if python3 or type(_x) == unicode:
00484 _x = _x.encode('utf-8')
00485 length = len(_x)
00486 buff.write(struct.pack('<I%ss'%length, length, _x))
00487 _x = self.action_result.result.stderr
00488 length = len(_x)
00489 if python3 or type(_x) == unicode:
00490 _x = _x.encode('utf-8')
00491 length = len(_x)
00492 buff.write(struct.pack('<I%ss'%length, length, _x))
00493 _x = self
00494 buff.write(_struct_B3I.pack(_x.action_result.result.exit_code, _x.action_feedback.header.seq, _x.action_feedback.header.stamp.secs, _x.action_feedback.header.stamp.nsecs))
00495 _x = self.action_feedback.header.frame_id
00496 length = len(_x)
00497 if python3 or type(_x) == unicode:
00498 _x = _x.encode('utf-8')
00499 length = len(_x)
00500 buff.write(struct.pack('<I%ss'%length, length, _x))
00501 _x = self
00502 buff.write(_struct_2I.pack(_x.action_feedback.status.goal_id.stamp.secs, _x.action_feedback.status.goal_id.stamp.nsecs))
00503 _x = self.action_feedback.status.goal_id.id
00504 length = len(_x)
00505 if python3 or type(_x) == unicode:
00506 _x = _x.encode('utf-8')
00507 length = len(_x)
00508 buff.write(struct.pack('<I%ss'%length, length, _x))
00509 buff.write(_struct_B.pack(self.action_feedback.status.status))
00510 _x = self.action_feedback.status.text
00511 length = len(_x)
00512 if python3 or type(_x) == unicode:
00513 _x = _x.encode('utf-8')
00514 length = len(_x)
00515 buff.write(struct.pack('<I%ss'%length, length, _x))
00516 _x = self.action_feedback.feedback.stdout
00517 length = len(_x)
00518 if python3 or type(_x) == unicode:
00519 _x = _x.encode('utf-8')
00520 length = len(_x)
00521 buff.write(struct.pack('<I%ss'%length, length, _x))
00522 _x = self.action_feedback.feedback.stderr
00523 length = len(_x)
00524 if python3 or type(_x) == unicode:
00525 _x = _x.encode('utf-8')
00526 length = len(_x)
00527 buff.write(struct.pack('<I%ss'%length, length, _x))
00528 except struct.error as se: self._check_types(se)
00529 except TypeError as te: self._check_types(te)
00530
00531 def deserialize_numpy(self, str, numpy):
00532 """
00533 unpack serialized message in str into this message instance using numpy for array types
00534 :param str: byte array of serialized message, ``str``
00535 :param numpy: numpy python module
00536 """
00537 try:
00538 if self.action_goal is None:
00539 self.action_goal = shell_execution_action_server.msg.ShellCommandActionGoal()
00540 if self.action_result is None:
00541 self.action_result = shell_execution_action_server.msg.ShellCommandActionResult()
00542 if self.action_feedback is None:
00543 self.action_feedback = shell_execution_action_server.msg.ShellCommandActionFeedback()
00544 end = 0
00545 _x = self
00546 start = end
00547 end += 12
00548 (_x.action_goal.header.seq, _x.action_goal.header.stamp.secs, _x.action_goal.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00549 start = end
00550 end += 4
00551 (length,) = _struct_I.unpack(str[start:end])
00552 start = end
00553 end += length
00554 if python3:
00555 self.action_goal.header.frame_id = str[start:end].decode('utf-8')
00556 else:
00557 self.action_goal.header.frame_id = str[start:end]
00558 _x = self
00559 start = end
00560 end += 8
00561 (_x.action_goal.goal_id.stamp.secs, _x.action_goal.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00562 start = end
00563 end += 4
00564 (length,) = _struct_I.unpack(str[start:end])
00565 start = end
00566 end += length
00567 if python3:
00568 self.action_goal.goal_id.id = str[start:end].decode('utf-8')
00569 else:
00570 self.action_goal.goal_id.id = str[start:end]
00571 start = end
00572 end += 4
00573 (length,) = _struct_I.unpack(str[start:end])
00574 start = end
00575 end += length
00576 if python3:
00577 self.action_goal.goal.command = str[start:end].decode('utf-8')
00578 else:
00579 self.action_goal.goal.command = str[start:end]
00580 _x = self
00581 start = end
00582 end += 12
00583 (_x.action_result.header.seq, _x.action_result.header.stamp.secs, _x.action_result.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00584 start = end
00585 end += 4
00586 (length,) = _struct_I.unpack(str[start:end])
00587 start = end
00588 end += length
00589 if python3:
00590 self.action_result.header.frame_id = str[start:end].decode('utf-8')
00591 else:
00592 self.action_result.header.frame_id = str[start:end]
00593 _x = self
00594 start = end
00595 end += 8
00596 (_x.action_result.status.goal_id.stamp.secs, _x.action_result.status.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00597 start = end
00598 end += 4
00599 (length,) = _struct_I.unpack(str[start:end])
00600 start = end
00601 end += length
00602 if python3:
00603 self.action_result.status.goal_id.id = str[start:end].decode('utf-8')
00604 else:
00605 self.action_result.status.goal_id.id = str[start:end]
00606 start = end
00607 end += 1
00608 (self.action_result.status.status,) = _struct_B.unpack(str[start:end])
00609 start = end
00610 end += 4
00611 (length,) = _struct_I.unpack(str[start:end])
00612 start = end
00613 end += length
00614 if python3:
00615 self.action_result.status.text = str[start:end].decode('utf-8')
00616 else:
00617 self.action_result.status.text = str[start:end]
00618 start = end
00619 end += 4
00620 (length,) = _struct_I.unpack(str[start:end])
00621 start = end
00622 end += length
00623 if python3:
00624 self.action_result.result.stdout = str[start:end].decode('utf-8')
00625 else:
00626 self.action_result.result.stdout = str[start:end]
00627 start = end
00628 end += 4
00629 (length,) = _struct_I.unpack(str[start:end])
00630 start = end
00631 end += length
00632 if python3:
00633 self.action_result.result.stderr = str[start:end].decode('utf-8')
00634 else:
00635 self.action_result.result.stderr = str[start:end]
00636 _x = self
00637 start = end
00638 end += 13
00639 (_x.action_result.result.exit_code, _x.action_feedback.header.seq, _x.action_feedback.header.stamp.secs, _x.action_feedback.header.stamp.nsecs,) = _struct_B3I.unpack(str[start:end])
00640 start = end
00641 end += 4
00642 (length,) = _struct_I.unpack(str[start:end])
00643 start = end
00644 end += length
00645 if python3:
00646 self.action_feedback.header.frame_id = str[start:end].decode('utf-8')
00647 else:
00648 self.action_feedback.header.frame_id = str[start:end]
00649 _x = self
00650 start = end
00651 end += 8
00652 (_x.action_feedback.status.goal_id.stamp.secs, _x.action_feedback.status.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00653 start = end
00654 end += 4
00655 (length,) = _struct_I.unpack(str[start:end])
00656 start = end
00657 end += length
00658 if python3:
00659 self.action_feedback.status.goal_id.id = str[start:end].decode('utf-8')
00660 else:
00661 self.action_feedback.status.goal_id.id = str[start:end]
00662 start = end
00663 end += 1
00664 (self.action_feedback.status.status,) = _struct_B.unpack(str[start:end])
00665 start = end
00666 end += 4
00667 (length,) = _struct_I.unpack(str[start:end])
00668 start = end
00669 end += length
00670 if python3:
00671 self.action_feedback.status.text = str[start:end].decode('utf-8')
00672 else:
00673 self.action_feedback.status.text = str[start:end]
00674 start = end
00675 end += 4
00676 (length,) = _struct_I.unpack(str[start:end])
00677 start = end
00678 end += length
00679 if python3:
00680 self.action_feedback.feedback.stdout = str[start:end].decode('utf-8')
00681 else:
00682 self.action_feedback.feedback.stdout = str[start:end]
00683 start = end
00684 end += 4
00685 (length,) = _struct_I.unpack(str[start:end])
00686 start = end
00687 end += length
00688 if python3:
00689 self.action_feedback.feedback.stderr = str[start:end].decode('utf-8')
00690 else:
00691 self.action_feedback.feedback.stderr = str[start:end]
00692 return self
00693 except struct.error as e:
00694 raise genpy.DeserializationError(e)
00695
00696 _struct_I = genpy.struct_I
00697 _struct_3I = struct.Struct("<3I")
00698 _struct_B = struct.Struct("<B")
00699 _struct_2I = struct.Struct("<2I")
00700 _struct_B3I = struct.Struct("<B3I")