00001 """autogenerated by genpy from eband_local_planner/FollowBaseTrajectoryAction.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 eband_local_planner.msg
00008 import geometry_msgs.msg
00009 import genpy
00010 import actionlib_msgs.msg
00011 import std_msgs.msg
00012
00013 class FollowBaseTrajectoryAction(genpy.Message):
00014 _md5sum = "ee8a141dd7df49966ce9de7358e1c766"
00015 _type = "eband_local_planner/FollowBaseTrajectoryAction"
00016 _has_header = False
00017 _full_text = """# ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00018
00019 FollowBaseTrajectoryActionGoal action_goal
00020 FollowBaseTrajectoryActionResult action_result
00021 FollowBaseTrajectoryActionFeedback action_feedback
00022
00023 ================================================================================
00024 MSG: eband_local_planner/FollowBaseTrajectoryActionGoal
00025 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00026
00027 Header header
00028 actionlib_msgs/GoalID goal_id
00029 FollowBaseTrajectoryGoal goal
00030
00031 ================================================================================
00032 MSG: std_msgs/Header
00033 # Standard metadata for higher-level stamped data types.
00034 # This is generally used to communicate timestamped data
00035 # in a particular coordinate frame.
00036 #
00037 # sequence ID: consecutively increasing ID
00038 uint32 seq
00039 #Two-integer timestamp that is expressed as:
00040 # * stamp.secs: seconds (stamp_secs) since epoch
00041 # * stamp.nsecs: nanoseconds since stamp_secs
00042 # time-handling sugar is provided by the client library
00043 time stamp
00044 #Frame this data is associated with
00045 # 0: no frame
00046 # 1: global frame
00047 string frame_id
00048
00049 ================================================================================
00050 MSG: actionlib_msgs/GoalID
00051 # The stamp should store the time at which this goal was requested.
00052 # It is used by an action server when it tries to preempt all
00053 # goals that were requested before a certain time
00054 time stamp
00055
00056 # The id provides a way to associate feedback and
00057 # result message with specific goal requests. The id
00058 # specified must be unique.
00059 string id
00060
00061
00062 ================================================================================
00063 MSG: eband_local_planner/FollowBaseTrajectoryGoal
00064 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00065 # Action that represents following a path while reacting
00066 # to small obstacles (but never deviating significantly from trajectory)
00067
00068 # The goal is a path to follow
00069 geometry_msgs/PoseStamped[] path
00070
00071 ================================================================================
00072 MSG: geometry_msgs/PoseStamped
00073 # A Pose with reference coordinate frame and timestamp
00074 Header header
00075 Pose pose
00076
00077 ================================================================================
00078 MSG: geometry_msgs/Pose
00079 # A representation of pose in free space, composed of postion and orientation.
00080 Point position
00081 Quaternion orientation
00082
00083 ================================================================================
00084 MSG: geometry_msgs/Point
00085 # This contains the position of a point in free space
00086 float64 x
00087 float64 y
00088 float64 z
00089
00090 ================================================================================
00091 MSG: geometry_msgs/Quaternion
00092 # This represents an orientation in free space in quaternion form.
00093
00094 float64 x
00095 float64 y
00096 float64 z
00097 float64 w
00098
00099 ================================================================================
00100 MSG: eband_local_planner/FollowBaseTrajectoryActionResult
00101 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00102
00103 Header header
00104 actionlib_msgs/GoalStatus status
00105 FollowBaseTrajectoryResult result
00106
00107 ================================================================================
00108 MSG: actionlib_msgs/GoalStatus
00109 GoalID goal_id
00110 uint8 status
00111 uint8 PENDING = 0 # The goal has yet to be processed by the action server
00112 uint8 ACTIVE = 1 # The goal is currently being processed by the action server
00113 uint8 PREEMPTED = 2 # The goal received a cancel request after it started executing
00114 # and has since completed its execution (Terminal State)
00115 uint8 SUCCEEDED = 3 # The goal was achieved successfully by the action server (Terminal State)
00116 uint8 ABORTED = 4 # The goal was aborted during execution by the action server due
00117 # to some failure (Terminal State)
00118 uint8 REJECTED = 5 # The goal was rejected by the action server without being processed,
00119 # because the goal was unattainable or invalid (Terminal State)
00120 uint8 PREEMPTING = 6 # The goal received a cancel request after it started executing
00121 # and has not yet completed execution
00122 uint8 RECALLING = 7 # The goal received a cancel request before it started executing,
00123 # but the action server has not yet confirmed that the goal is canceled
00124 uint8 RECALLED = 8 # The goal received a cancel request before it started executing
00125 # and was successfully cancelled (Terminal State)
00126 uint8 LOST = 9 # An action client can determine that a goal is LOST. This should not be
00127 # sent over the wire by an action server
00128
00129 #Allow for the user to associate a string with GoalStatus for debugging
00130 string text
00131
00132
00133 ================================================================================
00134 MSG: eband_local_planner/FollowBaseTrajectoryResult
00135 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00136 # If the action was not successful, an error message.
00137 string msg
00138
00139 ================================================================================
00140 MSG: eband_local_planner/FollowBaseTrajectoryActionFeedback
00141 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00142
00143 Header header
00144 actionlib_msgs/GoalStatus status
00145 FollowBaseTrajectoryFeedback feedback
00146
00147 ================================================================================
00148 MSG: eband_local_planner/FollowBaseTrajectoryFeedback
00149 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00150 # Feedback: where on the path we are
00151 uint32 waypoint_index
00152
00153
00154
00155 """
00156 __slots__ = ['action_goal','action_result','action_feedback']
00157 _slot_types = ['eband_local_planner/FollowBaseTrajectoryActionGoal','eband_local_planner/FollowBaseTrajectoryActionResult','eband_local_planner/FollowBaseTrajectoryActionFeedback']
00158
00159 def __init__(self, *args, **kwds):
00160 """
00161 Constructor. Any message fields that are implicitly/explicitly
00162 set to None will be assigned a default value. The recommend
00163 use is keyword arguments as this is more robust to future message
00164 changes. You cannot mix in-order arguments and keyword arguments.
00165
00166 The available fields are:
00167 action_goal,action_result,action_feedback
00168
00169 :param args: complete set of field values, in .msg order
00170 :param kwds: use keyword arguments corresponding to message field names
00171 to set specific fields.
00172 """
00173 if args or kwds:
00174 super(FollowBaseTrajectoryAction, self).__init__(*args, **kwds)
00175
00176 if self.action_goal is None:
00177 self.action_goal = eband_local_planner.msg.FollowBaseTrajectoryActionGoal()
00178 if self.action_result is None:
00179 self.action_result = eband_local_planner.msg.FollowBaseTrajectoryActionResult()
00180 if self.action_feedback is None:
00181 self.action_feedback = eband_local_planner.msg.FollowBaseTrajectoryActionFeedback()
00182 else:
00183 self.action_goal = eband_local_planner.msg.FollowBaseTrajectoryActionGoal()
00184 self.action_result = eband_local_planner.msg.FollowBaseTrajectoryActionResult()
00185 self.action_feedback = eband_local_planner.msg.FollowBaseTrajectoryActionFeedback()
00186
00187 def _get_types(self):
00188 """
00189 internal API method
00190 """
00191 return self._slot_types
00192
00193 def serialize(self, buff):
00194 """
00195 serialize message into buffer
00196 :param buff: buffer, ``StringIO``
00197 """
00198 try:
00199 _x = self
00200 buff.write(_struct_3I.pack(_x.action_goal.header.seq, _x.action_goal.header.stamp.secs, _x.action_goal.header.stamp.nsecs))
00201 _x = self.action_goal.header.frame_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 _x = self
00208 buff.write(_struct_2I.pack(_x.action_goal.goal_id.stamp.secs, _x.action_goal.goal_id.stamp.nsecs))
00209 _x = self.action_goal.goal_id.id
00210 length = len(_x)
00211 if python3 or type(_x) == unicode:
00212 _x = _x.encode('utf-8')
00213 length = len(_x)
00214 buff.write(struct.pack('<I%ss'%length, length, _x))
00215 length = len(self.action_goal.goal.path)
00216 buff.write(_struct_I.pack(length))
00217 for val1 in self.action_goal.goal.path:
00218 _v1 = val1.header
00219 buff.write(_struct_I.pack(_v1.seq))
00220 _v2 = _v1.stamp
00221 _x = _v2
00222 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00223 _x = _v1.frame_id
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 _v3 = val1.pose
00230 _v4 = _v3.position
00231 _x = _v4
00232 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00233 _v5 = _v3.orientation
00234 _x = _v5
00235 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
00236 _x = self
00237 buff.write(_struct_3I.pack(_x.action_result.header.seq, _x.action_result.header.stamp.secs, _x.action_result.header.stamp.nsecs))
00238 _x = self.action_result.header.frame_id
00239 length = len(_x)
00240 if python3 or type(_x) == unicode:
00241 _x = _x.encode('utf-8')
00242 length = len(_x)
00243 buff.write(struct.pack('<I%ss'%length, length, _x))
00244 _x = self
00245 buff.write(_struct_2I.pack(_x.action_result.status.goal_id.stamp.secs, _x.action_result.status.goal_id.stamp.nsecs))
00246 _x = self.action_result.status.goal_id.id
00247 length = len(_x)
00248 if python3 or type(_x) == unicode:
00249 _x = _x.encode('utf-8')
00250 length = len(_x)
00251 buff.write(struct.pack('<I%ss'%length, length, _x))
00252 buff.write(_struct_B.pack(self.action_result.status.status))
00253 _x = self.action_result.status.text
00254 length = len(_x)
00255 if python3 or type(_x) == unicode:
00256 _x = _x.encode('utf-8')
00257 length = len(_x)
00258 buff.write(struct.pack('<I%ss'%length, length, _x))
00259 _x = self.action_result.result.msg
00260 length = len(_x)
00261 if python3 or type(_x) == unicode:
00262 _x = _x.encode('utf-8')
00263 length = len(_x)
00264 buff.write(struct.pack('<I%ss'%length, length, _x))
00265 _x = self
00266 buff.write(_struct_3I.pack(_x.action_feedback.header.seq, _x.action_feedback.header.stamp.secs, _x.action_feedback.header.stamp.nsecs))
00267 _x = self.action_feedback.header.frame_id
00268 length = len(_x)
00269 if python3 or type(_x) == unicode:
00270 _x = _x.encode('utf-8')
00271 length = len(_x)
00272 buff.write(struct.pack('<I%ss'%length, length, _x))
00273 _x = self
00274 buff.write(_struct_2I.pack(_x.action_feedback.status.goal_id.stamp.secs, _x.action_feedback.status.goal_id.stamp.nsecs))
00275 _x = self.action_feedback.status.goal_id.id
00276 length = len(_x)
00277 if python3 or type(_x) == unicode:
00278 _x = _x.encode('utf-8')
00279 length = len(_x)
00280 buff.write(struct.pack('<I%ss'%length, length, _x))
00281 buff.write(_struct_B.pack(self.action_feedback.status.status))
00282 _x = self.action_feedback.status.text
00283 length = len(_x)
00284 if python3 or type(_x) == unicode:
00285 _x = _x.encode('utf-8')
00286 length = len(_x)
00287 buff.write(struct.pack('<I%ss'%length, length, _x))
00288 buff.write(_struct_I.pack(self.action_feedback.feedback.waypoint_index))
00289 except struct.error as se: self._check_types(se)
00290 except TypeError as te: self._check_types(te)
00291
00292 def deserialize(self, str):
00293 """
00294 unpack serialized message in str into this message instance
00295 :param str: byte array of serialized message, ``str``
00296 """
00297 try:
00298 if self.action_goal is None:
00299 self.action_goal = eband_local_planner.msg.FollowBaseTrajectoryActionGoal()
00300 if self.action_result is None:
00301 self.action_result = eband_local_planner.msg.FollowBaseTrajectoryActionResult()
00302 if self.action_feedback is None:
00303 self.action_feedback = eband_local_planner.msg.FollowBaseTrajectoryActionFeedback()
00304 end = 0
00305 _x = self
00306 start = end
00307 end += 12
00308 (_x.action_goal.header.seq, _x.action_goal.header.stamp.secs, _x.action_goal.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00309 start = end
00310 end += 4
00311 (length,) = _struct_I.unpack(str[start:end])
00312 start = end
00313 end += length
00314 if python3:
00315 self.action_goal.header.frame_id = str[start:end].decode('utf-8')
00316 else:
00317 self.action_goal.header.frame_id = str[start:end]
00318 _x = self
00319 start = end
00320 end += 8
00321 (_x.action_goal.goal_id.stamp.secs, _x.action_goal.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00322 start = end
00323 end += 4
00324 (length,) = _struct_I.unpack(str[start:end])
00325 start = end
00326 end += length
00327 if python3:
00328 self.action_goal.goal_id.id = str[start:end].decode('utf-8')
00329 else:
00330 self.action_goal.goal_id.id = str[start:end]
00331 start = end
00332 end += 4
00333 (length,) = _struct_I.unpack(str[start:end])
00334 self.action_goal.goal.path = []
00335 for i in range(0, length):
00336 val1 = geometry_msgs.msg.PoseStamped()
00337 _v6 = val1.header
00338 start = end
00339 end += 4
00340 (_v6.seq,) = _struct_I.unpack(str[start:end])
00341 _v7 = _v6.stamp
00342 _x = _v7
00343 start = end
00344 end += 8
00345 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
00346 start = end
00347 end += 4
00348 (length,) = _struct_I.unpack(str[start:end])
00349 start = end
00350 end += length
00351 if python3:
00352 _v6.frame_id = str[start:end].decode('utf-8')
00353 else:
00354 _v6.frame_id = str[start:end]
00355 _v8 = val1.pose
00356 _v9 = _v8.position
00357 _x = _v9
00358 start = end
00359 end += 24
00360 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
00361 _v10 = _v8.orientation
00362 _x = _v10
00363 start = end
00364 end += 32
00365 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
00366 self.action_goal.goal.path.append(val1)
00367 _x = self
00368 start = end
00369 end += 12
00370 (_x.action_result.header.seq, _x.action_result.header.stamp.secs, _x.action_result.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00371 start = end
00372 end += 4
00373 (length,) = _struct_I.unpack(str[start:end])
00374 start = end
00375 end += length
00376 if python3:
00377 self.action_result.header.frame_id = str[start:end].decode('utf-8')
00378 else:
00379 self.action_result.header.frame_id = str[start:end]
00380 _x = self
00381 start = end
00382 end += 8
00383 (_x.action_result.status.goal_id.stamp.secs, _x.action_result.status.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00384 start = end
00385 end += 4
00386 (length,) = _struct_I.unpack(str[start:end])
00387 start = end
00388 end += length
00389 if python3:
00390 self.action_result.status.goal_id.id = str[start:end].decode('utf-8')
00391 else:
00392 self.action_result.status.goal_id.id = str[start:end]
00393 start = end
00394 end += 1
00395 (self.action_result.status.status,) = _struct_B.unpack(str[start:end])
00396 start = end
00397 end += 4
00398 (length,) = _struct_I.unpack(str[start:end])
00399 start = end
00400 end += length
00401 if python3:
00402 self.action_result.status.text = str[start:end].decode('utf-8')
00403 else:
00404 self.action_result.status.text = str[start:end]
00405 start = end
00406 end += 4
00407 (length,) = _struct_I.unpack(str[start:end])
00408 start = end
00409 end += length
00410 if python3:
00411 self.action_result.result.msg = str[start:end].decode('utf-8')
00412 else:
00413 self.action_result.result.msg = str[start:end]
00414 _x = self
00415 start = end
00416 end += 12
00417 (_x.action_feedback.header.seq, _x.action_feedback.header.stamp.secs, _x.action_feedback.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00418 start = end
00419 end += 4
00420 (length,) = _struct_I.unpack(str[start:end])
00421 start = end
00422 end += length
00423 if python3:
00424 self.action_feedback.header.frame_id = str[start:end].decode('utf-8')
00425 else:
00426 self.action_feedback.header.frame_id = str[start:end]
00427 _x = self
00428 start = end
00429 end += 8
00430 (_x.action_feedback.status.goal_id.stamp.secs, _x.action_feedback.status.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00431 start = end
00432 end += 4
00433 (length,) = _struct_I.unpack(str[start:end])
00434 start = end
00435 end += length
00436 if python3:
00437 self.action_feedback.status.goal_id.id = str[start:end].decode('utf-8')
00438 else:
00439 self.action_feedback.status.goal_id.id = str[start:end]
00440 start = end
00441 end += 1
00442 (self.action_feedback.status.status,) = _struct_B.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_feedback.status.text = str[start:end].decode('utf-8')
00450 else:
00451 self.action_feedback.status.text = str[start:end]
00452 start = end
00453 end += 4
00454 (self.action_feedback.feedback.waypoint_index,) = _struct_I.unpack(str[start:end])
00455 return self
00456 except struct.error as e:
00457 raise genpy.DeserializationError(e)
00458
00459
00460 def serialize_numpy(self, buff, numpy):
00461 """
00462 serialize message with numpy array types into buffer
00463 :param buff: buffer, ``StringIO``
00464 :param numpy: numpy python module
00465 """
00466 try:
00467 _x = self
00468 buff.write(_struct_3I.pack(_x.action_goal.header.seq, _x.action_goal.header.stamp.secs, _x.action_goal.header.stamp.nsecs))
00469 _x = self.action_goal.header.frame_id
00470 length = len(_x)
00471 if python3 or type(_x) == unicode:
00472 _x = _x.encode('utf-8')
00473 length = len(_x)
00474 buff.write(struct.pack('<I%ss'%length, length, _x))
00475 _x = self
00476 buff.write(_struct_2I.pack(_x.action_goal.goal_id.stamp.secs, _x.action_goal.goal_id.stamp.nsecs))
00477 _x = self.action_goal.goal_id.id
00478 length = len(_x)
00479 if python3 or type(_x) == unicode:
00480 _x = _x.encode('utf-8')
00481 length = len(_x)
00482 buff.write(struct.pack('<I%ss'%length, length, _x))
00483 length = len(self.action_goal.goal.path)
00484 buff.write(_struct_I.pack(length))
00485 for val1 in self.action_goal.goal.path:
00486 _v11 = val1.header
00487 buff.write(_struct_I.pack(_v11.seq))
00488 _v12 = _v11.stamp
00489 _x = _v12
00490 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00491 _x = _v11.frame_id
00492 length = len(_x)
00493 if python3 or type(_x) == unicode:
00494 _x = _x.encode('utf-8')
00495 length = len(_x)
00496 buff.write(struct.pack('<I%ss'%length, length, _x))
00497 _v13 = val1.pose
00498 _v14 = _v13.position
00499 _x = _v14
00500 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00501 _v15 = _v13.orientation
00502 _x = _v15
00503 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
00504 _x = self
00505 buff.write(_struct_3I.pack(_x.action_result.header.seq, _x.action_result.header.stamp.secs, _x.action_result.header.stamp.nsecs))
00506 _x = self.action_result.header.frame_id
00507 length = len(_x)
00508 if python3 or type(_x) == unicode:
00509 _x = _x.encode('utf-8')
00510 length = len(_x)
00511 buff.write(struct.pack('<I%ss'%length, length, _x))
00512 _x = self
00513 buff.write(_struct_2I.pack(_x.action_result.status.goal_id.stamp.secs, _x.action_result.status.goal_id.stamp.nsecs))
00514 _x = self.action_result.status.goal_id.id
00515 length = len(_x)
00516 if python3 or type(_x) == unicode:
00517 _x = _x.encode('utf-8')
00518 length = len(_x)
00519 buff.write(struct.pack('<I%ss'%length, length, _x))
00520 buff.write(_struct_B.pack(self.action_result.status.status))
00521 _x = self.action_result.status.text
00522 length = len(_x)
00523 if python3 or type(_x) == unicode:
00524 _x = _x.encode('utf-8')
00525 length = len(_x)
00526 buff.write(struct.pack('<I%ss'%length, length, _x))
00527 _x = self.action_result.result.msg
00528 length = len(_x)
00529 if python3 or type(_x) == unicode:
00530 _x = _x.encode('utf-8')
00531 length = len(_x)
00532 buff.write(struct.pack('<I%ss'%length, length, _x))
00533 _x = self
00534 buff.write(_struct_3I.pack(_x.action_feedback.header.seq, _x.action_feedback.header.stamp.secs, _x.action_feedback.header.stamp.nsecs))
00535 _x = self.action_feedback.header.frame_id
00536 length = len(_x)
00537 if python3 or type(_x) == unicode:
00538 _x = _x.encode('utf-8')
00539 length = len(_x)
00540 buff.write(struct.pack('<I%ss'%length, length, _x))
00541 _x = self
00542 buff.write(_struct_2I.pack(_x.action_feedback.status.goal_id.stamp.secs, _x.action_feedback.status.goal_id.stamp.nsecs))
00543 _x = self.action_feedback.status.goal_id.id
00544 length = len(_x)
00545 if python3 or type(_x) == unicode:
00546 _x = _x.encode('utf-8')
00547 length = len(_x)
00548 buff.write(struct.pack('<I%ss'%length, length, _x))
00549 buff.write(_struct_B.pack(self.action_feedback.status.status))
00550 _x = self.action_feedback.status.text
00551 length = len(_x)
00552 if python3 or type(_x) == unicode:
00553 _x = _x.encode('utf-8')
00554 length = len(_x)
00555 buff.write(struct.pack('<I%ss'%length, length, _x))
00556 buff.write(_struct_I.pack(self.action_feedback.feedback.waypoint_index))
00557 except struct.error as se: self._check_types(se)
00558 except TypeError as te: self._check_types(te)
00559
00560 def deserialize_numpy(self, str, numpy):
00561 """
00562 unpack serialized message in str into this message instance using numpy for array types
00563 :param str: byte array of serialized message, ``str``
00564 :param numpy: numpy python module
00565 """
00566 try:
00567 if self.action_goal is None:
00568 self.action_goal = eband_local_planner.msg.FollowBaseTrajectoryActionGoal()
00569 if self.action_result is None:
00570 self.action_result = eband_local_planner.msg.FollowBaseTrajectoryActionResult()
00571 if self.action_feedback is None:
00572 self.action_feedback = eband_local_planner.msg.FollowBaseTrajectoryActionFeedback()
00573 end = 0
00574 _x = self
00575 start = end
00576 end += 12
00577 (_x.action_goal.header.seq, _x.action_goal.header.stamp.secs, _x.action_goal.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00578 start = end
00579 end += 4
00580 (length,) = _struct_I.unpack(str[start:end])
00581 start = end
00582 end += length
00583 if python3:
00584 self.action_goal.header.frame_id = str[start:end].decode('utf-8')
00585 else:
00586 self.action_goal.header.frame_id = str[start:end]
00587 _x = self
00588 start = end
00589 end += 8
00590 (_x.action_goal.goal_id.stamp.secs, _x.action_goal.goal_id.stamp.nsecs,) = _struct_2I.unpack(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_id.id = str[start:end].decode('utf-8')
00598 else:
00599 self.action_goal.goal_id.id = str[start:end]
00600 start = end
00601 end += 4
00602 (length,) = _struct_I.unpack(str[start:end])
00603 self.action_goal.goal.path = []
00604 for i in range(0, length):
00605 val1 = geometry_msgs.msg.PoseStamped()
00606 _v16 = val1.header
00607 start = end
00608 end += 4
00609 (_v16.seq,) = _struct_I.unpack(str[start:end])
00610 _v17 = _v16.stamp
00611 _x = _v17
00612 start = end
00613 end += 8
00614 (_x.secs, _x.nsecs,) = _struct_2I.unpack(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 _v16.frame_id = str[start:end].decode('utf-8')
00622 else:
00623 _v16.frame_id = str[start:end]
00624 _v18 = val1.pose
00625 _v19 = _v18.position
00626 _x = _v19
00627 start = end
00628 end += 24
00629 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
00630 _v20 = _v18.orientation
00631 _x = _v20
00632 start = end
00633 end += 32
00634 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
00635 self.action_goal.goal.path.append(val1)
00636 _x = self
00637 start = end
00638 end += 12
00639 (_x.action_result.header.seq, _x.action_result.header.stamp.secs, _x.action_result.header.stamp.nsecs,) = _struct_3I.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_result.header.frame_id = str[start:end].decode('utf-8')
00647 else:
00648 self.action_result.header.frame_id = str[start:end]
00649 _x = self
00650 start = end
00651 end += 8
00652 (_x.action_result.status.goal_id.stamp.secs, _x.action_result.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_result.status.goal_id.id = str[start:end].decode('utf-8')
00660 else:
00661 self.action_result.status.goal_id.id = str[start:end]
00662 start = end
00663 end += 1
00664 (self.action_result.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_result.status.text = str[start:end].decode('utf-8')
00672 else:
00673 self.action_result.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_result.result.msg = str[start:end].decode('utf-8')
00681 else:
00682 self.action_result.result.msg = str[start:end]
00683 _x = self
00684 start = end
00685 end += 12
00686 (_x.action_feedback.header.seq, _x.action_feedback.header.stamp.secs, _x.action_feedback.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00687 start = end
00688 end += 4
00689 (length,) = _struct_I.unpack(str[start:end])
00690 start = end
00691 end += length
00692 if python3:
00693 self.action_feedback.header.frame_id = str[start:end].decode('utf-8')
00694 else:
00695 self.action_feedback.header.frame_id = str[start:end]
00696 _x = self
00697 start = end
00698 end += 8
00699 (_x.action_feedback.status.goal_id.stamp.secs, _x.action_feedback.status.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00700 start = end
00701 end += 4
00702 (length,) = _struct_I.unpack(str[start:end])
00703 start = end
00704 end += length
00705 if python3:
00706 self.action_feedback.status.goal_id.id = str[start:end].decode('utf-8')
00707 else:
00708 self.action_feedback.status.goal_id.id = str[start:end]
00709 start = end
00710 end += 1
00711 (self.action_feedback.status.status,) = _struct_B.unpack(str[start:end])
00712 start = end
00713 end += 4
00714 (length,) = _struct_I.unpack(str[start:end])
00715 start = end
00716 end += length
00717 if python3:
00718 self.action_feedback.status.text = str[start:end].decode('utf-8')
00719 else:
00720 self.action_feedback.status.text = str[start:end]
00721 start = end
00722 end += 4
00723 (self.action_feedback.feedback.waypoint_index,) = _struct_I.unpack(str[start:end])
00724 return self
00725 except struct.error as e:
00726 raise genpy.DeserializationError(e)
00727
00728 _struct_I = genpy.struct_I
00729 _struct_B = struct.Struct("<B")
00730 _struct_3I = struct.Struct("<3I")
00731 _struct_4d = struct.Struct("<4d")
00732 _struct_2I = struct.Struct("<2I")
00733 _struct_3d = struct.Struct("<3d")