$search
00001 """autogenerated by genmsg_py from FindFiducialAction.msg. Do not edit.""" 00002 import roslib.message 00003 import struct 00004 00005 import geometry_msgs.msg 00006 import std_msgs.msg 00007 import roslib.rostime 00008 import actionlib_msgs.msg 00009 import turtlebot_actions.msg 00010 00011 class FindFiducialAction(roslib.message.Message): 00012 _md5sum = "87cc8981a7a81f16abc7af19809908dd" 00013 _type = "turtlebot_actions/FindFiducialAction" 00014 _has_header = False #flag to mark the presence of a Header object 00015 _full_text = """# ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ====== 00016 00017 FindFiducialActionGoal action_goal 00018 FindFiducialActionResult action_result 00019 FindFiducialActionFeedback action_feedback 00020 00021 ================================================================================ 00022 MSG: turtlebot_actions/FindFiducialActionGoal 00023 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ====== 00024 00025 Header header 00026 actionlib_msgs/GoalID goal_id 00027 FindFiducialGoal goal 00028 00029 ================================================================================ 00030 MSG: std_msgs/Header 00031 # Standard metadata for higher-level stamped data types. 00032 # This is generally used to communicate timestamped data 00033 # in a particular coordinate frame. 00034 # 00035 # sequence ID: consecutively increasing ID 00036 uint32 seq 00037 #Two-integer timestamp that is expressed as: 00038 # * stamp.secs: seconds (stamp_secs) since epoch 00039 # * stamp.nsecs: nanoseconds since stamp_secs 00040 # time-handling sugar is provided by the client library 00041 time stamp 00042 #Frame this data is associated with 00043 # 0: no frame 00044 # 1: global frame 00045 string frame_id 00046 00047 ================================================================================ 00048 MSG: actionlib_msgs/GoalID 00049 # The stamp should store the time at which this goal was requested. 00050 # It is used by an action server when it tries to preempt all 00051 # goals that were requested before a certain time 00052 time stamp 00053 00054 # The id provides a way to associate feedback and 00055 # result message with specific goal requests. The id 00056 # specified must be unique. 00057 string id 00058 00059 00060 ================================================================================ 00061 MSG: turtlebot_actions/FindFiducialGoal 00062 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ====== 00063 #goal definition 00064 uint8 CHESSBOARD = 1 00065 uint8 CIRCLES_GRID = 2 00066 uint8 ASYMMETRIC_CIRCLES_GRID =3 00067 00068 string camera_name # name of the camera 00069 uint8 pattern_width # number of objects across 00070 uint8 pattern_height # number of objects down 00071 float32 pattern_size # size the object pattern (square size or circle size) 00072 uint8 pattern_type # type of pattern (CHESSBOARD, CIRCLES_GRID, ASYMMETRIC_CIRCLES_GRID) 00073 00074 ================================================================================ 00075 MSG: turtlebot_actions/FindFiducialActionResult 00076 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ====== 00077 00078 Header header 00079 actionlib_msgs/GoalStatus status 00080 FindFiducialResult result 00081 00082 ================================================================================ 00083 MSG: actionlib_msgs/GoalStatus 00084 GoalID goal_id 00085 uint8 status 00086 uint8 PENDING = 0 # The goal has yet to be processed by the action server 00087 uint8 ACTIVE = 1 # The goal is currently being processed by the action server 00088 uint8 PREEMPTED = 2 # The goal received a cancel request after it started executing 00089 # and has since completed its execution (Terminal State) 00090 uint8 SUCCEEDED = 3 # The goal was achieved successfully by the action server (Terminal State) 00091 uint8 ABORTED = 4 # The goal was aborted during execution by the action server due 00092 # to some failure (Terminal State) 00093 uint8 REJECTED = 5 # The goal was rejected by the action server without being processed, 00094 # because the goal was unattainable or invalid (Terminal State) 00095 uint8 PREEMPTING = 6 # The goal received a cancel request after it started executing 00096 # and has not yet completed execution 00097 uint8 RECALLING = 7 # The goal received a cancel request before it started executing, 00098 # but the action server has not yet confirmed that the goal is canceled 00099 uint8 RECALLED = 8 # The goal received a cancel request before it started executing 00100 # and was successfully cancelled (Terminal State) 00101 uint8 LOST = 9 # An action client can determine that a goal is LOST. This should not be 00102 # sent over the wire by an action server 00103 00104 #Allow for the user to associate a string with GoalStatus for debugging 00105 string text 00106 00107 00108 ================================================================================ 00109 MSG: turtlebot_actions/FindFiducialResult 00110 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ====== 00111 #result definition 00112 geometry_msgs/PoseStamped pose 00113 00114 ================================================================================ 00115 MSG: geometry_msgs/PoseStamped 00116 # A Pose with reference coordinate frame and timestamp 00117 Header header 00118 Pose pose 00119 00120 ================================================================================ 00121 MSG: geometry_msgs/Pose 00122 # A representation of pose in free space, composed of postion and orientation. 00123 Point position 00124 Quaternion orientation 00125 00126 ================================================================================ 00127 MSG: geometry_msgs/Point 00128 # This contains the position of a point in free space 00129 float64 x 00130 float64 y 00131 float64 z 00132 00133 ================================================================================ 00134 MSG: geometry_msgs/Quaternion 00135 # This represents an orientation in free space in quaternion form. 00136 00137 float64 x 00138 float64 y 00139 float64 z 00140 float64 w 00141 00142 ================================================================================ 00143 MSG: turtlebot_actions/FindFiducialActionFeedback 00144 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ====== 00145 00146 Header header 00147 actionlib_msgs/GoalStatus status 00148 FindFiducialFeedback feedback 00149 00150 ================================================================================ 00151 MSG: turtlebot_actions/FindFiducialFeedback 00152 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ====== 00153 #feedback 00154 00155 00156 00157 """ 00158 __slots__ = ['action_goal','action_result','action_feedback'] 00159 _slot_types = ['turtlebot_actions/FindFiducialActionGoal','turtlebot_actions/FindFiducialActionResult','turtlebot_actions/FindFiducialActionFeedback'] 00160 00161 def __init__(self, *args, **kwds): 00162 """ 00163 Constructor. Any message fields that are implicitly/explicitly 00164 set to None will be assigned a default value. The recommend 00165 use is keyword arguments as this is more robust to future message 00166 changes. You cannot mix in-order arguments and keyword arguments. 00167 00168 The available fields are: 00169 action_goal,action_result,action_feedback 00170 00171 @param args: complete set of field values, in .msg order 00172 @param kwds: use keyword arguments corresponding to message field names 00173 to set specific fields. 00174 """ 00175 if args or kwds: 00176 super(FindFiducialAction, self).__init__(*args, **kwds) 00177 #message fields cannot be None, assign default values for those that are 00178 if self.action_goal is None: 00179 self.action_goal = turtlebot_actions.msg.FindFiducialActionGoal() 00180 if self.action_result is None: 00181 self.action_result = turtlebot_actions.msg.FindFiducialActionResult() 00182 if self.action_feedback is None: 00183 self.action_feedback = turtlebot_actions.msg.FindFiducialActionFeedback() 00184 else: 00185 self.action_goal = turtlebot_actions.msg.FindFiducialActionGoal() 00186 self.action_result = turtlebot_actions.msg.FindFiducialActionResult() 00187 self.action_feedback = turtlebot_actions.msg.FindFiducialActionFeedback() 00188 00189 def _get_types(self): 00190 """ 00191 internal API method 00192 """ 00193 return self._slot_types 00194 00195 def serialize(self, buff): 00196 """ 00197 serialize message into buffer 00198 @param buff: buffer 00199 @type buff: StringIO 00200 """ 00201 try: 00202 _x = self 00203 buff.write(_struct_3I.pack(_x.action_goal.header.seq, _x.action_goal.header.stamp.secs, _x.action_goal.header.stamp.nsecs)) 00204 _x = self.action_goal.header.frame_id 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 buff.write(struct.pack('<I%ss'%length, length, _x)) 00212 _x = self.action_goal.goal.camera_name 00213 length = len(_x) 00214 buff.write(struct.pack('<I%ss'%length, length, _x)) 00215 _x = self 00216 buff.write(_struct_2BfB3I.pack(_x.action_goal.goal.pattern_width, _x.action_goal.goal.pattern_height, _x.action_goal.goal.pattern_size, _x.action_goal.goal.pattern_type, _x.action_result.header.seq, _x.action_result.header.stamp.secs, _x.action_result.header.stamp.nsecs)) 00217 _x = self.action_result.header.frame_id 00218 length = len(_x) 00219 buff.write(struct.pack('<I%ss'%length, length, _x)) 00220 _x = self 00221 buff.write(_struct_2I.pack(_x.action_result.status.goal_id.stamp.secs, _x.action_result.status.goal_id.stamp.nsecs)) 00222 _x = self.action_result.status.goal_id.id 00223 length = len(_x) 00224 buff.write(struct.pack('<I%ss'%length, length, _x)) 00225 buff.write(_struct_B.pack(self.action_result.status.status)) 00226 _x = self.action_result.status.text 00227 length = len(_x) 00228 buff.write(struct.pack('<I%ss'%length, length, _x)) 00229 _x = self 00230 buff.write(_struct_3I.pack(_x.action_result.result.pose.header.seq, _x.action_result.result.pose.header.stamp.secs, _x.action_result.result.pose.header.stamp.nsecs)) 00231 _x = self.action_result.result.pose.header.frame_id 00232 length = len(_x) 00233 buff.write(struct.pack('<I%ss'%length, length, _x)) 00234 _x = self 00235 buff.write(_struct_7d3I.pack(_x.action_result.result.pose.pose.position.x, _x.action_result.result.pose.pose.position.y, _x.action_result.result.pose.pose.position.z, _x.action_result.result.pose.pose.orientation.x, _x.action_result.result.pose.pose.orientation.y, _x.action_result.result.pose.pose.orientation.z, _x.action_result.result.pose.pose.orientation.w, _x.action_feedback.header.seq, _x.action_feedback.header.stamp.secs, _x.action_feedback.header.stamp.nsecs)) 00236 _x = self.action_feedback.header.frame_id 00237 length = len(_x) 00238 buff.write(struct.pack('<I%ss'%length, length, _x)) 00239 _x = self 00240 buff.write(_struct_2I.pack(_x.action_feedback.status.goal_id.stamp.secs, _x.action_feedback.status.goal_id.stamp.nsecs)) 00241 _x = self.action_feedback.status.goal_id.id 00242 length = len(_x) 00243 buff.write(struct.pack('<I%ss'%length, length, _x)) 00244 buff.write(_struct_B.pack(self.action_feedback.status.status)) 00245 _x = self.action_feedback.status.text 00246 length = len(_x) 00247 buff.write(struct.pack('<I%ss'%length, length, _x)) 00248 except struct.error as se: self._check_types(se) 00249 except TypeError as te: self._check_types(te) 00250 00251 def deserialize(self, str): 00252 """ 00253 unpack serialized message in str into this message instance 00254 @param str: byte array of serialized message 00255 @type str: str 00256 """ 00257 try: 00258 if self.action_goal is None: 00259 self.action_goal = turtlebot_actions.msg.FindFiducialActionGoal() 00260 if self.action_result is None: 00261 self.action_result = turtlebot_actions.msg.FindFiducialActionResult() 00262 if self.action_feedback is None: 00263 self.action_feedback = turtlebot_actions.msg.FindFiducialActionFeedback() 00264 end = 0 00265 _x = self 00266 start = end 00267 end += 12 00268 (_x.action_goal.header.seq, _x.action_goal.header.stamp.secs, _x.action_goal.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end]) 00269 start = end 00270 end += 4 00271 (length,) = _struct_I.unpack(str[start:end]) 00272 start = end 00273 end += length 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 self.action_goal.goal_id.id = str[start:end] 00285 start = end 00286 end += 4 00287 (length,) = _struct_I.unpack(str[start:end]) 00288 start = end 00289 end += length 00290 self.action_goal.goal.camera_name = str[start:end] 00291 _x = self 00292 start = end 00293 end += 19 00294 (_x.action_goal.goal.pattern_width, _x.action_goal.goal.pattern_height, _x.action_goal.goal.pattern_size, _x.action_goal.goal.pattern_type, _x.action_result.header.seq, _x.action_result.header.stamp.secs, _x.action_result.header.stamp.nsecs,) = _struct_2BfB3I.unpack(str[start:end]) 00295 start = end 00296 end += 4 00297 (length,) = _struct_I.unpack(str[start:end]) 00298 start = end 00299 end += length 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 self.action_result.status.goal_id.id = str[start:end] 00311 start = end 00312 end += 1 00313 (self.action_result.status.status,) = _struct_B.unpack(str[start:end]) 00314 start = end 00315 end += 4 00316 (length,) = _struct_I.unpack(str[start:end]) 00317 start = end 00318 end += length 00319 self.action_result.status.text = str[start:end] 00320 _x = self 00321 start = end 00322 end += 12 00323 (_x.action_result.result.pose.header.seq, _x.action_result.result.pose.header.stamp.secs, _x.action_result.result.pose.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end]) 00324 start = end 00325 end += 4 00326 (length,) = _struct_I.unpack(str[start:end]) 00327 start = end 00328 end += length 00329 self.action_result.result.pose.header.frame_id = str[start:end] 00330 _x = self 00331 start = end 00332 end += 68 00333 (_x.action_result.result.pose.pose.position.x, _x.action_result.result.pose.pose.position.y, _x.action_result.result.pose.pose.position.z, _x.action_result.result.pose.pose.orientation.x, _x.action_result.result.pose.pose.orientation.y, _x.action_result.result.pose.pose.orientation.z, _x.action_result.result.pose.pose.orientation.w, _x.action_feedback.header.seq, _x.action_feedback.header.stamp.secs, _x.action_feedback.header.stamp.nsecs,) = _struct_7d3I.unpack(str[start:end]) 00334 start = end 00335 end += 4 00336 (length,) = _struct_I.unpack(str[start:end]) 00337 start = end 00338 end += length 00339 self.action_feedback.header.frame_id = str[start:end] 00340 _x = self 00341 start = end 00342 end += 8 00343 (_x.action_feedback.status.goal_id.stamp.secs, _x.action_feedback.status.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end]) 00344 start = end 00345 end += 4 00346 (length,) = _struct_I.unpack(str[start:end]) 00347 start = end 00348 end += length 00349 self.action_feedback.status.goal_id.id = str[start:end] 00350 start = end 00351 end += 1 00352 (self.action_feedback.status.status,) = _struct_B.unpack(str[start:end]) 00353 start = end 00354 end += 4 00355 (length,) = _struct_I.unpack(str[start:end]) 00356 start = end 00357 end += length 00358 self.action_feedback.status.text = str[start:end] 00359 return self 00360 except struct.error as e: 00361 raise roslib.message.DeserializationError(e) #most likely buffer underfill 00362 00363 00364 def serialize_numpy(self, buff, numpy): 00365 """ 00366 serialize message with numpy array types into buffer 00367 @param buff: buffer 00368 @type buff: StringIO 00369 @param numpy: numpy python module 00370 @type numpy module 00371 """ 00372 try: 00373 _x = self 00374 buff.write(_struct_3I.pack(_x.action_goal.header.seq, _x.action_goal.header.stamp.secs, _x.action_goal.header.stamp.nsecs)) 00375 _x = self.action_goal.header.frame_id 00376 length = len(_x) 00377 buff.write(struct.pack('<I%ss'%length, length, _x)) 00378 _x = self 00379 buff.write(_struct_2I.pack(_x.action_goal.goal_id.stamp.secs, _x.action_goal.goal_id.stamp.nsecs)) 00380 _x = self.action_goal.goal_id.id 00381 length = len(_x) 00382 buff.write(struct.pack('<I%ss'%length, length, _x)) 00383 _x = self.action_goal.goal.camera_name 00384 length = len(_x) 00385 buff.write(struct.pack('<I%ss'%length, length, _x)) 00386 _x = self 00387 buff.write(_struct_2BfB3I.pack(_x.action_goal.goal.pattern_width, _x.action_goal.goal.pattern_height, _x.action_goal.goal.pattern_size, _x.action_goal.goal.pattern_type, _x.action_result.header.seq, _x.action_result.header.stamp.secs, _x.action_result.header.stamp.nsecs)) 00388 _x = self.action_result.header.frame_id 00389 length = len(_x) 00390 buff.write(struct.pack('<I%ss'%length, length, _x)) 00391 _x = self 00392 buff.write(_struct_2I.pack(_x.action_result.status.goal_id.stamp.secs, _x.action_result.status.goal_id.stamp.nsecs)) 00393 _x = self.action_result.status.goal_id.id 00394 length = len(_x) 00395 buff.write(struct.pack('<I%ss'%length, length, _x)) 00396 buff.write(_struct_B.pack(self.action_result.status.status)) 00397 _x = self.action_result.status.text 00398 length = len(_x) 00399 buff.write(struct.pack('<I%ss'%length, length, _x)) 00400 _x = self 00401 buff.write(_struct_3I.pack(_x.action_result.result.pose.header.seq, _x.action_result.result.pose.header.stamp.secs, _x.action_result.result.pose.header.stamp.nsecs)) 00402 _x = self.action_result.result.pose.header.frame_id 00403 length = len(_x) 00404 buff.write(struct.pack('<I%ss'%length, length, _x)) 00405 _x = self 00406 buff.write(_struct_7d3I.pack(_x.action_result.result.pose.pose.position.x, _x.action_result.result.pose.pose.position.y, _x.action_result.result.pose.pose.position.z, _x.action_result.result.pose.pose.orientation.x, _x.action_result.result.pose.pose.orientation.y, _x.action_result.result.pose.pose.orientation.z, _x.action_result.result.pose.pose.orientation.w, _x.action_feedback.header.seq, _x.action_feedback.header.stamp.secs, _x.action_feedback.header.stamp.nsecs)) 00407 _x = self.action_feedback.header.frame_id 00408 length = len(_x) 00409 buff.write(struct.pack('<I%ss'%length, length, _x)) 00410 _x = self 00411 buff.write(_struct_2I.pack(_x.action_feedback.status.goal_id.stamp.secs, _x.action_feedback.status.goal_id.stamp.nsecs)) 00412 _x = self.action_feedback.status.goal_id.id 00413 length = len(_x) 00414 buff.write(struct.pack('<I%ss'%length, length, _x)) 00415 buff.write(_struct_B.pack(self.action_feedback.status.status)) 00416 _x = self.action_feedback.status.text 00417 length = len(_x) 00418 buff.write(struct.pack('<I%ss'%length, length, _x)) 00419 except struct.error as se: self._check_types(se) 00420 except TypeError as te: self._check_types(te) 00421 00422 def deserialize_numpy(self, str, numpy): 00423 """ 00424 unpack serialized message in str into this message instance using numpy for array types 00425 @param str: byte array of serialized message 00426 @type str: str 00427 @param numpy: numpy python module 00428 @type numpy: module 00429 """ 00430 try: 00431 if self.action_goal is None: 00432 self.action_goal = turtlebot_actions.msg.FindFiducialActionGoal() 00433 if self.action_result is None: 00434 self.action_result = turtlebot_actions.msg.FindFiducialActionResult() 00435 if self.action_feedback is None: 00436 self.action_feedback = turtlebot_actions.msg.FindFiducialActionFeedback() 00437 end = 0 00438 _x = self 00439 start = end 00440 end += 12 00441 (_x.action_goal.header.seq, _x.action_goal.header.stamp.secs, _x.action_goal.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end]) 00442 start = end 00443 end += 4 00444 (length,) = _struct_I.unpack(str[start:end]) 00445 start = end 00446 end += length 00447 self.action_goal.header.frame_id = str[start:end] 00448 _x = self 00449 start = end 00450 end += 8 00451 (_x.action_goal.goal_id.stamp.secs, _x.action_goal.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end]) 00452 start = end 00453 end += 4 00454 (length,) = _struct_I.unpack(str[start:end]) 00455 start = end 00456 end += length 00457 self.action_goal.goal_id.id = str[start:end] 00458 start = end 00459 end += 4 00460 (length,) = _struct_I.unpack(str[start:end]) 00461 start = end 00462 end += length 00463 self.action_goal.goal.camera_name = str[start:end] 00464 _x = self 00465 start = end 00466 end += 19 00467 (_x.action_goal.goal.pattern_width, _x.action_goal.goal.pattern_height, _x.action_goal.goal.pattern_size, _x.action_goal.goal.pattern_type, _x.action_result.header.seq, _x.action_result.header.stamp.secs, _x.action_result.header.stamp.nsecs,) = _struct_2BfB3I.unpack(str[start:end]) 00468 start = end 00469 end += 4 00470 (length,) = _struct_I.unpack(str[start:end]) 00471 start = end 00472 end += length 00473 self.action_result.header.frame_id = str[start:end] 00474 _x = self 00475 start = end 00476 end += 8 00477 (_x.action_result.status.goal_id.stamp.secs, _x.action_result.status.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end]) 00478 start = end 00479 end += 4 00480 (length,) = _struct_I.unpack(str[start:end]) 00481 start = end 00482 end += length 00483 self.action_result.status.goal_id.id = str[start:end] 00484 start = end 00485 end += 1 00486 (self.action_result.status.status,) = _struct_B.unpack(str[start:end]) 00487 start = end 00488 end += 4 00489 (length,) = _struct_I.unpack(str[start:end]) 00490 start = end 00491 end += length 00492 self.action_result.status.text = str[start:end] 00493 _x = self 00494 start = end 00495 end += 12 00496 (_x.action_result.result.pose.header.seq, _x.action_result.result.pose.header.stamp.secs, _x.action_result.result.pose.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end]) 00497 start = end 00498 end += 4 00499 (length,) = _struct_I.unpack(str[start:end]) 00500 start = end 00501 end += length 00502 self.action_result.result.pose.header.frame_id = str[start:end] 00503 _x = self 00504 start = end 00505 end += 68 00506 (_x.action_result.result.pose.pose.position.x, _x.action_result.result.pose.pose.position.y, _x.action_result.result.pose.pose.position.z, _x.action_result.result.pose.pose.orientation.x, _x.action_result.result.pose.pose.orientation.y, _x.action_result.result.pose.pose.orientation.z, _x.action_result.result.pose.pose.orientation.w, _x.action_feedback.header.seq, _x.action_feedback.header.stamp.secs, _x.action_feedback.header.stamp.nsecs,) = _struct_7d3I.unpack(str[start:end]) 00507 start = end 00508 end += 4 00509 (length,) = _struct_I.unpack(str[start:end]) 00510 start = end 00511 end += length 00512 self.action_feedback.header.frame_id = str[start:end] 00513 _x = self 00514 start = end 00515 end += 8 00516 (_x.action_feedback.status.goal_id.stamp.secs, _x.action_feedback.status.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end]) 00517 start = end 00518 end += 4 00519 (length,) = _struct_I.unpack(str[start:end]) 00520 start = end 00521 end += length 00522 self.action_feedback.status.goal_id.id = str[start:end] 00523 start = end 00524 end += 1 00525 (self.action_feedback.status.status,) = _struct_B.unpack(str[start:end]) 00526 start = end 00527 end += 4 00528 (length,) = _struct_I.unpack(str[start:end]) 00529 start = end 00530 end += length 00531 self.action_feedback.status.text = str[start:end] 00532 return self 00533 except struct.error as e: 00534 raise roslib.message.DeserializationError(e) #most likely buffer underfill 00535 00536 _struct_I = roslib.message.struct_I 00537 _struct_3I = struct.Struct("<3I") 00538 _struct_B = struct.Struct("<B") 00539 _struct_2BfB3I = struct.Struct("<2BfB3I") 00540 _struct_2I = struct.Struct("<2I") 00541 _struct_7d3I = struct.Struct("<7d3I")