00001 """autogenerated by genpy from turtlebot_actions/TurtlebotMoveActionGoal.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 turtlebot_actions.msg
00008 import genpy
00009 import actionlib_msgs.msg
00010 import std_msgs.msg
00011
00012 class TurtlebotMoveActionGoal(genpy.Message):
00013 _md5sum = "7e462cf7fe57fc76afd36fde5d415bc1"
00014 _type = "turtlebot_actions/TurtlebotMoveActionGoal"
00015 _has_header = True
00016 _full_text = """# ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00017
00018 Header header
00019 actionlib_msgs/GoalID goal_id
00020 TurtlebotMoveGoal goal
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/GoalID
00042 # The stamp should store the time at which this goal was requested.
00043 # It is used by an action server when it tries to preempt all
00044 # goals that were requested before a certain time
00045 time stamp
00046
00047 # The id provides a way to associate feedback and
00048 # result message with specific goal requests. The id
00049 # specified must be unique.
00050 string id
00051
00052
00053 ================================================================================
00054 MSG: turtlebot_actions/TurtlebotMoveGoal
00055 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00056 #goal definition
00057 float32 turn_distance # in radians, ccw = +, cw = -
00058 float32 forward_distance # in meters, forward = +, backward = -
00059
00060 """
00061 __slots__ = ['header','goal_id','goal']
00062 _slot_types = ['std_msgs/Header','actionlib_msgs/GoalID','turtlebot_actions/TurtlebotMoveGoal']
00063
00064 def __init__(self, *args, **kwds):
00065 """
00066 Constructor. Any message fields that are implicitly/explicitly
00067 set to None will be assigned a default value. The recommend
00068 use is keyword arguments as this is more robust to future message
00069 changes. You cannot mix in-order arguments and keyword arguments.
00070
00071 The available fields are:
00072 header,goal_id,goal
00073
00074 :param args: complete set of field values, in .msg order
00075 :param kwds: use keyword arguments corresponding to message field names
00076 to set specific fields.
00077 """
00078 if args or kwds:
00079 super(TurtlebotMoveActionGoal, self).__init__(*args, **kwds)
00080
00081 if self.header is None:
00082 self.header = std_msgs.msg.Header()
00083 if self.goal_id is None:
00084 self.goal_id = actionlib_msgs.msg.GoalID()
00085 if self.goal is None:
00086 self.goal = turtlebot_actions.msg.TurtlebotMoveGoal()
00087 else:
00088 self.header = std_msgs.msg.Header()
00089 self.goal_id = actionlib_msgs.msg.GoalID()
00090 self.goal = turtlebot_actions.msg.TurtlebotMoveGoal()
00091
00092 def _get_types(self):
00093 """
00094 internal API method
00095 """
00096 return self._slot_types
00097
00098 def serialize(self, buff):
00099 """
00100 serialize message into buffer
00101 :param buff: buffer, ``StringIO``
00102 """
00103 try:
00104 _x = self
00105 buff.write(_struct_3I.pack(_x.header.seq, _x.header.stamp.secs, _x.header.stamp.nsecs))
00106 _x = self.header.frame_id
00107 length = len(_x)
00108 if python3 or type(_x) == unicode:
00109 _x = _x.encode('utf-8')
00110 length = len(_x)
00111 buff.write(struct.pack('<I%ss'%length, length, _x))
00112 _x = self
00113 buff.write(_struct_2I.pack(_x.goal_id.stamp.secs, _x.goal_id.stamp.nsecs))
00114 _x = self.goal_id.id
00115 length = len(_x)
00116 if python3 or type(_x) == unicode:
00117 _x = _x.encode('utf-8')
00118 length = len(_x)
00119 buff.write(struct.pack('<I%ss'%length, length, _x))
00120 _x = self
00121 buff.write(_struct_2f.pack(_x.goal.turn_distance, _x.goal.forward_distance))
00122 except struct.error as se: self._check_types(struct.error("%s: '%s' when writing '%s'" % (type(se), str(se), str(_x))))
00123 except TypeError as te: self._check_types(ValueError("%s: '%s' when writing '%s'" % (type(te), str(te), str(_x))))
00124
00125 def deserialize(self, str):
00126 """
00127 unpack serialized message in str into this message instance
00128 :param str: byte array of serialized message, ``str``
00129 """
00130 try:
00131 if self.header is None:
00132 self.header = std_msgs.msg.Header()
00133 if self.goal_id is None:
00134 self.goal_id = actionlib_msgs.msg.GoalID()
00135 if self.goal is None:
00136 self.goal = turtlebot_actions.msg.TurtlebotMoveGoal()
00137 end = 0
00138 _x = self
00139 start = end
00140 end += 12
00141 (_x.header.seq, _x.header.stamp.secs, _x.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00142 start = end
00143 end += 4
00144 (length,) = _struct_I.unpack(str[start:end])
00145 start = end
00146 end += length
00147 if python3:
00148 self.header.frame_id = str[start:end].decode('utf-8')
00149 else:
00150 self.header.frame_id = str[start:end]
00151 _x = self
00152 start = end
00153 end += 8
00154 (_x.goal_id.stamp.secs, _x.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00155 start = end
00156 end += 4
00157 (length,) = _struct_I.unpack(str[start:end])
00158 start = end
00159 end += length
00160 if python3:
00161 self.goal_id.id = str[start:end].decode('utf-8')
00162 else:
00163 self.goal_id.id = str[start:end]
00164 _x = self
00165 start = end
00166 end += 8
00167 (_x.goal.turn_distance, _x.goal.forward_distance,) = _struct_2f.unpack(str[start:end])
00168 return self
00169 except struct.error as e:
00170 raise genpy.DeserializationError(e)
00171
00172
00173 def serialize_numpy(self, buff, numpy):
00174 """
00175 serialize message with numpy array types into buffer
00176 :param buff: buffer, ``StringIO``
00177 :param numpy: numpy python module
00178 """
00179 try:
00180 _x = self
00181 buff.write(_struct_3I.pack(_x.header.seq, _x.header.stamp.secs, _x.header.stamp.nsecs))
00182 _x = self.header.frame_id
00183 length = len(_x)
00184 if python3 or type(_x) == unicode:
00185 _x = _x.encode('utf-8')
00186 length = len(_x)
00187 buff.write(struct.pack('<I%ss'%length, length, _x))
00188 _x = self
00189 buff.write(_struct_2I.pack(_x.goal_id.stamp.secs, _x.goal_id.stamp.nsecs))
00190 _x = self.goal_id.id
00191 length = len(_x)
00192 if python3 or type(_x) == unicode:
00193 _x = _x.encode('utf-8')
00194 length = len(_x)
00195 buff.write(struct.pack('<I%ss'%length, length, _x))
00196 _x = self
00197 buff.write(_struct_2f.pack(_x.goal.turn_distance, _x.goal.forward_distance))
00198 except struct.error as se: self._check_types(struct.error("%s: '%s' when writing '%s'" % (type(se), str(se), str(_x))))
00199 except TypeError as te: self._check_types(ValueError("%s: '%s' when writing '%s'" % (type(te), str(te), str(_x))))
00200
00201 def deserialize_numpy(self, str, numpy):
00202 """
00203 unpack serialized message in str into this message instance using numpy for array types
00204 :param str: byte array of serialized message, ``str``
00205 :param numpy: numpy python module
00206 """
00207 try:
00208 if self.header is None:
00209 self.header = std_msgs.msg.Header()
00210 if self.goal_id is None:
00211 self.goal_id = actionlib_msgs.msg.GoalID()
00212 if self.goal is None:
00213 self.goal = turtlebot_actions.msg.TurtlebotMoveGoal()
00214 end = 0
00215 _x = self
00216 start = end
00217 end += 12
00218 (_x.header.seq, _x.header.stamp.secs, _x.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00219 start = end
00220 end += 4
00221 (length,) = _struct_I.unpack(str[start:end])
00222 start = end
00223 end += length
00224 if python3:
00225 self.header.frame_id = str[start:end].decode('utf-8')
00226 else:
00227 self.header.frame_id = str[start:end]
00228 _x = self
00229 start = end
00230 end += 8
00231 (_x.goal_id.stamp.secs, _x.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00232 start = end
00233 end += 4
00234 (length,) = _struct_I.unpack(str[start:end])
00235 start = end
00236 end += length
00237 if python3:
00238 self.goal_id.id = str[start:end].decode('utf-8')
00239 else:
00240 self.goal_id.id = str[start:end]
00241 _x = self
00242 start = end
00243 end += 8
00244 (_x.goal.turn_distance, _x.goal.forward_distance,) = _struct_2f.unpack(str[start:end])
00245 return self
00246 except struct.error as e:
00247 raise genpy.DeserializationError(e)
00248
00249 _struct_I = genpy.struct_I
00250 _struct_3I = struct.Struct("<3I")
00251 _struct_2I = struct.Struct("<2I")
00252 _struct_2f = struct.Struct("<2f")