00001 """autogenerated by genpy from laser_cb_detector/ConfigAction.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 laser_cb_detector.msg
00010 import std_msgs.msg
00011
00012 class ConfigAction(genpy.Message):
00013 _md5sum = "9ab17a2bdd4d1b9a55316f3c57556453"
00014 _type = "laser_cb_detector/ConfigAction"
00015 _has_header = False
00016 _full_text = """# ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00017
00018 ConfigActionGoal action_goal
00019 ConfigActionResult action_result
00020 ConfigActionFeedback action_feedback
00021
00022 ================================================================================
00023 MSG: laser_cb_detector/ConfigActionGoal
00024 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00025
00026 Header header
00027 actionlib_msgs/GoalID goal_id
00028 ConfigGoal 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: laser_cb_detector/ConfigGoal
00063 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00064 uint32 num_x # Number of checkerboard corners in the X direction
00065 uint32 num_y # Number of corners in the Y direction
00066 float32 spacing_x # Spacing between corners in the X direction (meters)
00067 float32 spacing_y # Spacing between corners in the Y direction (meters)
00068
00069 # Specify how many times we want to upsample the image.
00070 # This is often useful for detecting small checkerboards far away
00071 float32 width_scaling
00072 float32 height_scaling
00073
00074 # Specifiy how intensity maps into a uint8. A specified window of
00075 # intensities is linearly scaled to 0-255
00076 float32 min_intensity
00077 float32 max_intensity
00078
00079 # Configure openCV's subpixel corner detector
00080 uint32 subpixel_window
00081 int32 subpixel_zero_zone
00082
00083 # Specify if we need to flip snapshot image model. This is usually necessary
00084 # when the laser scans from right to left, since this is the opposite of images,
00085 # which are normally indexed left to right
00086 uint8 flip_horizontal
00087
00088
00089 ================================================================================
00090 MSG: laser_cb_detector/ConfigActionResult
00091 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00092
00093 Header header
00094 actionlib_msgs/GoalStatus status
00095 ConfigResult result
00096
00097 ================================================================================
00098 MSG: actionlib_msgs/GoalStatus
00099 GoalID goal_id
00100 uint8 status
00101 uint8 PENDING = 0 # The goal has yet to be processed by the action server
00102 uint8 ACTIVE = 1 # The goal is currently being processed by the action server
00103 uint8 PREEMPTED = 2 # The goal received a cancel request after it started executing
00104 # and has since completed its execution (Terminal State)
00105 uint8 SUCCEEDED = 3 # The goal was achieved successfully by the action server (Terminal State)
00106 uint8 ABORTED = 4 # The goal was aborted during execution by the action server due
00107 # to some failure (Terminal State)
00108 uint8 REJECTED = 5 # The goal was rejected by the action server without being processed,
00109 # because the goal was unattainable or invalid (Terminal State)
00110 uint8 PREEMPTING = 6 # The goal received a cancel request after it started executing
00111 # and has not yet completed execution
00112 uint8 RECALLING = 7 # The goal received a cancel request before it started executing,
00113 # but the action server has not yet confirmed that the goal is canceled
00114 uint8 RECALLED = 8 # The goal received a cancel request before it started executing
00115 # and was successfully cancelled (Terminal State)
00116 uint8 LOST = 9 # An action client can determine that a goal is LOST. This should not be
00117 # sent over the wire by an action server
00118
00119 #Allow for the user to associate a string with GoalStatus for debugging
00120 string text
00121
00122
00123 ================================================================================
00124 MSG: laser_cb_detector/ConfigResult
00125 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00126
00127 ================================================================================
00128 MSG: laser_cb_detector/ConfigActionFeedback
00129 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00130
00131 Header header
00132 actionlib_msgs/GoalStatus status
00133 ConfigFeedback feedback
00134
00135 ================================================================================
00136 MSG: laser_cb_detector/ConfigFeedback
00137 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00138
00139
00140 """
00141 __slots__ = ['action_goal','action_result','action_feedback']
00142 _slot_types = ['laser_cb_detector/ConfigActionGoal','laser_cb_detector/ConfigActionResult','laser_cb_detector/ConfigActionFeedback']
00143
00144 def __init__(self, *args, **kwds):
00145 """
00146 Constructor. Any message fields that are implicitly/explicitly
00147 set to None will be assigned a default value. The recommend
00148 use is keyword arguments as this is more robust to future message
00149 changes. You cannot mix in-order arguments and keyword arguments.
00150
00151 The available fields are:
00152 action_goal,action_result,action_feedback
00153
00154 :param args: complete set of field values, in .msg order
00155 :param kwds: use keyword arguments corresponding to message field names
00156 to set specific fields.
00157 """
00158 if args or kwds:
00159 super(ConfigAction, self).__init__(*args, **kwds)
00160
00161 if self.action_goal is None:
00162 self.action_goal = laser_cb_detector.msg.ConfigActionGoal()
00163 if self.action_result is None:
00164 self.action_result = laser_cb_detector.msg.ConfigActionResult()
00165 if self.action_feedback is None:
00166 self.action_feedback = laser_cb_detector.msg.ConfigActionFeedback()
00167 else:
00168 self.action_goal = laser_cb_detector.msg.ConfigActionGoal()
00169 self.action_result = laser_cb_detector.msg.ConfigActionResult()
00170 self.action_feedback = laser_cb_detector.msg.ConfigActionFeedback()
00171
00172 def _get_types(self):
00173 """
00174 internal API method
00175 """
00176 return self._slot_types
00177
00178 def serialize(self, buff):
00179 """
00180 serialize message into buffer
00181 :param buff: buffer, ``StringIO``
00182 """
00183 try:
00184 _x = self
00185 buff.write(_struct_3I.pack(_x.action_goal.header.seq, _x.action_goal.header.stamp.secs, _x.action_goal.header.stamp.nsecs))
00186 _x = self.action_goal.header.frame_id
00187 length = len(_x)
00188 if python3 or type(_x) == unicode:
00189 _x = _x.encode('utf-8')
00190 length = len(_x)
00191 buff.write(struct.pack('<I%ss'%length, length, _x))
00192 _x = self
00193 buff.write(_struct_2I.pack(_x.action_goal.goal_id.stamp.secs, _x.action_goal.goal_id.stamp.nsecs))
00194 _x = self.action_goal.goal_id.id
00195 length = len(_x)
00196 if python3 or type(_x) == unicode:
00197 _x = _x.encode('utf-8')
00198 length = len(_x)
00199 buff.write(struct.pack('<I%ss'%length, length, _x))
00200 _x = self
00201 buff.write(_struct_2I6fIiB3I.pack(_x.action_goal.goal.num_x, _x.action_goal.goal.num_y, _x.action_goal.goal.spacing_x, _x.action_goal.goal.spacing_y, _x.action_goal.goal.width_scaling, _x.action_goal.goal.height_scaling, _x.action_goal.goal.min_intensity, _x.action_goal.goal.max_intensity, _x.action_goal.goal.subpixel_window, _x.action_goal.goal.subpixel_zero_zone, _x.action_goal.goal.flip_horizontal, _x.action_result.header.seq, _x.action_result.header.stamp.secs, _x.action_result.header.stamp.nsecs))
00202 _x = self.action_result.header.frame_id
00203 length = len(_x)
00204 if python3 or type(_x) == unicode:
00205 _x = _x.encode('utf-8')
00206 length = len(_x)
00207 buff.write(struct.pack('<I%ss'%length, length, _x))
00208 _x = self
00209 buff.write(_struct_2I.pack(_x.action_result.status.goal_id.stamp.secs, _x.action_result.status.goal_id.stamp.nsecs))
00210 _x = self.action_result.status.goal_id.id
00211 length = len(_x)
00212 if python3 or type(_x) == unicode:
00213 _x = _x.encode('utf-8')
00214 length = len(_x)
00215 buff.write(struct.pack('<I%ss'%length, length, _x))
00216 buff.write(_struct_B.pack(self.action_result.status.status))
00217 _x = self.action_result.status.text
00218 length = len(_x)
00219 if python3 or type(_x) == unicode:
00220 _x = _x.encode('utf-8')
00221 length = len(_x)
00222 buff.write(struct.pack('<I%ss'%length, length, _x))
00223 _x = self
00224 buff.write(_struct_3I.pack(_x.action_feedback.header.seq, _x.action_feedback.header.stamp.secs, _x.action_feedback.header.stamp.nsecs))
00225 _x = self.action_feedback.header.frame_id
00226 length = len(_x)
00227 if python3 or type(_x) == unicode:
00228 _x = _x.encode('utf-8')
00229 length = len(_x)
00230 buff.write(struct.pack('<I%ss'%length, length, _x))
00231 _x = self
00232 buff.write(_struct_2I.pack(_x.action_feedback.status.goal_id.stamp.secs, _x.action_feedback.status.goal_id.stamp.nsecs))
00233 _x = self.action_feedback.status.goal_id.id
00234 length = len(_x)
00235 if python3 or type(_x) == unicode:
00236 _x = _x.encode('utf-8')
00237 length = len(_x)
00238 buff.write(struct.pack('<I%ss'%length, length, _x))
00239 buff.write(_struct_B.pack(self.action_feedback.status.status))
00240 _x = self.action_feedback.status.text
00241 length = len(_x)
00242 if python3 or type(_x) == unicode:
00243 _x = _x.encode('utf-8')
00244 length = len(_x)
00245 buff.write(struct.pack('<I%ss'%length, length, _x))
00246 except struct.error as se: self._check_types(se)
00247 except TypeError as te: self._check_types(te)
00248
00249 def deserialize(self, str):
00250 """
00251 unpack serialized message in str into this message instance
00252 :param str: byte array of serialized message, ``str``
00253 """
00254 try:
00255 if self.action_goal is None:
00256 self.action_goal = laser_cb_detector.msg.ConfigActionGoal()
00257 if self.action_result is None:
00258 self.action_result = laser_cb_detector.msg.ConfigActionResult()
00259 if self.action_feedback is None:
00260 self.action_feedback = laser_cb_detector.msg.ConfigActionFeedback()
00261 end = 0
00262 _x = self
00263 start = end
00264 end += 12
00265 (_x.action_goal.header.seq, _x.action_goal.header.stamp.secs, _x.action_goal.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00266 start = end
00267 end += 4
00268 (length,) = _struct_I.unpack(str[start:end])
00269 start = end
00270 end += length
00271 if python3:
00272 self.action_goal.header.frame_id = str[start:end].decode('utf-8')
00273 else:
00274 self.action_goal.header.frame_id = str[start:end]
00275 _x = self
00276 start = end
00277 end += 8
00278 (_x.action_goal.goal_id.stamp.secs, _x.action_goal.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00279 start = end
00280 end += 4
00281 (length,) = _struct_I.unpack(str[start:end])
00282 start = end
00283 end += length
00284 if python3:
00285 self.action_goal.goal_id.id = str[start:end].decode('utf-8')
00286 else:
00287 self.action_goal.goal_id.id = str[start:end]
00288 _x = self
00289 start = end
00290 end += 53
00291 (_x.action_goal.goal.num_x, _x.action_goal.goal.num_y, _x.action_goal.goal.spacing_x, _x.action_goal.goal.spacing_y, _x.action_goal.goal.width_scaling, _x.action_goal.goal.height_scaling, _x.action_goal.goal.min_intensity, _x.action_goal.goal.max_intensity, _x.action_goal.goal.subpixel_window, _x.action_goal.goal.subpixel_zero_zone, _x.action_goal.goal.flip_horizontal, _x.action_result.header.seq, _x.action_result.header.stamp.secs, _x.action_result.header.stamp.nsecs,) = _struct_2I6fIiB3I.unpack(str[start:end])
00292 start = end
00293 end += 4
00294 (length,) = _struct_I.unpack(str[start:end])
00295 start = end
00296 end += length
00297 if python3:
00298 self.action_result.header.frame_id = str[start:end].decode('utf-8')
00299 else:
00300 self.action_result.header.frame_id = str[start:end]
00301 _x = self
00302 start = end
00303 end += 8
00304 (_x.action_result.status.goal_id.stamp.secs, _x.action_result.status.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00305 start = end
00306 end += 4
00307 (length,) = _struct_I.unpack(str[start:end])
00308 start = end
00309 end += length
00310 if python3:
00311 self.action_result.status.goal_id.id = str[start:end].decode('utf-8')
00312 else:
00313 self.action_result.status.goal_id.id = str[start:end]
00314 start = end
00315 end += 1
00316 (self.action_result.status.status,) = _struct_B.unpack(str[start:end])
00317 start = end
00318 end += 4
00319 (length,) = _struct_I.unpack(str[start:end])
00320 start = end
00321 end += length
00322 if python3:
00323 self.action_result.status.text = str[start:end].decode('utf-8')
00324 else:
00325 self.action_result.status.text = str[start:end]
00326 _x = self
00327 start = end
00328 end += 12
00329 (_x.action_feedback.header.seq, _x.action_feedback.header.stamp.secs, _x.action_feedback.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00330 start = end
00331 end += 4
00332 (length,) = _struct_I.unpack(str[start:end])
00333 start = end
00334 end += length
00335 if python3:
00336 self.action_feedback.header.frame_id = str[start:end].decode('utf-8')
00337 else:
00338 self.action_feedback.header.frame_id = str[start:end]
00339 _x = self
00340 start = end
00341 end += 8
00342 (_x.action_feedback.status.goal_id.stamp.secs, _x.action_feedback.status.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00343 start = end
00344 end += 4
00345 (length,) = _struct_I.unpack(str[start:end])
00346 start = end
00347 end += length
00348 if python3:
00349 self.action_feedback.status.goal_id.id = str[start:end].decode('utf-8')
00350 else:
00351 self.action_feedback.status.goal_id.id = str[start:end]
00352 start = end
00353 end += 1
00354 (self.action_feedback.status.status,) = _struct_B.unpack(str[start:end])
00355 start = end
00356 end += 4
00357 (length,) = _struct_I.unpack(str[start:end])
00358 start = end
00359 end += length
00360 if python3:
00361 self.action_feedback.status.text = str[start:end].decode('utf-8')
00362 else:
00363 self.action_feedback.status.text = str[start:end]
00364 return self
00365 except struct.error as e:
00366 raise genpy.DeserializationError(e)
00367
00368
00369 def serialize_numpy(self, buff, numpy):
00370 """
00371 serialize message with numpy array types into buffer
00372 :param buff: buffer, ``StringIO``
00373 :param numpy: numpy python module
00374 """
00375 try:
00376 _x = self
00377 buff.write(_struct_3I.pack(_x.action_goal.header.seq, _x.action_goal.header.stamp.secs, _x.action_goal.header.stamp.nsecs))
00378 _x = self.action_goal.header.frame_id
00379 length = len(_x)
00380 if python3 or type(_x) == unicode:
00381 _x = _x.encode('utf-8')
00382 length = len(_x)
00383 buff.write(struct.pack('<I%ss'%length, length, _x))
00384 _x = self
00385 buff.write(_struct_2I.pack(_x.action_goal.goal_id.stamp.secs, _x.action_goal.goal_id.stamp.nsecs))
00386 _x = self.action_goal.goal_id.id
00387 length = len(_x)
00388 if python3 or type(_x) == unicode:
00389 _x = _x.encode('utf-8')
00390 length = len(_x)
00391 buff.write(struct.pack('<I%ss'%length, length, _x))
00392 _x = self
00393 buff.write(_struct_2I6fIiB3I.pack(_x.action_goal.goal.num_x, _x.action_goal.goal.num_y, _x.action_goal.goal.spacing_x, _x.action_goal.goal.spacing_y, _x.action_goal.goal.width_scaling, _x.action_goal.goal.height_scaling, _x.action_goal.goal.min_intensity, _x.action_goal.goal.max_intensity, _x.action_goal.goal.subpixel_window, _x.action_goal.goal.subpixel_zero_zone, _x.action_goal.goal.flip_horizontal, _x.action_result.header.seq, _x.action_result.header.stamp.secs, _x.action_result.header.stamp.nsecs))
00394 _x = self.action_result.header.frame_id
00395 length = len(_x)
00396 if python3 or type(_x) == unicode:
00397 _x = _x.encode('utf-8')
00398 length = len(_x)
00399 buff.write(struct.pack('<I%ss'%length, length, _x))
00400 _x = self
00401 buff.write(_struct_2I.pack(_x.action_result.status.goal_id.stamp.secs, _x.action_result.status.goal_id.stamp.nsecs))
00402 _x = self.action_result.status.goal_id.id
00403 length = len(_x)
00404 if python3 or type(_x) == unicode:
00405 _x = _x.encode('utf-8')
00406 length = len(_x)
00407 buff.write(struct.pack('<I%ss'%length, length, _x))
00408 buff.write(_struct_B.pack(self.action_result.status.status))
00409 _x = self.action_result.status.text
00410 length = len(_x)
00411 if python3 or type(_x) == unicode:
00412 _x = _x.encode('utf-8')
00413 length = len(_x)
00414 buff.write(struct.pack('<I%ss'%length, length, _x))
00415 _x = self
00416 buff.write(_struct_3I.pack(_x.action_feedback.header.seq, _x.action_feedback.header.stamp.secs, _x.action_feedback.header.stamp.nsecs))
00417 _x = self.action_feedback.header.frame_id
00418 length = len(_x)
00419 if python3 or type(_x) == unicode:
00420 _x = _x.encode('utf-8')
00421 length = len(_x)
00422 buff.write(struct.pack('<I%ss'%length, length, _x))
00423 _x = self
00424 buff.write(_struct_2I.pack(_x.action_feedback.status.goal_id.stamp.secs, _x.action_feedback.status.goal_id.stamp.nsecs))
00425 _x = self.action_feedback.status.goal_id.id
00426 length = len(_x)
00427 if python3 or type(_x) == unicode:
00428 _x = _x.encode('utf-8')
00429 length = len(_x)
00430 buff.write(struct.pack('<I%ss'%length, length, _x))
00431 buff.write(_struct_B.pack(self.action_feedback.status.status))
00432 _x = self.action_feedback.status.text
00433 length = len(_x)
00434 if python3 or type(_x) == unicode:
00435 _x = _x.encode('utf-8')
00436 length = len(_x)
00437 buff.write(struct.pack('<I%ss'%length, length, _x))
00438 except struct.error as se: self._check_types(se)
00439 except TypeError as te: self._check_types(te)
00440
00441 def deserialize_numpy(self, str, numpy):
00442 """
00443 unpack serialized message in str into this message instance using numpy for array types
00444 :param str: byte array of serialized message, ``str``
00445 :param numpy: numpy python module
00446 """
00447 try:
00448 if self.action_goal is None:
00449 self.action_goal = laser_cb_detector.msg.ConfigActionGoal()
00450 if self.action_result is None:
00451 self.action_result = laser_cb_detector.msg.ConfigActionResult()
00452 if self.action_feedback is None:
00453 self.action_feedback = laser_cb_detector.msg.ConfigActionFeedback()
00454 end = 0
00455 _x = self
00456 start = end
00457 end += 12
00458 (_x.action_goal.header.seq, _x.action_goal.header.stamp.secs, _x.action_goal.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00459 start = end
00460 end += 4
00461 (length,) = _struct_I.unpack(str[start:end])
00462 start = end
00463 end += length
00464 if python3:
00465 self.action_goal.header.frame_id = str[start:end].decode('utf-8')
00466 else:
00467 self.action_goal.header.frame_id = str[start:end]
00468 _x = self
00469 start = end
00470 end += 8
00471 (_x.action_goal.goal_id.stamp.secs, _x.action_goal.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00472 start = end
00473 end += 4
00474 (length,) = _struct_I.unpack(str[start:end])
00475 start = end
00476 end += length
00477 if python3:
00478 self.action_goal.goal_id.id = str[start:end].decode('utf-8')
00479 else:
00480 self.action_goal.goal_id.id = str[start:end]
00481 _x = self
00482 start = end
00483 end += 53
00484 (_x.action_goal.goal.num_x, _x.action_goal.goal.num_y, _x.action_goal.goal.spacing_x, _x.action_goal.goal.spacing_y, _x.action_goal.goal.width_scaling, _x.action_goal.goal.height_scaling, _x.action_goal.goal.min_intensity, _x.action_goal.goal.max_intensity, _x.action_goal.goal.subpixel_window, _x.action_goal.goal.subpixel_zero_zone, _x.action_goal.goal.flip_horizontal, _x.action_result.header.seq, _x.action_result.header.stamp.secs, _x.action_result.header.stamp.nsecs,) = _struct_2I6fIiB3I.unpack(str[start:end])
00485 start = end
00486 end += 4
00487 (length,) = _struct_I.unpack(str[start:end])
00488 start = end
00489 end += length
00490 if python3:
00491 self.action_result.header.frame_id = str[start:end].decode('utf-8')
00492 else:
00493 self.action_result.header.frame_id = str[start:end]
00494 _x = self
00495 start = end
00496 end += 8
00497 (_x.action_result.status.goal_id.stamp.secs, _x.action_result.status.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00498 start = end
00499 end += 4
00500 (length,) = _struct_I.unpack(str[start:end])
00501 start = end
00502 end += length
00503 if python3:
00504 self.action_result.status.goal_id.id = str[start:end].decode('utf-8')
00505 else:
00506 self.action_result.status.goal_id.id = str[start:end]
00507 start = end
00508 end += 1
00509 (self.action_result.status.status,) = _struct_B.unpack(str[start:end])
00510 start = end
00511 end += 4
00512 (length,) = _struct_I.unpack(str[start:end])
00513 start = end
00514 end += length
00515 if python3:
00516 self.action_result.status.text = str[start:end].decode('utf-8')
00517 else:
00518 self.action_result.status.text = str[start:end]
00519 _x = self
00520 start = end
00521 end += 12
00522 (_x.action_feedback.header.seq, _x.action_feedback.header.stamp.secs, _x.action_feedback.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00523 start = end
00524 end += 4
00525 (length,) = _struct_I.unpack(str[start:end])
00526 start = end
00527 end += length
00528 if python3:
00529 self.action_feedback.header.frame_id = str[start:end].decode('utf-8')
00530 else:
00531 self.action_feedback.header.frame_id = str[start:end]
00532 _x = self
00533 start = end
00534 end += 8
00535 (_x.action_feedback.status.goal_id.stamp.secs, _x.action_feedback.status.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00536 start = end
00537 end += 4
00538 (length,) = _struct_I.unpack(str[start:end])
00539 start = end
00540 end += length
00541 if python3:
00542 self.action_feedback.status.goal_id.id = str[start:end].decode('utf-8')
00543 else:
00544 self.action_feedback.status.goal_id.id = str[start:end]
00545 start = end
00546 end += 1
00547 (self.action_feedback.status.status,) = _struct_B.unpack(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 self.action_feedback.status.text = str[start:end].decode('utf-8')
00555 else:
00556 self.action_feedback.status.text = str[start:end]
00557 return self
00558 except struct.error as e:
00559 raise genpy.DeserializationError(e)
00560
00561 _struct_I = genpy.struct_I
00562 _struct_3I = struct.Struct("<3I")
00563 _struct_B = struct.Struct("<B")
00564 _struct_2I6fIiB3I = struct.Struct("<2I6fIiB3I")
00565 _struct_2I = struct.Struct("<2I")