00001 """autogenerated by genmsg_py from ModelObjectInHandAction.msg. Do not edit."""
00002 import roslib.message
00003 import struct
00004
00005 import pr2_create_object_model.msg
00006 import sensor_msgs.msg
00007 import roslib.rostime
00008 import actionlib_msgs.msg
00009 import std_msgs.msg
00010
00011 class ModelObjectInHandAction(roslib.message.Message):
00012 _md5sum = "3755e211f51c07759e536cdd57783f09"
00013 _type = "pr2_create_object_model/ModelObjectInHandAction"
00014 _has_header = False
00015 _full_text = """# ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00016
00017 ModelObjectInHandActionGoal action_goal
00018 ModelObjectInHandActionResult action_result
00019 ModelObjectInHandActionFeedback action_feedback
00020
00021 ================================================================================
00022 MSG: pr2_create_object_model/ModelObjectInHandActionGoal
00023 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00024
00025 Header header
00026 actionlib_msgs/GoalID goal_id
00027 ModelObjectInHandGoal 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: pr2_create_object_model/ModelObjectInHandGoal
00062 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00063 string arm_name
00064 uint8 move_arm
00065 uint8 keep_level
00066 uint8 add_to_collision_map
00067
00068
00069 ================================================================================
00070 MSG: pr2_create_object_model/ModelObjectInHandActionResult
00071 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00072
00073 Header header
00074 actionlib_msgs/GoalStatus status
00075 ModelObjectInHandResult result
00076
00077 ================================================================================
00078 MSG: actionlib_msgs/GoalStatus
00079 GoalID goal_id
00080 uint8 status
00081 uint8 PENDING = 0 # The goal has yet to be processed by the action server
00082 uint8 ACTIVE = 1 # The goal is currently being processed by the action server
00083 uint8 PREEMPTED = 2 # The goal received a cancel request after it started executing
00084 # and has since completed its execution (Terminal State)
00085 uint8 SUCCEEDED = 3 # The goal was achieved successfully by the action server (Terminal State)
00086 uint8 ABORTED = 4 # The goal was aborted during execution by the action server due
00087 # to some failure (Terminal State)
00088 uint8 REJECTED = 5 # The goal was rejected by the action server without being processed,
00089 # because the goal was unattainable or invalid (Terminal State)
00090 uint8 PREEMPTING = 6 # The goal received a cancel request after it started executing
00091 # and has not yet completed execution
00092 uint8 RECALLING = 7 # The goal received a cancel request before it started executing,
00093 # but the action server has not yet confirmed that the goal is canceled
00094 uint8 RECALLED = 8 # The goal received a cancel request before it started executing
00095 # and was successfully cancelled (Terminal State)
00096 uint8 LOST = 9 # An action client can determine that a goal is LOST. This should not be
00097 # sent over the wire by an action server
00098
00099 #Allow for the user to associate a string with GoalStatus for debugging
00100 string text
00101
00102
00103 ================================================================================
00104 MSG: pr2_create_object_model/ModelObjectInHandResult
00105 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00106
00107 sensor_msgs/PointCloud2 cluster
00108 string collision_name
00109
00110
00111 ================================================================================
00112 MSG: sensor_msgs/PointCloud2
00113 # This message holds a collection of N-dimensional points, which may
00114 # contain additional information such as normals, intensity, etc. The
00115 # point data is stored as a binary blob, its layout described by the
00116 # contents of the "fields" array.
00117
00118 # The point cloud data may be organized 2d (image-like) or 1d
00119 # (unordered). Point clouds organized as 2d images may be produced by
00120 # camera depth sensors such as stereo or time-of-flight.
00121
00122 # Time of sensor data acquisition, and the coordinate frame ID (for 3d
00123 # points).
00124 Header header
00125
00126 # 2D structure of the point cloud. If the cloud is unordered, height is
00127 # 1 and width is the length of the point cloud.
00128 uint32 height
00129 uint32 width
00130
00131 # Describes the channels and their layout in the binary data blob.
00132 PointField[] fields
00133
00134 bool is_bigendian # Is this data bigendian?
00135 uint32 point_step # Length of a point in bytes
00136 uint32 row_step # Length of a row in bytes
00137 uint8[] data # Actual point data, size is (row_step*height)
00138
00139 bool is_dense # True if there are no invalid points
00140
00141 ================================================================================
00142 MSG: sensor_msgs/PointField
00143 # This message holds the description of one point entry in the
00144 # PointCloud2 message format.
00145 uint8 INT8 = 1
00146 uint8 UINT8 = 2
00147 uint8 INT16 = 3
00148 uint8 UINT16 = 4
00149 uint8 INT32 = 5
00150 uint8 UINT32 = 6
00151 uint8 FLOAT32 = 7
00152 uint8 FLOAT64 = 8
00153
00154 string name # Name of field
00155 uint32 offset # Offset from start of point struct
00156 uint8 datatype # Datatype enumeration, see above
00157 uint32 count # How many elements in the field
00158
00159 ================================================================================
00160 MSG: pr2_create_object_model/ModelObjectInHandActionFeedback
00161 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00162
00163 Header header
00164 actionlib_msgs/GoalStatus status
00165 ModelObjectInHandFeedback feedback
00166
00167 ================================================================================
00168 MSG: pr2_create_object_model/ModelObjectInHandFeedback
00169 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00170
00171
00172
00173
00174 """
00175 __slots__ = ['action_goal','action_result','action_feedback']
00176 _slot_types = ['pr2_create_object_model/ModelObjectInHandActionGoal','pr2_create_object_model/ModelObjectInHandActionResult','pr2_create_object_model/ModelObjectInHandActionFeedback']
00177
00178 def __init__(self, *args, **kwds):
00179 """
00180 Constructor. Any message fields that are implicitly/explicitly
00181 set to None will be assigned a default value. The recommend
00182 use is keyword arguments as this is more robust to future message
00183 changes. You cannot mix in-order arguments and keyword arguments.
00184
00185 The available fields are:
00186 action_goal,action_result,action_feedback
00187
00188 @param args: complete set of field values, in .msg order
00189 @param kwds: use keyword arguments corresponding to message field names
00190 to set specific fields.
00191 """
00192 if args or kwds:
00193 super(ModelObjectInHandAction, self).__init__(*args, **kwds)
00194
00195 if self.action_goal is None:
00196 self.action_goal = pr2_create_object_model.msg.ModelObjectInHandActionGoal()
00197 if self.action_result is None:
00198 self.action_result = pr2_create_object_model.msg.ModelObjectInHandActionResult()
00199 if self.action_feedback is None:
00200 self.action_feedback = pr2_create_object_model.msg.ModelObjectInHandActionFeedback()
00201 else:
00202 self.action_goal = pr2_create_object_model.msg.ModelObjectInHandActionGoal()
00203 self.action_result = pr2_create_object_model.msg.ModelObjectInHandActionResult()
00204 self.action_feedback = pr2_create_object_model.msg.ModelObjectInHandActionFeedback()
00205
00206 def _get_types(self):
00207 """
00208 internal API method
00209 """
00210 return self._slot_types
00211
00212 def serialize(self, buff):
00213 """
00214 serialize message into buffer
00215 @param buff: buffer
00216 @type buff: StringIO
00217 """
00218 try:
00219 _x = self
00220 buff.write(_struct_3I.pack(_x.action_goal.header.seq, _x.action_goal.header.stamp.secs, _x.action_goal.header.stamp.nsecs))
00221 _x = self.action_goal.header.frame_id
00222 length = len(_x)
00223 buff.write(struct.pack('<I%ss'%length, length, _x))
00224 _x = self
00225 buff.write(_struct_2I.pack(_x.action_goal.goal_id.stamp.secs, _x.action_goal.goal_id.stamp.nsecs))
00226 _x = self.action_goal.goal_id.id
00227 length = len(_x)
00228 buff.write(struct.pack('<I%ss'%length, length, _x))
00229 _x = self.action_goal.goal.arm_name
00230 length = len(_x)
00231 buff.write(struct.pack('<I%ss'%length, length, _x))
00232 _x = self
00233 buff.write(_struct_3B3I.pack(_x.action_goal.goal.move_arm, _x.action_goal.goal.keep_level, _x.action_goal.goal.add_to_collision_map, _x.action_result.header.seq, _x.action_result.header.stamp.secs, _x.action_result.header.stamp.nsecs))
00234 _x = self.action_result.header.frame_id
00235 length = len(_x)
00236 buff.write(struct.pack('<I%ss'%length, length, _x))
00237 _x = self
00238 buff.write(_struct_2I.pack(_x.action_result.status.goal_id.stamp.secs, _x.action_result.status.goal_id.stamp.nsecs))
00239 _x = self.action_result.status.goal_id.id
00240 length = len(_x)
00241 buff.write(struct.pack('<I%ss'%length, length, _x))
00242 buff.write(_struct_B.pack(self.action_result.status.status))
00243 _x = self.action_result.status.text
00244 length = len(_x)
00245 buff.write(struct.pack('<I%ss'%length, length, _x))
00246 _x = self
00247 buff.write(_struct_3I.pack(_x.action_result.result.cluster.header.seq, _x.action_result.result.cluster.header.stamp.secs, _x.action_result.result.cluster.header.stamp.nsecs))
00248 _x = self.action_result.result.cluster.header.frame_id
00249 length = len(_x)
00250 buff.write(struct.pack('<I%ss'%length, length, _x))
00251 _x = self
00252 buff.write(_struct_2I.pack(_x.action_result.result.cluster.height, _x.action_result.result.cluster.width))
00253 length = len(self.action_result.result.cluster.fields)
00254 buff.write(_struct_I.pack(length))
00255 for val1 in self.action_result.result.cluster.fields:
00256 _x = val1.name
00257 length = len(_x)
00258 buff.write(struct.pack('<I%ss'%length, length, _x))
00259 _x = val1
00260 buff.write(_struct_IBI.pack(_x.offset, _x.datatype, _x.count))
00261 _x = self
00262 buff.write(_struct_B2I.pack(_x.action_result.result.cluster.is_bigendian, _x.action_result.result.cluster.point_step, _x.action_result.result.cluster.row_step))
00263 _x = self.action_result.result.cluster.data
00264 length = len(_x)
00265
00266 if type(_x) in [list, tuple]:
00267 buff.write(struct.pack('<I%sB'%length, length, *_x))
00268 else:
00269 buff.write(struct.pack('<I%ss'%length, length, _x))
00270 buff.write(_struct_B.pack(self.action_result.result.cluster.is_dense))
00271 _x = self.action_result.result.collision_name
00272 length = len(_x)
00273 buff.write(struct.pack('<I%ss'%length, length, _x))
00274 _x = self
00275 buff.write(_struct_3I.pack(_x.action_feedback.header.seq, _x.action_feedback.header.stamp.secs, _x.action_feedback.header.stamp.nsecs))
00276 _x = self.action_feedback.header.frame_id
00277 length = len(_x)
00278 buff.write(struct.pack('<I%ss'%length, length, _x))
00279 _x = self
00280 buff.write(_struct_2I.pack(_x.action_feedback.status.goal_id.stamp.secs, _x.action_feedback.status.goal_id.stamp.nsecs))
00281 _x = self.action_feedback.status.goal_id.id
00282 length = len(_x)
00283 buff.write(struct.pack('<I%ss'%length, length, _x))
00284 buff.write(_struct_B.pack(self.action_feedback.status.status))
00285 _x = self.action_feedback.status.text
00286 length = len(_x)
00287 buff.write(struct.pack('<I%ss'%length, length, _x))
00288 except struct.error, se: self._check_types(se)
00289 except TypeError, te: self._check_types(te)
00290
00291 def deserialize(self, str):
00292 """
00293 unpack serialized message in str into this message instance
00294 @param str: byte array of serialized message
00295 @type str: str
00296 """
00297 try:
00298 if self.action_goal is None:
00299 self.action_goal = pr2_create_object_model.msg.ModelObjectInHandActionGoal()
00300 if self.action_result is None:
00301 self.action_result = pr2_create_object_model.msg.ModelObjectInHandActionResult()
00302 if self.action_feedback is None:
00303 self.action_feedback = pr2_create_object_model.msg.ModelObjectInHandActionFeedback()
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 self.action_goal.header.frame_id = str[start:end]
00315 _x = self
00316 start = end
00317 end += 8
00318 (_x.action_goal.goal_id.stamp.secs, _x.action_goal.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00319 start = end
00320 end += 4
00321 (length,) = _struct_I.unpack(str[start:end])
00322 start = end
00323 end += length
00324 self.action_goal.goal_id.id = str[start:end]
00325 start = end
00326 end += 4
00327 (length,) = _struct_I.unpack(str[start:end])
00328 start = end
00329 end += length
00330 self.action_goal.goal.arm_name = str[start:end]
00331 _x = self
00332 start = end
00333 end += 15
00334 (_x.action_goal.goal.move_arm, _x.action_goal.goal.keep_level, _x.action_goal.goal.add_to_collision_map, _x.action_result.header.seq, _x.action_result.header.stamp.secs, _x.action_result.header.stamp.nsecs,) = _struct_3B3I.unpack(str[start:end])
00335 start = end
00336 end += 4
00337 (length,) = _struct_I.unpack(str[start:end])
00338 start = end
00339 end += length
00340 self.action_result.header.frame_id = str[start:end]
00341 _x = self
00342 start = end
00343 end += 8
00344 (_x.action_result.status.goal_id.stamp.secs, _x.action_result.status.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00345 start = end
00346 end += 4
00347 (length,) = _struct_I.unpack(str[start:end])
00348 start = end
00349 end += length
00350 self.action_result.status.goal_id.id = str[start:end]
00351 start = end
00352 end += 1
00353 (self.action_result.status.status,) = _struct_B.unpack(str[start:end])
00354 start = end
00355 end += 4
00356 (length,) = _struct_I.unpack(str[start:end])
00357 start = end
00358 end += length
00359 self.action_result.status.text = str[start:end]
00360 _x = self
00361 start = end
00362 end += 12
00363 (_x.action_result.result.cluster.header.seq, _x.action_result.result.cluster.header.stamp.secs, _x.action_result.result.cluster.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00364 start = end
00365 end += 4
00366 (length,) = _struct_I.unpack(str[start:end])
00367 start = end
00368 end += length
00369 self.action_result.result.cluster.header.frame_id = str[start:end]
00370 _x = self
00371 start = end
00372 end += 8
00373 (_x.action_result.result.cluster.height, _x.action_result.result.cluster.width,) = _struct_2I.unpack(str[start:end])
00374 start = end
00375 end += 4
00376 (length,) = _struct_I.unpack(str[start:end])
00377 self.action_result.result.cluster.fields = []
00378 for i in xrange(0, length):
00379 val1 = sensor_msgs.msg.PointField()
00380 start = end
00381 end += 4
00382 (length,) = _struct_I.unpack(str[start:end])
00383 start = end
00384 end += length
00385 val1.name = str[start:end]
00386 _x = val1
00387 start = end
00388 end += 9
00389 (_x.offset, _x.datatype, _x.count,) = _struct_IBI.unpack(str[start:end])
00390 self.action_result.result.cluster.fields.append(val1)
00391 _x = self
00392 start = end
00393 end += 9
00394 (_x.action_result.result.cluster.is_bigendian, _x.action_result.result.cluster.point_step, _x.action_result.result.cluster.row_step,) = _struct_B2I.unpack(str[start:end])
00395 self.action_result.result.cluster.is_bigendian = bool(self.action_result.result.cluster.is_bigendian)
00396 start = end
00397 end += 4
00398 (length,) = _struct_I.unpack(str[start:end])
00399 start = end
00400 end += length
00401 self.action_result.result.cluster.data = str[start:end]
00402 start = end
00403 end += 1
00404 (self.action_result.result.cluster.is_dense,) = _struct_B.unpack(str[start:end])
00405 self.action_result.result.cluster.is_dense = bool(self.action_result.result.cluster.is_dense)
00406 start = end
00407 end += 4
00408 (length,) = _struct_I.unpack(str[start:end])
00409 start = end
00410 end += length
00411 self.action_result.result.collision_name = str[start:end]
00412 _x = self
00413 start = end
00414 end += 12
00415 (_x.action_feedback.header.seq, _x.action_feedback.header.stamp.secs, _x.action_feedback.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00416 start = end
00417 end += 4
00418 (length,) = _struct_I.unpack(str[start:end])
00419 start = end
00420 end += length
00421 self.action_feedback.header.frame_id = str[start:end]
00422 _x = self
00423 start = end
00424 end += 8
00425 (_x.action_feedback.status.goal_id.stamp.secs, _x.action_feedback.status.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00426 start = end
00427 end += 4
00428 (length,) = _struct_I.unpack(str[start:end])
00429 start = end
00430 end += length
00431 self.action_feedback.status.goal_id.id = str[start:end]
00432 start = end
00433 end += 1
00434 (self.action_feedback.status.status,) = _struct_B.unpack(str[start:end])
00435 start = end
00436 end += 4
00437 (length,) = _struct_I.unpack(str[start:end])
00438 start = end
00439 end += length
00440 self.action_feedback.status.text = str[start:end]
00441 return self
00442 except struct.error, e:
00443 raise roslib.message.DeserializationError(e)
00444
00445
00446 def serialize_numpy(self, buff, numpy):
00447 """
00448 serialize message with numpy array types into buffer
00449 @param buff: buffer
00450 @type buff: StringIO
00451 @param numpy: numpy python module
00452 @type numpy module
00453 """
00454 try:
00455 _x = self
00456 buff.write(_struct_3I.pack(_x.action_goal.header.seq, _x.action_goal.header.stamp.secs, _x.action_goal.header.stamp.nsecs))
00457 _x = self.action_goal.header.frame_id
00458 length = len(_x)
00459 buff.write(struct.pack('<I%ss'%length, length, _x))
00460 _x = self
00461 buff.write(_struct_2I.pack(_x.action_goal.goal_id.stamp.secs, _x.action_goal.goal_id.stamp.nsecs))
00462 _x = self.action_goal.goal_id.id
00463 length = len(_x)
00464 buff.write(struct.pack('<I%ss'%length, length, _x))
00465 _x = self.action_goal.goal.arm_name
00466 length = len(_x)
00467 buff.write(struct.pack('<I%ss'%length, length, _x))
00468 _x = self
00469 buff.write(_struct_3B3I.pack(_x.action_goal.goal.move_arm, _x.action_goal.goal.keep_level, _x.action_goal.goal.add_to_collision_map, _x.action_result.header.seq, _x.action_result.header.stamp.secs, _x.action_result.header.stamp.nsecs))
00470 _x = self.action_result.header.frame_id
00471 length = len(_x)
00472 buff.write(struct.pack('<I%ss'%length, length, _x))
00473 _x = self
00474 buff.write(_struct_2I.pack(_x.action_result.status.goal_id.stamp.secs, _x.action_result.status.goal_id.stamp.nsecs))
00475 _x = self.action_result.status.goal_id.id
00476 length = len(_x)
00477 buff.write(struct.pack('<I%ss'%length, length, _x))
00478 buff.write(_struct_B.pack(self.action_result.status.status))
00479 _x = self.action_result.status.text
00480 length = len(_x)
00481 buff.write(struct.pack('<I%ss'%length, length, _x))
00482 _x = self
00483 buff.write(_struct_3I.pack(_x.action_result.result.cluster.header.seq, _x.action_result.result.cluster.header.stamp.secs, _x.action_result.result.cluster.header.stamp.nsecs))
00484 _x = self.action_result.result.cluster.header.frame_id
00485 length = len(_x)
00486 buff.write(struct.pack('<I%ss'%length, length, _x))
00487 _x = self
00488 buff.write(_struct_2I.pack(_x.action_result.result.cluster.height, _x.action_result.result.cluster.width))
00489 length = len(self.action_result.result.cluster.fields)
00490 buff.write(_struct_I.pack(length))
00491 for val1 in self.action_result.result.cluster.fields:
00492 _x = val1.name
00493 length = len(_x)
00494 buff.write(struct.pack('<I%ss'%length, length, _x))
00495 _x = val1
00496 buff.write(_struct_IBI.pack(_x.offset, _x.datatype, _x.count))
00497 _x = self
00498 buff.write(_struct_B2I.pack(_x.action_result.result.cluster.is_bigendian, _x.action_result.result.cluster.point_step, _x.action_result.result.cluster.row_step))
00499 _x = self.action_result.result.cluster.data
00500 length = len(_x)
00501
00502 if type(_x) in [list, tuple]:
00503 buff.write(struct.pack('<I%sB'%length, length, *_x))
00504 else:
00505 buff.write(struct.pack('<I%ss'%length, length, _x))
00506 buff.write(_struct_B.pack(self.action_result.result.cluster.is_dense))
00507 _x = self.action_result.result.collision_name
00508 length = len(_x)
00509 buff.write(struct.pack('<I%ss'%length, length, _x))
00510 _x = self
00511 buff.write(_struct_3I.pack(_x.action_feedback.header.seq, _x.action_feedback.header.stamp.secs, _x.action_feedback.header.stamp.nsecs))
00512 _x = self.action_feedback.header.frame_id
00513 length = len(_x)
00514 buff.write(struct.pack('<I%ss'%length, length, _x))
00515 _x = self
00516 buff.write(_struct_2I.pack(_x.action_feedback.status.goal_id.stamp.secs, _x.action_feedback.status.goal_id.stamp.nsecs))
00517 _x = self.action_feedback.status.goal_id.id
00518 length = len(_x)
00519 buff.write(struct.pack('<I%ss'%length, length, _x))
00520 buff.write(_struct_B.pack(self.action_feedback.status.status))
00521 _x = self.action_feedback.status.text
00522 length = len(_x)
00523 buff.write(struct.pack('<I%ss'%length, length, _x))
00524 except struct.error, se: self._check_types(se)
00525 except TypeError, te: self._check_types(te)
00526
00527 def deserialize_numpy(self, str, numpy):
00528 """
00529 unpack serialized message in str into this message instance using numpy for array types
00530 @param str: byte array of serialized message
00531 @type str: str
00532 @param numpy: numpy python module
00533 @type numpy: module
00534 """
00535 try:
00536 if self.action_goal is None:
00537 self.action_goal = pr2_create_object_model.msg.ModelObjectInHandActionGoal()
00538 if self.action_result is None:
00539 self.action_result = pr2_create_object_model.msg.ModelObjectInHandActionResult()
00540 if self.action_feedback is None:
00541 self.action_feedback = pr2_create_object_model.msg.ModelObjectInHandActionFeedback()
00542 end = 0
00543 _x = self
00544 start = end
00545 end += 12
00546 (_x.action_goal.header.seq, _x.action_goal.header.stamp.secs, _x.action_goal.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00547 start = end
00548 end += 4
00549 (length,) = _struct_I.unpack(str[start:end])
00550 start = end
00551 end += length
00552 self.action_goal.header.frame_id = str[start:end]
00553 _x = self
00554 start = end
00555 end += 8
00556 (_x.action_goal.goal_id.stamp.secs, _x.action_goal.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00557 start = end
00558 end += 4
00559 (length,) = _struct_I.unpack(str[start:end])
00560 start = end
00561 end += length
00562 self.action_goal.goal_id.id = str[start:end]
00563 start = end
00564 end += 4
00565 (length,) = _struct_I.unpack(str[start:end])
00566 start = end
00567 end += length
00568 self.action_goal.goal.arm_name = str[start:end]
00569 _x = self
00570 start = end
00571 end += 15
00572 (_x.action_goal.goal.move_arm, _x.action_goal.goal.keep_level, _x.action_goal.goal.add_to_collision_map, _x.action_result.header.seq, _x.action_result.header.stamp.secs, _x.action_result.header.stamp.nsecs,) = _struct_3B3I.unpack(str[start:end])
00573 start = end
00574 end += 4
00575 (length,) = _struct_I.unpack(str[start:end])
00576 start = end
00577 end += length
00578 self.action_result.header.frame_id = str[start:end]
00579 _x = self
00580 start = end
00581 end += 8
00582 (_x.action_result.status.goal_id.stamp.secs, _x.action_result.status.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00583 start = end
00584 end += 4
00585 (length,) = _struct_I.unpack(str[start:end])
00586 start = end
00587 end += length
00588 self.action_result.status.goal_id.id = str[start:end]
00589 start = end
00590 end += 1
00591 (self.action_result.status.status,) = _struct_B.unpack(str[start:end])
00592 start = end
00593 end += 4
00594 (length,) = _struct_I.unpack(str[start:end])
00595 start = end
00596 end += length
00597 self.action_result.status.text = str[start:end]
00598 _x = self
00599 start = end
00600 end += 12
00601 (_x.action_result.result.cluster.header.seq, _x.action_result.result.cluster.header.stamp.secs, _x.action_result.result.cluster.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00602 start = end
00603 end += 4
00604 (length,) = _struct_I.unpack(str[start:end])
00605 start = end
00606 end += length
00607 self.action_result.result.cluster.header.frame_id = str[start:end]
00608 _x = self
00609 start = end
00610 end += 8
00611 (_x.action_result.result.cluster.height, _x.action_result.result.cluster.width,) = _struct_2I.unpack(str[start:end])
00612 start = end
00613 end += 4
00614 (length,) = _struct_I.unpack(str[start:end])
00615 self.action_result.result.cluster.fields = []
00616 for i in xrange(0, length):
00617 val1 = sensor_msgs.msg.PointField()
00618 start = end
00619 end += 4
00620 (length,) = _struct_I.unpack(str[start:end])
00621 start = end
00622 end += length
00623 val1.name = str[start:end]
00624 _x = val1
00625 start = end
00626 end += 9
00627 (_x.offset, _x.datatype, _x.count,) = _struct_IBI.unpack(str[start:end])
00628 self.action_result.result.cluster.fields.append(val1)
00629 _x = self
00630 start = end
00631 end += 9
00632 (_x.action_result.result.cluster.is_bigendian, _x.action_result.result.cluster.point_step, _x.action_result.result.cluster.row_step,) = _struct_B2I.unpack(str[start:end])
00633 self.action_result.result.cluster.is_bigendian = bool(self.action_result.result.cluster.is_bigendian)
00634 start = end
00635 end += 4
00636 (length,) = _struct_I.unpack(str[start:end])
00637 start = end
00638 end += length
00639 self.action_result.result.cluster.data = str[start:end]
00640 start = end
00641 end += 1
00642 (self.action_result.result.cluster.is_dense,) = _struct_B.unpack(str[start:end])
00643 self.action_result.result.cluster.is_dense = bool(self.action_result.result.cluster.is_dense)
00644 start = end
00645 end += 4
00646 (length,) = _struct_I.unpack(str[start:end])
00647 start = end
00648 end += length
00649 self.action_result.result.collision_name = str[start:end]
00650 _x = self
00651 start = end
00652 end += 12
00653 (_x.action_feedback.header.seq, _x.action_feedback.header.stamp.secs, _x.action_feedback.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00654 start = end
00655 end += 4
00656 (length,) = _struct_I.unpack(str[start:end])
00657 start = end
00658 end += length
00659 self.action_feedback.header.frame_id = str[start:end]
00660 _x = self
00661 start = end
00662 end += 8
00663 (_x.action_feedback.status.goal_id.stamp.secs, _x.action_feedback.status.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00664 start = end
00665 end += 4
00666 (length,) = _struct_I.unpack(str[start:end])
00667 start = end
00668 end += length
00669 self.action_feedback.status.goal_id.id = str[start:end]
00670 start = end
00671 end += 1
00672 (self.action_feedback.status.status,) = _struct_B.unpack(str[start:end])
00673 start = end
00674 end += 4
00675 (length,) = _struct_I.unpack(str[start:end])
00676 start = end
00677 end += length
00678 self.action_feedback.status.text = str[start:end]
00679 return self
00680 except struct.error, e:
00681 raise roslib.message.DeserializationError(e)
00682
00683 _struct_I = roslib.message.struct_I
00684 _struct_IBI = struct.Struct("<IBI")
00685 _struct_B = struct.Struct("<B")
00686 _struct_3B3I = struct.Struct("<3B3I")
00687 _struct_3I = struct.Struct("<3I")
00688 _struct_B2I = struct.Struct("<B2I")
00689 _struct_2I = struct.Struct("<2I")