00001 """autogenerated by genpy from object_manipulation_msgs/ReactiveLiftActionFeedback.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 object_manipulation_msgs.msg
00008 import genpy
00009 import actionlib_msgs.msg
00010 import std_msgs.msg
00011
00012 class ReactiveLiftActionFeedback(genpy.Message):
00013 _md5sum = "b66dacddaccf02055a978b3aeb693a24"
00014 _type = "object_manipulation_msgs/ReactiveLiftActionFeedback"
00015 _has_header = True
00016 _full_text = """# ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00017
00018 Header header
00019 actionlib_msgs/GoalStatus status
00020 ReactiveLiftFeedback feedback
00021
00022 ================================================================================
00023 MSG: std_msgs/Header
00024 # Standard metadata for higher-level stamped data types.
00025 # This is generally used to communicate timestamped data
00026 # in a particular coordinate frame.
00027 #
00028 # sequence ID: consecutively increasing ID
00029 uint32 seq
00030 #Two-integer timestamp that is expressed as:
00031 # * stamp.secs: seconds (stamp_secs) since epoch
00032 # * stamp.nsecs: nanoseconds since stamp_secs
00033 # time-handling sugar is provided by the client library
00034 time stamp
00035 #Frame this data is associated with
00036 # 0: no frame
00037 # 1: global frame
00038 string frame_id
00039
00040 ================================================================================
00041 MSG: actionlib_msgs/GoalStatus
00042 GoalID goal_id
00043 uint8 status
00044 uint8 PENDING = 0 # The goal has yet to be processed by the action server
00045 uint8 ACTIVE = 1 # The goal is currently being processed by the action server
00046 uint8 PREEMPTED = 2 # The goal received a cancel request after it started executing
00047 # and has since completed its execution (Terminal State)
00048 uint8 SUCCEEDED = 3 # The goal was achieved successfully by the action server (Terminal State)
00049 uint8 ABORTED = 4 # The goal was aborted during execution by the action server due
00050 # to some failure (Terminal State)
00051 uint8 REJECTED = 5 # The goal was rejected by the action server without being processed,
00052 # because the goal was unattainable or invalid (Terminal State)
00053 uint8 PREEMPTING = 6 # The goal received a cancel request after it started executing
00054 # and has not yet completed execution
00055 uint8 RECALLING = 7 # The goal received a cancel request before it started executing,
00056 # but the action server has not yet confirmed that the goal is canceled
00057 uint8 RECALLED = 8 # The goal received a cancel request before it started executing
00058 # and was successfully cancelled (Terminal State)
00059 uint8 LOST = 9 # An action client can determine that a goal is LOST. This should not be
00060 # sent over the wire by an action server
00061
00062 #Allow for the user to associate a string with GoalStatus for debugging
00063 string text
00064
00065
00066 ================================================================================
00067 MSG: actionlib_msgs/GoalID
00068 # The stamp should store the time at which this goal was requested.
00069 # It is used by an action server when it tries to preempt all
00070 # goals that were requested before a certain time
00071 time stamp
00072
00073 # The id provides a way to associate feedback and
00074 # result message with specific goal requests. The id
00075 # specified must be unique.
00076 string id
00077
00078
00079 ================================================================================
00080 MSG: object_manipulation_msgs/ReactiveLiftFeedback
00081 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00082
00083 # Which phase the lift is in
00084
00085 ManipulationPhase manipulation_phase
00086
00087
00088
00089 ================================================================================
00090 MSG: object_manipulation_msgs/ManipulationPhase
00091 int32 CHECKING_FEASIBILITY = 0
00092 int32 MOVING_TO_PREGRASP = 1
00093 int32 MOVING_TO_GRASP = 2
00094 int32 CLOSING = 3
00095 int32 ADJUSTING_GRASP = 4
00096 int32 LIFTING = 5
00097 int32 MOVING_WITH_OBJECT = 6
00098 int32 MOVING_TO_PLACE = 7
00099 int32 PLACING = 8
00100 int32 OPENING = 9
00101 int32 RETREATING = 10
00102 int32 MOVING_WITHOUT_OBJECT = 11
00103 int32 SHAKING = 12
00104 int32 SUCCEEDED = 13
00105 int32 FAILED = 14
00106 int32 ABORTED = 15
00107 int32 HOLDING_OBJECT = 16
00108
00109 int32 phase
00110 """
00111 __slots__ = ['header','status','feedback']
00112 _slot_types = ['std_msgs/Header','actionlib_msgs/GoalStatus','object_manipulation_msgs/ReactiveLiftFeedback']
00113
00114 def __init__(self, *args, **kwds):
00115 """
00116 Constructor. Any message fields that are implicitly/explicitly
00117 set to None will be assigned a default value. The recommend
00118 use is keyword arguments as this is more robust to future message
00119 changes. You cannot mix in-order arguments and keyword arguments.
00120
00121 The available fields are:
00122 header,status,feedback
00123
00124 :param args: complete set of field values, in .msg order
00125 :param kwds: use keyword arguments corresponding to message field names
00126 to set specific fields.
00127 """
00128 if args or kwds:
00129 super(ReactiveLiftActionFeedback, self).__init__(*args, **kwds)
00130
00131 if self.header is None:
00132 self.header = std_msgs.msg.Header()
00133 if self.status is None:
00134 self.status = actionlib_msgs.msg.GoalStatus()
00135 if self.feedback is None:
00136 self.feedback = object_manipulation_msgs.msg.ReactiveLiftFeedback()
00137 else:
00138 self.header = std_msgs.msg.Header()
00139 self.status = actionlib_msgs.msg.GoalStatus()
00140 self.feedback = object_manipulation_msgs.msg.ReactiveLiftFeedback()
00141
00142 def _get_types(self):
00143 """
00144 internal API method
00145 """
00146 return self._slot_types
00147
00148 def serialize(self, buff):
00149 """
00150 serialize message into buffer
00151 :param buff: buffer, ``StringIO``
00152 """
00153 try:
00154 _x = self
00155 buff.write(_struct_3I.pack(_x.header.seq, _x.header.stamp.secs, _x.header.stamp.nsecs))
00156 _x = self.header.frame_id
00157 length = len(_x)
00158 if python3 or type(_x) == unicode:
00159 _x = _x.encode('utf-8')
00160 length = len(_x)
00161 buff.write(struct.pack('<I%ss'%length, length, _x))
00162 _x = self
00163 buff.write(_struct_2I.pack(_x.status.goal_id.stamp.secs, _x.status.goal_id.stamp.nsecs))
00164 _x = self.status.goal_id.id
00165 length = len(_x)
00166 if python3 or type(_x) == unicode:
00167 _x = _x.encode('utf-8')
00168 length = len(_x)
00169 buff.write(struct.pack('<I%ss'%length, length, _x))
00170 buff.write(_struct_B.pack(self.status.status))
00171 _x = self.status.text
00172 length = len(_x)
00173 if python3 or type(_x) == unicode:
00174 _x = _x.encode('utf-8')
00175 length = len(_x)
00176 buff.write(struct.pack('<I%ss'%length, length, _x))
00177 buff.write(_struct_i.pack(self.feedback.manipulation_phase.phase))
00178 except struct.error as se: self._check_types(se)
00179 except TypeError as te: self._check_types(te)
00180
00181 def deserialize(self, str):
00182 """
00183 unpack serialized message in str into this message instance
00184 :param str: byte array of serialized message, ``str``
00185 """
00186 try:
00187 if self.header is None:
00188 self.header = std_msgs.msg.Header()
00189 if self.status is None:
00190 self.status = actionlib_msgs.msg.GoalStatus()
00191 if self.feedback is None:
00192 self.feedback = object_manipulation_msgs.msg.ReactiveLiftFeedback()
00193 end = 0
00194 _x = self
00195 start = end
00196 end += 12
00197 (_x.header.seq, _x.header.stamp.secs, _x.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00198 start = end
00199 end += 4
00200 (length,) = _struct_I.unpack(str[start:end])
00201 start = end
00202 end += length
00203 if python3:
00204 self.header.frame_id = str[start:end].decode('utf-8')
00205 else:
00206 self.header.frame_id = str[start:end]
00207 _x = self
00208 start = end
00209 end += 8
00210 (_x.status.goal_id.stamp.secs, _x.status.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00211 start = end
00212 end += 4
00213 (length,) = _struct_I.unpack(str[start:end])
00214 start = end
00215 end += length
00216 if python3:
00217 self.status.goal_id.id = str[start:end].decode('utf-8')
00218 else:
00219 self.status.goal_id.id = str[start:end]
00220 start = end
00221 end += 1
00222 (self.status.status,) = _struct_B.unpack(str[start:end])
00223 start = end
00224 end += 4
00225 (length,) = _struct_I.unpack(str[start:end])
00226 start = end
00227 end += length
00228 if python3:
00229 self.status.text = str[start:end].decode('utf-8')
00230 else:
00231 self.status.text = str[start:end]
00232 start = end
00233 end += 4
00234 (self.feedback.manipulation_phase.phase,) = _struct_i.unpack(str[start:end])
00235 return self
00236 except struct.error as e:
00237 raise genpy.DeserializationError(e)
00238
00239
00240 def serialize_numpy(self, buff, numpy):
00241 """
00242 serialize message with numpy array types into buffer
00243 :param buff: buffer, ``StringIO``
00244 :param numpy: numpy python module
00245 """
00246 try:
00247 _x = self
00248 buff.write(_struct_3I.pack(_x.header.seq, _x.header.stamp.secs, _x.header.stamp.nsecs))
00249 _x = self.header.frame_id
00250 length = len(_x)
00251 if python3 or type(_x) == unicode:
00252 _x = _x.encode('utf-8')
00253 length = len(_x)
00254 buff.write(struct.pack('<I%ss'%length, length, _x))
00255 _x = self
00256 buff.write(_struct_2I.pack(_x.status.goal_id.stamp.secs, _x.status.goal_id.stamp.nsecs))
00257 _x = self.status.goal_id.id
00258 length = len(_x)
00259 if python3 or type(_x) == unicode:
00260 _x = _x.encode('utf-8')
00261 length = len(_x)
00262 buff.write(struct.pack('<I%ss'%length, length, _x))
00263 buff.write(_struct_B.pack(self.status.status))
00264 _x = self.status.text
00265 length = len(_x)
00266 if python3 or type(_x) == unicode:
00267 _x = _x.encode('utf-8')
00268 length = len(_x)
00269 buff.write(struct.pack('<I%ss'%length, length, _x))
00270 buff.write(_struct_i.pack(self.feedback.manipulation_phase.phase))
00271 except struct.error as se: self._check_types(se)
00272 except TypeError as te: self._check_types(te)
00273
00274 def deserialize_numpy(self, str, numpy):
00275 """
00276 unpack serialized message in str into this message instance using numpy for array types
00277 :param str: byte array of serialized message, ``str``
00278 :param numpy: numpy python module
00279 """
00280 try:
00281 if self.header is None:
00282 self.header = std_msgs.msg.Header()
00283 if self.status is None:
00284 self.status = actionlib_msgs.msg.GoalStatus()
00285 if self.feedback is None:
00286 self.feedback = object_manipulation_msgs.msg.ReactiveLiftFeedback()
00287 end = 0
00288 _x = self
00289 start = end
00290 end += 12
00291 (_x.header.seq, _x.header.stamp.secs, _x.header.stamp.nsecs,) = _struct_3I.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.header.frame_id = str[start:end].decode('utf-8')
00299 else:
00300 self.header.frame_id = str[start:end]
00301 _x = self
00302 start = end
00303 end += 8
00304 (_x.status.goal_id.stamp.secs, _x.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.status.goal_id.id = str[start:end].decode('utf-8')
00312 else:
00313 self.status.goal_id.id = str[start:end]
00314 start = end
00315 end += 1
00316 (self.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.status.text = str[start:end].decode('utf-8')
00324 else:
00325 self.status.text = str[start:end]
00326 start = end
00327 end += 4
00328 (self.feedback.manipulation_phase.phase,) = _struct_i.unpack(str[start:end])
00329 return self
00330 except struct.error as e:
00331 raise genpy.DeserializationError(e)
00332
00333 _struct_I = genpy.struct_I
00334 _struct_i = struct.Struct("<i")
00335 _struct_3I = struct.Struct("<3I")
00336 _struct_B = struct.Struct("<B")
00337 _struct_2I = struct.Struct("<2I")