00001 """autogenerated by genpy from pddl_msgs/PDDLPlannerAction.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 pddl_msgs.msg
00008 import genpy
00009 import actionlib_msgs.msg
00010 import std_msgs.msg
00011
00012 class PDDLPlannerAction(genpy.Message):
00013 _md5sum = "bb22bdc870351814f3a6c5c17f24195c"
00014 _type = "pddl_msgs/PDDLPlannerAction"
00015 _has_header = False
00016 _full_text = """# ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00017
00018 PDDLPlannerActionGoal action_goal
00019 PDDLPlannerActionResult action_result
00020 PDDLPlannerActionFeedback action_feedback
00021
00022 ================================================================================
00023 MSG: pddl_msgs/PDDLPlannerActionGoal
00024 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00025
00026 Header header
00027 actionlib_msgs/GoalID goal_id
00028 PDDLPlannerGoal 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: pddl_msgs/PDDLPlannerGoal
00063 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00064 # goal
00065 pddl_msgs/PDDLDomain domain
00066 pddl_msgs/PDDLProblem problem
00067
00068 ================================================================================
00069 MSG: pddl_msgs/PDDLDomain
00070 string name
00071 string requirements
00072 string[] types
00073 string[] constants
00074 string[] predicates
00075 pddl_msgs/PDDLAction[] actions
00076 string[] functions
00077
00078 ================================================================================
00079 MSG: pddl_msgs/PDDLAction
00080 string name
00081 # write String in S expression like "(and foo var)"
00082 string parameters
00083 string precondition
00084 string effect
00085 string on_condition
00086
00087 ================================================================================
00088 MSG: pddl_msgs/PDDLProblem
00089 string name # name of problem
00090 string domain # name of domain to use
00091 pddl_msgs/PDDLObject[] objects # how to represent type?
00092 string[] initial # initial condition
00093 string goal # goal conjunction
00094
00095 ================================================================================
00096 MSG: pddl_msgs/PDDLObject
00097 # definition of PDDLObject
00098 string name
00099 string type
00100
00101 ================================================================================
00102 MSG: pddl_msgs/PDDLPlannerActionResult
00103 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00104
00105 Header header
00106 actionlib_msgs/GoalStatus status
00107 PDDLPlannerResult result
00108
00109 ================================================================================
00110 MSG: actionlib_msgs/GoalStatus
00111 GoalID goal_id
00112 uint8 status
00113 uint8 PENDING = 0 # The goal has yet to be processed by the action server
00114 uint8 ACTIVE = 1 # The goal is currently being processed by the action server
00115 uint8 PREEMPTED = 2 # The goal received a cancel request after it started executing
00116 # and has since completed its execution (Terminal State)
00117 uint8 SUCCEEDED = 3 # The goal was achieved successfully by the action server (Terminal State)
00118 uint8 ABORTED = 4 # The goal was aborted during execution by the action server due
00119 # to some failure (Terminal State)
00120 uint8 REJECTED = 5 # The goal was rejected by the action server without being processed,
00121 # because the goal was unattainable or invalid (Terminal State)
00122 uint8 PREEMPTING = 6 # The goal received a cancel request after it started executing
00123 # and has not yet completed execution
00124 uint8 RECALLING = 7 # The goal received a cancel request before it started executing,
00125 # but the action server has not yet confirmed that the goal is canceled
00126 uint8 RECALLED = 8 # The goal received a cancel request before it started executing
00127 # and was successfully cancelled (Terminal State)
00128 uint8 LOST = 9 # An action client can determine that a goal is LOST. This should not be
00129 # sent over the wire by an action server
00130
00131 #Allow for the user to associate a string with GoalStatus for debugging
00132 string text
00133
00134
00135 ================================================================================
00136 MSG: pddl_msgs/PDDLPlannerResult
00137 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00138 #result
00139 string[] data
00140 pddl_msgs/PDDLStep[] sequence
00141
00142 ================================================================================
00143 MSG: pddl_msgs/PDDLStep
00144 string action
00145 string[] args
00146
00147 ================================================================================
00148 MSG: pddl_msgs/PDDLPlannerActionFeedback
00149 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00150
00151 Header header
00152 actionlib_msgs/GoalStatus status
00153 PDDLPlannerFeedback feedback
00154
00155 ================================================================================
00156 MSG: pddl_msgs/PDDLPlannerFeedback
00157 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00158 #feedback
00159
00160
00161 """
00162 __slots__ = ['action_goal','action_result','action_feedback']
00163 _slot_types = ['pddl_msgs/PDDLPlannerActionGoal','pddl_msgs/PDDLPlannerActionResult','pddl_msgs/PDDLPlannerActionFeedback']
00164
00165 def __init__(self, *args, **kwds):
00166 """
00167 Constructor. Any message fields that are implicitly/explicitly
00168 set to None will be assigned a default value. The recommend
00169 use is keyword arguments as this is more robust to future message
00170 changes. You cannot mix in-order arguments and keyword arguments.
00171
00172 The available fields are:
00173 action_goal,action_result,action_feedback
00174
00175 :param args: complete set of field values, in .msg order
00176 :param kwds: use keyword arguments corresponding to message field names
00177 to set specific fields.
00178 """
00179 if args or kwds:
00180 super(PDDLPlannerAction, self).__init__(*args, **kwds)
00181
00182 if self.action_goal is None:
00183 self.action_goal = pddl_msgs.msg.PDDLPlannerActionGoal()
00184 if self.action_result is None:
00185 self.action_result = pddl_msgs.msg.PDDLPlannerActionResult()
00186 if self.action_feedback is None:
00187 self.action_feedback = pddl_msgs.msg.PDDLPlannerActionFeedback()
00188 else:
00189 self.action_goal = pddl_msgs.msg.PDDLPlannerActionGoal()
00190 self.action_result = pddl_msgs.msg.PDDLPlannerActionResult()
00191 self.action_feedback = pddl_msgs.msg.PDDLPlannerActionFeedback()
00192
00193 def _get_types(self):
00194 """
00195 internal API method
00196 """
00197 return self._slot_types
00198
00199 def serialize(self, buff):
00200 """
00201 serialize message into buffer
00202 :param buff: buffer, ``StringIO``
00203 """
00204 try:
00205 _x = self
00206 buff.write(_struct_3I.pack(_x.action_goal.header.seq, _x.action_goal.header.stamp.secs, _x.action_goal.header.stamp.nsecs))
00207 _x = self.action_goal.header.frame_id
00208 length = len(_x)
00209 if python3 or type(_x) == unicode:
00210 _x = _x.encode('utf-8')
00211 length = len(_x)
00212 buff.write(struct.pack('<I%ss'%length, length, _x))
00213 _x = self
00214 buff.write(_struct_2I.pack(_x.action_goal.goal_id.stamp.secs, _x.action_goal.goal_id.stamp.nsecs))
00215 _x = self.action_goal.goal_id.id
00216 length = len(_x)
00217 if python3 or type(_x) == unicode:
00218 _x = _x.encode('utf-8')
00219 length = len(_x)
00220 buff.write(struct.pack('<I%ss'%length, length, _x))
00221 _x = self.action_goal.goal.domain.name
00222 length = len(_x)
00223 if python3 or type(_x) == unicode:
00224 _x = _x.encode('utf-8')
00225 length = len(_x)
00226 buff.write(struct.pack('<I%ss'%length, length, _x))
00227 _x = self.action_goal.goal.domain.requirements
00228 length = len(_x)
00229 if python3 or type(_x) == unicode:
00230 _x = _x.encode('utf-8')
00231 length = len(_x)
00232 buff.write(struct.pack('<I%ss'%length, length, _x))
00233 length = len(self.action_goal.goal.domain.types)
00234 buff.write(_struct_I.pack(length))
00235 for val1 in self.action_goal.goal.domain.types:
00236 length = len(val1)
00237 if python3 or type(val1) == unicode:
00238 val1 = val1.encode('utf-8')
00239 length = len(val1)
00240 buff.write(struct.pack('<I%ss'%length, length, val1))
00241 length = len(self.action_goal.goal.domain.constants)
00242 buff.write(_struct_I.pack(length))
00243 for val1 in self.action_goal.goal.domain.constants:
00244 length = len(val1)
00245 if python3 or type(val1) == unicode:
00246 val1 = val1.encode('utf-8')
00247 length = len(val1)
00248 buff.write(struct.pack('<I%ss'%length, length, val1))
00249 length = len(self.action_goal.goal.domain.predicates)
00250 buff.write(_struct_I.pack(length))
00251 for val1 in self.action_goal.goal.domain.predicates:
00252 length = len(val1)
00253 if python3 or type(val1) == unicode:
00254 val1 = val1.encode('utf-8')
00255 length = len(val1)
00256 buff.write(struct.pack('<I%ss'%length, length, val1))
00257 length = len(self.action_goal.goal.domain.actions)
00258 buff.write(_struct_I.pack(length))
00259 for val1 in self.action_goal.goal.domain.actions:
00260 _x = val1.name
00261 length = len(_x)
00262 if python3 or type(_x) == unicode:
00263 _x = _x.encode('utf-8')
00264 length = len(_x)
00265 buff.write(struct.pack('<I%ss'%length, length, _x))
00266 _x = val1.parameters
00267 length = len(_x)
00268 if python3 or type(_x) == unicode:
00269 _x = _x.encode('utf-8')
00270 length = len(_x)
00271 buff.write(struct.pack('<I%ss'%length, length, _x))
00272 _x = val1.precondition
00273 length = len(_x)
00274 if python3 or type(_x) == unicode:
00275 _x = _x.encode('utf-8')
00276 length = len(_x)
00277 buff.write(struct.pack('<I%ss'%length, length, _x))
00278 _x = val1.effect
00279 length = len(_x)
00280 if python3 or type(_x) == unicode:
00281 _x = _x.encode('utf-8')
00282 length = len(_x)
00283 buff.write(struct.pack('<I%ss'%length, length, _x))
00284 _x = val1.on_condition
00285 length = len(_x)
00286 if python3 or type(_x) == unicode:
00287 _x = _x.encode('utf-8')
00288 length = len(_x)
00289 buff.write(struct.pack('<I%ss'%length, length, _x))
00290 length = len(self.action_goal.goal.domain.functions)
00291 buff.write(_struct_I.pack(length))
00292 for val1 in self.action_goal.goal.domain.functions:
00293 length = len(val1)
00294 if python3 or type(val1) == unicode:
00295 val1 = val1.encode('utf-8')
00296 length = len(val1)
00297 buff.write(struct.pack('<I%ss'%length, length, val1))
00298 _x = self.action_goal.goal.problem.name
00299 length = len(_x)
00300 if python3 or type(_x) == unicode:
00301 _x = _x.encode('utf-8')
00302 length = len(_x)
00303 buff.write(struct.pack('<I%ss'%length, length, _x))
00304 _x = self.action_goal.goal.problem.domain
00305 length = len(_x)
00306 if python3 or type(_x) == unicode:
00307 _x = _x.encode('utf-8')
00308 length = len(_x)
00309 buff.write(struct.pack('<I%ss'%length, length, _x))
00310 length = len(self.action_goal.goal.problem.objects)
00311 buff.write(_struct_I.pack(length))
00312 for val1 in self.action_goal.goal.problem.objects:
00313 _x = val1.name
00314 length = len(_x)
00315 if python3 or type(_x) == unicode:
00316 _x = _x.encode('utf-8')
00317 length = len(_x)
00318 buff.write(struct.pack('<I%ss'%length, length, _x))
00319 _x = val1.type
00320 length = len(_x)
00321 if python3 or type(_x) == unicode:
00322 _x = _x.encode('utf-8')
00323 length = len(_x)
00324 buff.write(struct.pack('<I%ss'%length, length, _x))
00325 length = len(self.action_goal.goal.problem.initial)
00326 buff.write(_struct_I.pack(length))
00327 for val1 in self.action_goal.goal.problem.initial:
00328 length = len(val1)
00329 if python3 or type(val1) == unicode:
00330 val1 = val1.encode('utf-8')
00331 length = len(val1)
00332 buff.write(struct.pack('<I%ss'%length, length, val1))
00333 _x = self.action_goal.goal.problem.goal
00334 length = len(_x)
00335 if python3 or type(_x) == unicode:
00336 _x = _x.encode('utf-8')
00337 length = len(_x)
00338 buff.write(struct.pack('<I%ss'%length, length, _x))
00339 _x = self
00340 buff.write(_struct_3I.pack(_x.action_result.header.seq, _x.action_result.header.stamp.secs, _x.action_result.header.stamp.nsecs))
00341 _x = self.action_result.header.frame_id
00342 length = len(_x)
00343 if python3 or type(_x) == unicode:
00344 _x = _x.encode('utf-8')
00345 length = len(_x)
00346 buff.write(struct.pack('<I%ss'%length, length, _x))
00347 _x = self
00348 buff.write(_struct_2I.pack(_x.action_result.status.goal_id.stamp.secs, _x.action_result.status.goal_id.stamp.nsecs))
00349 _x = self.action_result.status.goal_id.id
00350 length = len(_x)
00351 if python3 or type(_x) == unicode:
00352 _x = _x.encode('utf-8')
00353 length = len(_x)
00354 buff.write(struct.pack('<I%ss'%length, length, _x))
00355 buff.write(_struct_B.pack(self.action_result.status.status))
00356 _x = self.action_result.status.text
00357 length = len(_x)
00358 if python3 or type(_x) == unicode:
00359 _x = _x.encode('utf-8')
00360 length = len(_x)
00361 buff.write(struct.pack('<I%ss'%length, length, _x))
00362 length = len(self.action_result.result.data)
00363 buff.write(_struct_I.pack(length))
00364 for val1 in self.action_result.result.data:
00365 length = len(val1)
00366 if python3 or type(val1) == unicode:
00367 val1 = val1.encode('utf-8')
00368 length = len(val1)
00369 buff.write(struct.pack('<I%ss'%length, length, val1))
00370 length = len(self.action_result.result.sequence)
00371 buff.write(_struct_I.pack(length))
00372 for val1 in self.action_result.result.sequence:
00373 _x = val1.action
00374 length = len(_x)
00375 if python3 or type(_x) == unicode:
00376 _x = _x.encode('utf-8')
00377 length = len(_x)
00378 buff.write(struct.pack('<I%ss'%length, length, _x))
00379 length = len(val1.args)
00380 buff.write(_struct_I.pack(length))
00381 for val2 in val1.args:
00382 length = len(val2)
00383 if python3 or type(val2) == unicode:
00384 val2 = val2.encode('utf-8')
00385 length = len(val2)
00386 buff.write(struct.pack('<I%ss'%length, length, val2))
00387 _x = self
00388 buff.write(_struct_3I.pack(_x.action_feedback.header.seq, _x.action_feedback.header.stamp.secs, _x.action_feedback.header.stamp.nsecs))
00389 _x = self.action_feedback.header.frame_id
00390 length = len(_x)
00391 if python3 or type(_x) == unicode:
00392 _x = _x.encode('utf-8')
00393 length = len(_x)
00394 buff.write(struct.pack('<I%ss'%length, length, _x))
00395 _x = self
00396 buff.write(_struct_2I.pack(_x.action_feedback.status.goal_id.stamp.secs, _x.action_feedback.status.goal_id.stamp.nsecs))
00397 _x = self.action_feedback.status.goal_id.id
00398 length = len(_x)
00399 if python3 or type(_x) == unicode:
00400 _x = _x.encode('utf-8')
00401 length = len(_x)
00402 buff.write(struct.pack('<I%ss'%length, length, _x))
00403 buff.write(_struct_B.pack(self.action_feedback.status.status))
00404 _x = self.action_feedback.status.text
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 except struct.error as se: self._check_types(se)
00411 except TypeError as te: self._check_types(te)
00412
00413 def deserialize(self, str):
00414 """
00415 unpack serialized message in str into this message instance
00416 :param str: byte array of serialized message, ``str``
00417 """
00418 try:
00419 if self.action_goal is None:
00420 self.action_goal = pddl_msgs.msg.PDDLPlannerActionGoal()
00421 if self.action_result is None:
00422 self.action_result = pddl_msgs.msg.PDDLPlannerActionResult()
00423 if self.action_feedback is None:
00424 self.action_feedback = pddl_msgs.msg.PDDLPlannerActionFeedback()
00425 end = 0
00426 _x = self
00427 start = end
00428 end += 12
00429 (_x.action_goal.header.seq, _x.action_goal.header.stamp.secs, _x.action_goal.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00430 start = end
00431 end += 4
00432 (length,) = _struct_I.unpack(str[start:end])
00433 start = end
00434 end += length
00435 if python3:
00436 self.action_goal.header.frame_id = str[start:end].decode('utf-8')
00437 else:
00438 self.action_goal.header.frame_id = str[start:end]
00439 _x = self
00440 start = end
00441 end += 8
00442 (_x.action_goal.goal_id.stamp.secs, _x.action_goal.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00443 start = end
00444 end += 4
00445 (length,) = _struct_I.unpack(str[start:end])
00446 start = end
00447 end += length
00448 if python3:
00449 self.action_goal.goal_id.id = str[start:end].decode('utf-8')
00450 else:
00451 self.action_goal.goal_id.id = str[start:end]
00452 start = end
00453 end += 4
00454 (length,) = _struct_I.unpack(str[start:end])
00455 start = end
00456 end += length
00457 if python3:
00458 self.action_goal.goal.domain.name = str[start:end].decode('utf-8')
00459 else:
00460 self.action_goal.goal.domain.name = str[start:end]
00461 start = end
00462 end += 4
00463 (length,) = _struct_I.unpack(str[start:end])
00464 start = end
00465 end += length
00466 if python3:
00467 self.action_goal.goal.domain.requirements = str[start:end].decode('utf-8')
00468 else:
00469 self.action_goal.goal.domain.requirements = str[start:end]
00470 start = end
00471 end += 4
00472 (length,) = _struct_I.unpack(str[start:end])
00473 self.action_goal.goal.domain.types = []
00474 for i in range(0, length):
00475 start = end
00476 end += 4
00477 (length,) = _struct_I.unpack(str[start:end])
00478 start = end
00479 end += length
00480 if python3:
00481 val1 = str[start:end].decode('utf-8')
00482 else:
00483 val1 = str[start:end]
00484 self.action_goal.goal.domain.types.append(val1)
00485 start = end
00486 end += 4
00487 (length,) = _struct_I.unpack(str[start:end])
00488 self.action_goal.goal.domain.constants = []
00489 for i in range(0, length):
00490 start = end
00491 end += 4
00492 (length,) = _struct_I.unpack(str[start:end])
00493 start = end
00494 end += length
00495 if python3:
00496 val1 = str[start:end].decode('utf-8')
00497 else:
00498 val1 = str[start:end]
00499 self.action_goal.goal.domain.constants.append(val1)
00500 start = end
00501 end += 4
00502 (length,) = _struct_I.unpack(str[start:end])
00503 self.action_goal.goal.domain.predicates = []
00504 for i in range(0, length):
00505 start = end
00506 end += 4
00507 (length,) = _struct_I.unpack(str[start:end])
00508 start = end
00509 end += length
00510 if python3:
00511 val1 = str[start:end].decode('utf-8')
00512 else:
00513 val1 = str[start:end]
00514 self.action_goal.goal.domain.predicates.append(val1)
00515 start = end
00516 end += 4
00517 (length,) = _struct_I.unpack(str[start:end])
00518 self.action_goal.goal.domain.actions = []
00519 for i in range(0, length):
00520 val1 = pddl_msgs.msg.PDDLAction()
00521 start = end
00522 end += 4
00523 (length,) = _struct_I.unpack(str[start:end])
00524 start = end
00525 end += length
00526 if python3:
00527 val1.name = str[start:end].decode('utf-8')
00528 else:
00529 val1.name = 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 val1.parameters = str[start:end].decode('utf-8')
00537 else:
00538 val1.parameters = str[start:end]
00539 start = end
00540 end += 4
00541 (length,) = _struct_I.unpack(str[start:end])
00542 start = end
00543 end += length
00544 if python3:
00545 val1.precondition = str[start:end].decode('utf-8')
00546 else:
00547 val1.precondition = str[start:end]
00548 start = end
00549 end += 4
00550 (length,) = _struct_I.unpack(str[start:end])
00551 start = end
00552 end += length
00553 if python3:
00554 val1.effect = str[start:end].decode('utf-8')
00555 else:
00556 val1.effect = str[start:end]
00557 start = end
00558 end += 4
00559 (length,) = _struct_I.unpack(str[start:end])
00560 start = end
00561 end += length
00562 if python3:
00563 val1.on_condition = str[start:end].decode('utf-8')
00564 else:
00565 val1.on_condition = str[start:end]
00566 self.action_goal.goal.domain.actions.append(val1)
00567 start = end
00568 end += 4
00569 (length,) = _struct_I.unpack(str[start:end])
00570 self.action_goal.goal.domain.functions = []
00571 for i in range(0, length):
00572 start = end
00573 end += 4
00574 (length,) = _struct_I.unpack(str[start:end])
00575 start = end
00576 end += length
00577 if python3:
00578 val1 = str[start:end].decode('utf-8')
00579 else:
00580 val1 = str[start:end]
00581 self.action_goal.goal.domain.functions.append(val1)
00582 start = end
00583 end += 4
00584 (length,) = _struct_I.unpack(str[start:end])
00585 start = end
00586 end += length
00587 if python3:
00588 self.action_goal.goal.problem.name = str[start:end].decode('utf-8')
00589 else:
00590 self.action_goal.goal.problem.name = str[start:end]
00591 start = end
00592 end += 4
00593 (length,) = _struct_I.unpack(str[start:end])
00594 start = end
00595 end += length
00596 if python3:
00597 self.action_goal.goal.problem.domain = str[start:end].decode('utf-8')
00598 else:
00599 self.action_goal.goal.problem.domain = str[start:end]
00600 start = end
00601 end += 4
00602 (length,) = _struct_I.unpack(str[start:end])
00603 self.action_goal.goal.problem.objects = []
00604 for i in range(0, length):
00605 val1 = pddl_msgs.msg.PDDLObject()
00606 start = end
00607 end += 4
00608 (length,) = _struct_I.unpack(str[start:end])
00609 start = end
00610 end += length
00611 if python3:
00612 val1.name = str[start:end].decode('utf-8')
00613 else:
00614 val1.name = str[start:end]
00615 start = end
00616 end += 4
00617 (length,) = _struct_I.unpack(str[start:end])
00618 start = end
00619 end += length
00620 if python3:
00621 val1.type = str[start:end].decode('utf-8')
00622 else:
00623 val1.type = str[start:end]
00624 self.action_goal.goal.problem.objects.append(val1)
00625 start = end
00626 end += 4
00627 (length,) = _struct_I.unpack(str[start:end])
00628 self.action_goal.goal.problem.initial = []
00629 for i in range(0, length):
00630 start = end
00631 end += 4
00632 (length,) = _struct_I.unpack(str[start:end])
00633 start = end
00634 end += length
00635 if python3:
00636 val1 = str[start:end].decode('utf-8')
00637 else:
00638 val1 = str[start:end]
00639 self.action_goal.goal.problem.initial.append(val1)
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_goal.goal.problem.goal = str[start:end].decode('utf-8')
00647 else:
00648 self.action_goal.goal.problem.goal = str[start:end]
00649 _x = self
00650 start = end
00651 end += 12
00652 (_x.action_result.header.seq, _x.action_result.header.stamp.secs, _x.action_result.header.stamp.nsecs,) = _struct_3I.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_result.header.frame_id = str[start:end].decode('utf-8')
00660 else:
00661 self.action_result.header.frame_id = str[start:end]
00662 _x = self
00663 start = end
00664 end += 8
00665 (_x.action_result.status.goal_id.stamp.secs, _x.action_result.status.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00666 start = end
00667 end += 4
00668 (length,) = _struct_I.unpack(str[start:end])
00669 start = end
00670 end += length
00671 if python3:
00672 self.action_result.status.goal_id.id = str[start:end].decode('utf-8')
00673 else:
00674 self.action_result.status.goal_id.id = str[start:end]
00675 start = end
00676 end += 1
00677 (self.action_result.status.status,) = _struct_B.unpack(str[start:end])
00678 start = end
00679 end += 4
00680 (length,) = _struct_I.unpack(str[start:end])
00681 start = end
00682 end += length
00683 if python3:
00684 self.action_result.status.text = str[start:end].decode('utf-8')
00685 else:
00686 self.action_result.status.text = str[start:end]
00687 start = end
00688 end += 4
00689 (length,) = _struct_I.unpack(str[start:end])
00690 self.action_result.result.data = []
00691 for i in range(0, length):
00692 start = end
00693 end += 4
00694 (length,) = _struct_I.unpack(str[start:end])
00695 start = end
00696 end += length
00697 if python3:
00698 val1 = str[start:end].decode('utf-8')
00699 else:
00700 val1 = str[start:end]
00701 self.action_result.result.data.append(val1)
00702 start = end
00703 end += 4
00704 (length,) = _struct_I.unpack(str[start:end])
00705 self.action_result.result.sequence = []
00706 for i in range(0, length):
00707 val1 = pddl_msgs.msg.PDDLStep()
00708 start = end
00709 end += 4
00710 (length,) = _struct_I.unpack(str[start:end])
00711 start = end
00712 end += length
00713 if python3:
00714 val1.action = str[start:end].decode('utf-8')
00715 else:
00716 val1.action = str[start:end]
00717 start = end
00718 end += 4
00719 (length,) = _struct_I.unpack(str[start:end])
00720 val1.args = []
00721 for i in range(0, length):
00722 start = end
00723 end += 4
00724 (length,) = _struct_I.unpack(str[start:end])
00725 start = end
00726 end += length
00727 if python3:
00728 val2 = str[start:end].decode('utf-8')
00729 else:
00730 val2 = str[start:end]
00731 val1.args.append(val2)
00732 self.action_result.result.sequence.append(val1)
00733 _x = self
00734 start = end
00735 end += 12
00736 (_x.action_feedback.header.seq, _x.action_feedback.header.stamp.secs, _x.action_feedback.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00737 start = end
00738 end += 4
00739 (length,) = _struct_I.unpack(str[start:end])
00740 start = end
00741 end += length
00742 if python3:
00743 self.action_feedback.header.frame_id = str[start:end].decode('utf-8')
00744 else:
00745 self.action_feedback.header.frame_id = str[start:end]
00746 _x = self
00747 start = end
00748 end += 8
00749 (_x.action_feedback.status.goal_id.stamp.secs, _x.action_feedback.status.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00750 start = end
00751 end += 4
00752 (length,) = _struct_I.unpack(str[start:end])
00753 start = end
00754 end += length
00755 if python3:
00756 self.action_feedback.status.goal_id.id = str[start:end].decode('utf-8')
00757 else:
00758 self.action_feedback.status.goal_id.id = str[start:end]
00759 start = end
00760 end += 1
00761 (self.action_feedback.status.status,) = _struct_B.unpack(str[start:end])
00762 start = end
00763 end += 4
00764 (length,) = _struct_I.unpack(str[start:end])
00765 start = end
00766 end += length
00767 if python3:
00768 self.action_feedback.status.text = str[start:end].decode('utf-8')
00769 else:
00770 self.action_feedback.status.text = str[start:end]
00771 return self
00772 except struct.error as e:
00773 raise genpy.DeserializationError(e)
00774
00775
00776 def serialize_numpy(self, buff, numpy):
00777 """
00778 serialize message with numpy array types into buffer
00779 :param buff: buffer, ``StringIO``
00780 :param numpy: numpy python module
00781 """
00782 try:
00783 _x = self
00784 buff.write(_struct_3I.pack(_x.action_goal.header.seq, _x.action_goal.header.stamp.secs, _x.action_goal.header.stamp.nsecs))
00785 _x = self.action_goal.header.frame_id
00786 length = len(_x)
00787 if python3 or type(_x) == unicode:
00788 _x = _x.encode('utf-8')
00789 length = len(_x)
00790 buff.write(struct.pack('<I%ss'%length, length, _x))
00791 _x = self
00792 buff.write(_struct_2I.pack(_x.action_goal.goal_id.stamp.secs, _x.action_goal.goal_id.stamp.nsecs))
00793 _x = self.action_goal.goal_id.id
00794 length = len(_x)
00795 if python3 or type(_x) == unicode:
00796 _x = _x.encode('utf-8')
00797 length = len(_x)
00798 buff.write(struct.pack('<I%ss'%length, length, _x))
00799 _x = self.action_goal.goal.domain.name
00800 length = len(_x)
00801 if python3 or type(_x) == unicode:
00802 _x = _x.encode('utf-8')
00803 length = len(_x)
00804 buff.write(struct.pack('<I%ss'%length, length, _x))
00805 _x = self.action_goal.goal.domain.requirements
00806 length = len(_x)
00807 if python3 or type(_x) == unicode:
00808 _x = _x.encode('utf-8')
00809 length = len(_x)
00810 buff.write(struct.pack('<I%ss'%length, length, _x))
00811 length = len(self.action_goal.goal.domain.types)
00812 buff.write(_struct_I.pack(length))
00813 for val1 in self.action_goal.goal.domain.types:
00814 length = len(val1)
00815 if python3 or type(val1) == unicode:
00816 val1 = val1.encode('utf-8')
00817 length = len(val1)
00818 buff.write(struct.pack('<I%ss'%length, length, val1))
00819 length = len(self.action_goal.goal.domain.constants)
00820 buff.write(_struct_I.pack(length))
00821 for val1 in self.action_goal.goal.domain.constants:
00822 length = len(val1)
00823 if python3 or type(val1) == unicode:
00824 val1 = val1.encode('utf-8')
00825 length = len(val1)
00826 buff.write(struct.pack('<I%ss'%length, length, val1))
00827 length = len(self.action_goal.goal.domain.predicates)
00828 buff.write(_struct_I.pack(length))
00829 for val1 in self.action_goal.goal.domain.predicates:
00830 length = len(val1)
00831 if python3 or type(val1) == unicode:
00832 val1 = val1.encode('utf-8')
00833 length = len(val1)
00834 buff.write(struct.pack('<I%ss'%length, length, val1))
00835 length = len(self.action_goal.goal.domain.actions)
00836 buff.write(_struct_I.pack(length))
00837 for val1 in self.action_goal.goal.domain.actions:
00838 _x = val1.name
00839 length = len(_x)
00840 if python3 or type(_x) == unicode:
00841 _x = _x.encode('utf-8')
00842 length = len(_x)
00843 buff.write(struct.pack('<I%ss'%length, length, _x))
00844 _x = val1.parameters
00845 length = len(_x)
00846 if python3 or type(_x) == unicode:
00847 _x = _x.encode('utf-8')
00848 length = len(_x)
00849 buff.write(struct.pack('<I%ss'%length, length, _x))
00850 _x = val1.precondition
00851 length = len(_x)
00852 if python3 or type(_x) == unicode:
00853 _x = _x.encode('utf-8')
00854 length = len(_x)
00855 buff.write(struct.pack('<I%ss'%length, length, _x))
00856 _x = val1.effect
00857 length = len(_x)
00858 if python3 or type(_x) == unicode:
00859 _x = _x.encode('utf-8')
00860 length = len(_x)
00861 buff.write(struct.pack('<I%ss'%length, length, _x))
00862 _x = val1.on_condition
00863 length = len(_x)
00864 if python3 or type(_x) == unicode:
00865 _x = _x.encode('utf-8')
00866 length = len(_x)
00867 buff.write(struct.pack('<I%ss'%length, length, _x))
00868 length = len(self.action_goal.goal.domain.functions)
00869 buff.write(_struct_I.pack(length))
00870 for val1 in self.action_goal.goal.domain.functions:
00871 length = len(val1)
00872 if python3 or type(val1) == unicode:
00873 val1 = val1.encode('utf-8')
00874 length = len(val1)
00875 buff.write(struct.pack('<I%ss'%length, length, val1))
00876 _x = self.action_goal.goal.problem.name
00877 length = len(_x)
00878 if python3 or type(_x) == unicode:
00879 _x = _x.encode('utf-8')
00880 length = len(_x)
00881 buff.write(struct.pack('<I%ss'%length, length, _x))
00882 _x = self.action_goal.goal.problem.domain
00883 length = len(_x)
00884 if python3 or type(_x) == unicode:
00885 _x = _x.encode('utf-8')
00886 length = len(_x)
00887 buff.write(struct.pack('<I%ss'%length, length, _x))
00888 length = len(self.action_goal.goal.problem.objects)
00889 buff.write(_struct_I.pack(length))
00890 for val1 in self.action_goal.goal.problem.objects:
00891 _x = val1.name
00892 length = len(_x)
00893 if python3 or type(_x) == unicode:
00894 _x = _x.encode('utf-8')
00895 length = len(_x)
00896 buff.write(struct.pack('<I%ss'%length, length, _x))
00897 _x = val1.type
00898 length = len(_x)
00899 if python3 or type(_x) == unicode:
00900 _x = _x.encode('utf-8')
00901 length = len(_x)
00902 buff.write(struct.pack('<I%ss'%length, length, _x))
00903 length = len(self.action_goal.goal.problem.initial)
00904 buff.write(_struct_I.pack(length))
00905 for val1 in self.action_goal.goal.problem.initial:
00906 length = len(val1)
00907 if python3 or type(val1) == unicode:
00908 val1 = val1.encode('utf-8')
00909 length = len(val1)
00910 buff.write(struct.pack('<I%ss'%length, length, val1))
00911 _x = self.action_goal.goal.problem.goal
00912 length = len(_x)
00913 if python3 or type(_x) == unicode:
00914 _x = _x.encode('utf-8')
00915 length = len(_x)
00916 buff.write(struct.pack('<I%ss'%length, length, _x))
00917 _x = self
00918 buff.write(_struct_3I.pack(_x.action_result.header.seq, _x.action_result.header.stamp.secs, _x.action_result.header.stamp.nsecs))
00919 _x = self.action_result.header.frame_id
00920 length = len(_x)
00921 if python3 or type(_x) == unicode:
00922 _x = _x.encode('utf-8')
00923 length = len(_x)
00924 buff.write(struct.pack('<I%ss'%length, length, _x))
00925 _x = self
00926 buff.write(_struct_2I.pack(_x.action_result.status.goal_id.stamp.secs, _x.action_result.status.goal_id.stamp.nsecs))
00927 _x = self.action_result.status.goal_id.id
00928 length = len(_x)
00929 if python3 or type(_x) == unicode:
00930 _x = _x.encode('utf-8')
00931 length = len(_x)
00932 buff.write(struct.pack('<I%ss'%length, length, _x))
00933 buff.write(_struct_B.pack(self.action_result.status.status))
00934 _x = self.action_result.status.text
00935 length = len(_x)
00936 if python3 or type(_x) == unicode:
00937 _x = _x.encode('utf-8')
00938 length = len(_x)
00939 buff.write(struct.pack('<I%ss'%length, length, _x))
00940 length = len(self.action_result.result.data)
00941 buff.write(_struct_I.pack(length))
00942 for val1 in self.action_result.result.data:
00943 length = len(val1)
00944 if python3 or type(val1) == unicode:
00945 val1 = val1.encode('utf-8')
00946 length = len(val1)
00947 buff.write(struct.pack('<I%ss'%length, length, val1))
00948 length = len(self.action_result.result.sequence)
00949 buff.write(_struct_I.pack(length))
00950 for val1 in self.action_result.result.sequence:
00951 _x = val1.action
00952 length = len(_x)
00953 if python3 or type(_x) == unicode:
00954 _x = _x.encode('utf-8')
00955 length = len(_x)
00956 buff.write(struct.pack('<I%ss'%length, length, _x))
00957 length = len(val1.args)
00958 buff.write(_struct_I.pack(length))
00959 for val2 in val1.args:
00960 length = len(val2)
00961 if python3 or type(val2) == unicode:
00962 val2 = val2.encode('utf-8')
00963 length = len(val2)
00964 buff.write(struct.pack('<I%ss'%length, length, val2))
00965 _x = self
00966 buff.write(_struct_3I.pack(_x.action_feedback.header.seq, _x.action_feedback.header.stamp.secs, _x.action_feedback.header.stamp.nsecs))
00967 _x = self.action_feedback.header.frame_id
00968 length = len(_x)
00969 if python3 or type(_x) == unicode:
00970 _x = _x.encode('utf-8')
00971 length = len(_x)
00972 buff.write(struct.pack('<I%ss'%length, length, _x))
00973 _x = self
00974 buff.write(_struct_2I.pack(_x.action_feedback.status.goal_id.stamp.secs, _x.action_feedback.status.goal_id.stamp.nsecs))
00975 _x = self.action_feedback.status.goal_id.id
00976 length = len(_x)
00977 if python3 or type(_x) == unicode:
00978 _x = _x.encode('utf-8')
00979 length = len(_x)
00980 buff.write(struct.pack('<I%ss'%length, length, _x))
00981 buff.write(_struct_B.pack(self.action_feedback.status.status))
00982 _x = self.action_feedback.status.text
00983 length = len(_x)
00984 if python3 or type(_x) == unicode:
00985 _x = _x.encode('utf-8')
00986 length = len(_x)
00987 buff.write(struct.pack('<I%ss'%length, length, _x))
00988 except struct.error as se: self._check_types(se)
00989 except TypeError as te: self._check_types(te)
00990
00991 def deserialize_numpy(self, str, numpy):
00992 """
00993 unpack serialized message in str into this message instance using numpy for array types
00994 :param str: byte array of serialized message, ``str``
00995 :param numpy: numpy python module
00996 """
00997 try:
00998 if self.action_goal is None:
00999 self.action_goal = pddl_msgs.msg.PDDLPlannerActionGoal()
01000 if self.action_result is None:
01001 self.action_result = pddl_msgs.msg.PDDLPlannerActionResult()
01002 if self.action_feedback is None:
01003 self.action_feedback = pddl_msgs.msg.PDDLPlannerActionFeedback()
01004 end = 0
01005 _x = self
01006 start = end
01007 end += 12
01008 (_x.action_goal.header.seq, _x.action_goal.header.stamp.secs, _x.action_goal.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
01009 start = end
01010 end += 4
01011 (length,) = _struct_I.unpack(str[start:end])
01012 start = end
01013 end += length
01014 if python3:
01015 self.action_goal.header.frame_id = str[start:end].decode('utf-8')
01016 else:
01017 self.action_goal.header.frame_id = str[start:end]
01018 _x = self
01019 start = end
01020 end += 8
01021 (_x.action_goal.goal_id.stamp.secs, _x.action_goal.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
01022 start = end
01023 end += 4
01024 (length,) = _struct_I.unpack(str[start:end])
01025 start = end
01026 end += length
01027 if python3:
01028 self.action_goal.goal_id.id = str[start:end].decode('utf-8')
01029 else:
01030 self.action_goal.goal_id.id = str[start:end]
01031 start = end
01032 end += 4
01033 (length,) = _struct_I.unpack(str[start:end])
01034 start = end
01035 end += length
01036 if python3:
01037 self.action_goal.goal.domain.name = str[start:end].decode('utf-8')
01038 else:
01039 self.action_goal.goal.domain.name = str[start:end]
01040 start = end
01041 end += 4
01042 (length,) = _struct_I.unpack(str[start:end])
01043 start = end
01044 end += length
01045 if python3:
01046 self.action_goal.goal.domain.requirements = str[start:end].decode('utf-8')
01047 else:
01048 self.action_goal.goal.domain.requirements = str[start:end]
01049 start = end
01050 end += 4
01051 (length,) = _struct_I.unpack(str[start:end])
01052 self.action_goal.goal.domain.types = []
01053 for i in range(0, length):
01054 start = end
01055 end += 4
01056 (length,) = _struct_I.unpack(str[start:end])
01057 start = end
01058 end += length
01059 if python3:
01060 val1 = str[start:end].decode('utf-8')
01061 else:
01062 val1 = str[start:end]
01063 self.action_goal.goal.domain.types.append(val1)
01064 start = end
01065 end += 4
01066 (length,) = _struct_I.unpack(str[start:end])
01067 self.action_goal.goal.domain.constants = []
01068 for i in range(0, length):
01069 start = end
01070 end += 4
01071 (length,) = _struct_I.unpack(str[start:end])
01072 start = end
01073 end += length
01074 if python3:
01075 val1 = str[start:end].decode('utf-8')
01076 else:
01077 val1 = str[start:end]
01078 self.action_goal.goal.domain.constants.append(val1)
01079 start = end
01080 end += 4
01081 (length,) = _struct_I.unpack(str[start:end])
01082 self.action_goal.goal.domain.predicates = []
01083 for i in range(0, length):
01084 start = end
01085 end += 4
01086 (length,) = _struct_I.unpack(str[start:end])
01087 start = end
01088 end += length
01089 if python3:
01090 val1 = str[start:end].decode('utf-8')
01091 else:
01092 val1 = str[start:end]
01093 self.action_goal.goal.domain.predicates.append(val1)
01094 start = end
01095 end += 4
01096 (length,) = _struct_I.unpack(str[start:end])
01097 self.action_goal.goal.domain.actions = []
01098 for i in range(0, length):
01099 val1 = pddl_msgs.msg.PDDLAction()
01100 start = end
01101 end += 4
01102 (length,) = _struct_I.unpack(str[start:end])
01103 start = end
01104 end += length
01105 if python3:
01106 val1.name = str[start:end].decode('utf-8')
01107 else:
01108 val1.name = str[start:end]
01109 start = end
01110 end += 4
01111 (length,) = _struct_I.unpack(str[start:end])
01112 start = end
01113 end += length
01114 if python3:
01115 val1.parameters = str[start:end].decode('utf-8')
01116 else:
01117 val1.parameters = str[start:end]
01118 start = end
01119 end += 4
01120 (length,) = _struct_I.unpack(str[start:end])
01121 start = end
01122 end += length
01123 if python3:
01124 val1.precondition = str[start:end].decode('utf-8')
01125 else:
01126 val1.precondition = str[start:end]
01127 start = end
01128 end += 4
01129 (length,) = _struct_I.unpack(str[start:end])
01130 start = end
01131 end += length
01132 if python3:
01133 val1.effect = str[start:end].decode('utf-8')
01134 else:
01135 val1.effect = str[start:end]
01136 start = end
01137 end += 4
01138 (length,) = _struct_I.unpack(str[start:end])
01139 start = end
01140 end += length
01141 if python3:
01142 val1.on_condition = str[start:end].decode('utf-8')
01143 else:
01144 val1.on_condition = str[start:end]
01145 self.action_goal.goal.domain.actions.append(val1)
01146 start = end
01147 end += 4
01148 (length,) = _struct_I.unpack(str[start:end])
01149 self.action_goal.goal.domain.functions = []
01150 for i in range(0, length):
01151 start = end
01152 end += 4
01153 (length,) = _struct_I.unpack(str[start:end])
01154 start = end
01155 end += length
01156 if python3:
01157 val1 = str[start:end].decode('utf-8')
01158 else:
01159 val1 = str[start:end]
01160 self.action_goal.goal.domain.functions.append(val1)
01161 start = end
01162 end += 4
01163 (length,) = _struct_I.unpack(str[start:end])
01164 start = end
01165 end += length
01166 if python3:
01167 self.action_goal.goal.problem.name = str[start:end].decode('utf-8')
01168 else:
01169 self.action_goal.goal.problem.name = str[start:end]
01170 start = end
01171 end += 4
01172 (length,) = _struct_I.unpack(str[start:end])
01173 start = end
01174 end += length
01175 if python3:
01176 self.action_goal.goal.problem.domain = str[start:end].decode('utf-8')
01177 else:
01178 self.action_goal.goal.problem.domain = str[start:end]
01179 start = end
01180 end += 4
01181 (length,) = _struct_I.unpack(str[start:end])
01182 self.action_goal.goal.problem.objects = []
01183 for i in range(0, length):
01184 val1 = pddl_msgs.msg.PDDLObject()
01185 start = end
01186 end += 4
01187 (length,) = _struct_I.unpack(str[start:end])
01188 start = end
01189 end += length
01190 if python3:
01191 val1.name = str[start:end].decode('utf-8')
01192 else:
01193 val1.name = str[start:end]
01194 start = end
01195 end += 4
01196 (length,) = _struct_I.unpack(str[start:end])
01197 start = end
01198 end += length
01199 if python3:
01200 val1.type = str[start:end].decode('utf-8')
01201 else:
01202 val1.type = str[start:end]
01203 self.action_goal.goal.problem.objects.append(val1)
01204 start = end
01205 end += 4
01206 (length,) = _struct_I.unpack(str[start:end])
01207 self.action_goal.goal.problem.initial = []
01208 for i in range(0, length):
01209 start = end
01210 end += 4
01211 (length,) = _struct_I.unpack(str[start:end])
01212 start = end
01213 end += length
01214 if python3:
01215 val1 = str[start:end].decode('utf-8')
01216 else:
01217 val1 = str[start:end]
01218 self.action_goal.goal.problem.initial.append(val1)
01219 start = end
01220 end += 4
01221 (length,) = _struct_I.unpack(str[start:end])
01222 start = end
01223 end += length
01224 if python3:
01225 self.action_goal.goal.problem.goal = str[start:end].decode('utf-8')
01226 else:
01227 self.action_goal.goal.problem.goal = str[start:end]
01228 _x = self
01229 start = end
01230 end += 12
01231 (_x.action_result.header.seq, _x.action_result.header.stamp.secs, _x.action_result.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
01232 start = end
01233 end += 4
01234 (length,) = _struct_I.unpack(str[start:end])
01235 start = end
01236 end += length
01237 if python3:
01238 self.action_result.header.frame_id = str[start:end].decode('utf-8')
01239 else:
01240 self.action_result.header.frame_id = str[start:end]
01241 _x = self
01242 start = end
01243 end += 8
01244 (_x.action_result.status.goal_id.stamp.secs, _x.action_result.status.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
01245 start = end
01246 end += 4
01247 (length,) = _struct_I.unpack(str[start:end])
01248 start = end
01249 end += length
01250 if python3:
01251 self.action_result.status.goal_id.id = str[start:end].decode('utf-8')
01252 else:
01253 self.action_result.status.goal_id.id = str[start:end]
01254 start = end
01255 end += 1
01256 (self.action_result.status.status,) = _struct_B.unpack(str[start:end])
01257 start = end
01258 end += 4
01259 (length,) = _struct_I.unpack(str[start:end])
01260 start = end
01261 end += length
01262 if python3:
01263 self.action_result.status.text = str[start:end].decode('utf-8')
01264 else:
01265 self.action_result.status.text = str[start:end]
01266 start = end
01267 end += 4
01268 (length,) = _struct_I.unpack(str[start:end])
01269 self.action_result.result.data = []
01270 for i in range(0, length):
01271 start = end
01272 end += 4
01273 (length,) = _struct_I.unpack(str[start:end])
01274 start = end
01275 end += length
01276 if python3:
01277 val1 = str[start:end].decode('utf-8')
01278 else:
01279 val1 = str[start:end]
01280 self.action_result.result.data.append(val1)
01281 start = end
01282 end += 4
01283 (length,) = _struct_I.unpack(str[start:end])
01284 self.action_result.result.sequence = []
01285 for i in range(0, length):
01286 val1 = pddl_msgs.msg.PDDLStep()
01287 start = end
01288 end += 4
01289 (length,) = _struct_I.unpack(str[start:end])
01290 start = end
01291 end += length
01292 if python3:
01293 val1.action = str[start:end].decode('utf-8')
01294 else:
01295 val1.action = str[start:end]
01296 start = end
01297 end += 4
01298 (length,) = _struct_I.unpack(str[start:end])
01299 val1.args = []
01300 for i in range(0, length):
01301 start = end
01302 end += 4
01303 (length,) = _struct_I.unpack(str[start:end])
01304 start = end
01305 end += length
01306 if python3:
01307 val2 = str[start:end].decode('utf-8')
01308 else:
01309 val2 = str[start:end]
01310 val1.args.append(val2)
01311 self.action_result.result.sequence.append(val1)
01312 _x = self
01313 start = end
01314 end += 12
01315 (_x.action_feedback.header.seq, _x.action_feedback.header.stamp.secs, _x.action_feedback.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
01316 start = end
01317 end += 4
01318 (length,) = _struct_I.unpack(str[start:end])
01319 start = end
01320 end += length
01321 if python3:
01322 self.action_feedback.header.frame_id = str[start:end].decode('utf-8')
01323 else:
01324 self.action_feedback.header.frame_id = str[start:end]
01325 _x = self
01326 start = end
01327 end += 8
01328 (_x.action_feedback.status.goal_id.stamp.secs, _x.action_feedback.status.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
01329 start = end
01330 end += 4
01331 (length,) = _struct_I.unpack(str[start:end])
01332 start = end
01333 end += length
01334 if python3:
01335 self.action_feedback.status.goal_id.id = str[start:end].decode('utf-8')
01336 else:
01337 self.action_feedback.status.goal_id.id = str[start:end]
01338 start = end
01339 end += 1
01340 (self.action_feedback.status.status,) = _struct_B.unpack(str[start:end])
01341 start = end
01342 end += 4
01343 (length,) = _struct_I.unpack(str[start:end])
01344 start = end
01345 end += length
01346 if python3:
01347 self.action_feedback.status.text = str[start:end].decode('utf-8')
01348 else:
01349 self.action_feedback.status.text = str[start:end]
01350 return self
01351 except struct.error as e:
01352 raise genpy.DeserializationError(e)
01353
01354 _struct_I = genpy.struct_I
01355 _struct_3I = struct.Struct("<3I")
01356 _struct_B = struct.Struct("<B")
01357 _struct_2I = struct.Struct("<2I")