00001 """autogenerated by genpy from eband_local_planner/FollowBaseTrajectoryActionGoal.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 eband_local_planner.msg
00008 import geometry_msgs.msg
00009 import genpy
00010 import actionlib_msgs.msg
00011 import std_msgs.msg
00012
00013 class FollowBaseTrajectoryActionGoal(genpy.Message):
00014 _md5sum = "fb515312941a45024b7191e20b1291d4"
00015 _type = "eband_local_planner/FollowBaseTrajectoryActionGoal"
00016 _has_header = True
00017 _full_text = """# ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00018
00019 Header header
00020 actionlib_msgs/GoalID goal_id
00021 FollowBaseTrajectoryGoal goal
00022
00023 ================================================================================
00024 MSG: std_msgs/Header
00025 # Standard metadata for higher-level stamped data types.
00026 # This is generally used to communicate timestamped data
00027 # in a particular coordinate frame.
00028 #
00029 # sequence ID: consecutively increasing ID
00030 uint32 seq
00031 #Two-integer timestamp that is expressed as:
00032 # * stamp.secs: seconds (stamp_secs) since epoch
00033 # * stamp.nsecs: nanoseconds since stamp_secs
00034 # time-handling sugar is provided by the client library
00035 time stamp
00036 #Frame this data is associated with
00037 # 0: no frame
00038 # 1: global frame
00039 string frame_id
00040
00041 ================================================================================
00042 MSG: actionlib_msgs/GoalID
00043 # The stamp should store the time at which this goal was requested.
00044 # It is used by an action server when it tries to preempt all
00045 # goals that were requested before a certain time
00046 time stamp
00047
00048 # The id provides a way to associate feedback and
00049 # result message with specific goal requests. The id
00050 # specified must be unique.
00051 string id
00052
00053
00054 ================================================================================
00055 MSG: eband_local_planner/FollowBaseTrajectoryGoal
00056 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00057 # Action that represents following a path while reacting
00058 # to small obstacles (but never deviating significantly from trajectory)
00059
00060 # The goal is a path to follow
00061 geometry_msgs/PoseStamped[] path
00062
00063 ================================================================================
00064 MSG: geometry_msgs/PoseStamped
00065 # A Pose with reference coordinate frame and timestamp
00066 Header header
00067 Pose pose
00068
00069 ================================================================================
00070 MSG: geometry_msgs/Pose
00071 # A representation of pose in free space, composed of postion and orientation.
00072 Point position
00073 Quaternion orientation
00074
00075 ================================================================================
00076 MSG: geometry_msgs/Point
00077 # This contains the position of a point in free space
00078 float64 x
00079 float64 y
00080 float64 z
00081
00082 ================================================================================
00083 MSG: geometry_msgs/Quaternion
00084 # This represents an orientation in free space in quaternion form.
00085
00086 float64 x
00087 float64 y
00088 float64 z
00089 float64 w
00090
00091 """
00092 __slots__ = ['header','goal_id','goal']
00093 _slot_types = ['std_msgs/Header','actionlib_msgs/GoalID','eband_local_planner/FollowBaseTrajectoryGoal']
00094
00095 def __init__(self, *args, **kwds):
00096 """
00097 Constructor. Any message fields that are implicitly/explicitly
00098 set to None will be assigned a default value. The recommend
00099 use is keyword arguments as this is more robust to future message
00100 changes. You cannot mix in-order arguments and keyword arguments.
00101
00102 The available fields are:
00103 header,goal_id,goal
00104
00105 :param args: complete set of field values, in .msg order
00106 :param kwds: use keyword arguments corresponding to message field names
00107 to set specific fields.
00108 """
00109 if args or kwds:
00110 super(FollowBaseTrajectoryActionGoal, self).__init__(*args, **kwds)
00111
00112 if self.header is None:
00113 self.header = std_msgs.msg.Header()
00114 if self.goal_id is None:
00115 self.goal_id = actionlib_msgs.msg.GoalID()
00116 if self.goal is None:
00117 self.goal = eband_local_planner.msg.FollowBaseTrajectoryGoal()
00118 else:
00119 self.header = std_msgs.msg.Header()
00120 self.goal_id = actionlib_msgs.msg.GoalID()
00121 self.goal = eband_local_planner.msg.FollowBaseTrajectoryGoal()
00122
00123 def _get_types(self):
00124 """
00125 internal API method
00126 """
00127 return self._slot_types
00128
00129 def serialize(self, buff):
00130 """
00131 serialize message into buffer
00132 :param buff: buffer, ``StringIO``
00133 """
00134 try:
00135 _x = self
00136 buff.write(_struct_3I.pack(_x.header.seq, _x.header.stamp.secs, _x.header.stamp.nsecs))
00137 _x = self.header.frame_id
00138 length = len(_x)
00139 if python3 or type(_x) == unicode:
00140 _x = _x.encode('utf-8')
00141 length = len(_x)
00142 buff.write(struct.pack('<I%ss'%length, length, _x))
00143 _x = self
00144 buff.write(_struct_2I.pack(_x.goal_id.stamp.secs, _x.goal_id.stamp.nsecs))
00145 _x = self.goal_id.id
00146 length = len(_x)
00147 if python3 or type(_x) == unicode:
00148 _x = _x.encode('utf-8')
00149 length = len(_x)
00150 buff.write(struct.pack('<I%ss'%length, length, _x))
00151 length = len(self.goal.path)
00152 buff.write(_struct_I.pack(length))
00153 for val1 in self.goal.path:
00154 _v1 = val1.header
00155 buff.write(_struct_I.pack(_v1.seq))
00156 _v2 = _v1.stamp
00157 _x = _v2
00158 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00159 _x = _v1.frame_id
00160 length = len(_x)
00161 if python3 or type(_x) == unicode:
00162 _x = _x.encode('utf-8')
00163 length = len(_x)
00164 buff.write(struct.pack('<I%ss'%length, length, _x))
00165 _v3 = val1.pose
00166 _v4 = _v3.position
00167 _x = _v4
00168 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00169 _v5 = _v3.orientation
00170 _x = _v5
00171 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
00172 except struct.error as se: self._check_types(struct.error("%s: '%s' when writing '%s'" % (type(se), str(se), str(_x))))
00173 except TypeError as te: self._check_types(ValueError("%s: '%s' when writing '%s'" % (type(te), str(te), str(_x))))
00174
00175 def deserialize(self, str):
00176 """
00177 unpack serialized message in str into this message instance
00178 :param str: byte array of serialized message, ``str``
00179 """
00180 try:
00181 if self.header is None:
00182 self.header = std_msgs.msg.Header()
00183 if self.goal_id is None:
00184 self.goal_id = actionlib_msgs.msg.GoalID()
00185 if self.goal is None:
00186 self.goal = eband_local_planner.msg.FollowBaseTrajectoryGoal()
00187 end = 0
00188 _x = self
00189 start = end
00190 end += 12
00191 (_x.header.seq, _x.header.stamp.secs, _x.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00192 start = end
00193 end += 4
00194 (length,) = _struct_I.unpack(str[start:end])
00195 start = end
00196 end += length
00197 if python3:
00198 self.header.frame_id = str[start:end].decode('utf-8')
00199 else:
00200 self.header.frame_id = str[start:end]
00201 _x = self
00202 start = end
00203 end += 8
00204 (_x.goal_id.stamp.secs, _x.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00205 start = end
00206 end += 4
00207 (length,) = _struct_I.unpack(str[start:end])
00208 start = end
00209 end += length
00210 if python3:
00211 self.goal_id.id = str[start:end].decode('utf-8')
00212 else:
00213 self.goal_id.id = str[start:end]
00214 start = end
00215 end += 4
00216 (length,) = _struct_I.unpack(str[start:end])
00217 self.goal.path = []
00218 for i in range(0, length):
00219 val1 = geometry_msgs.msg.PoseStamped()
00220 _v6 = val1.header
00221 start = end
00222 end += 4
00223 (_v6.seq,) = _struct_I.unpack(str[start:end])
00224 _v7 = _v6.stamp
00225 _x = _v7
00226 start = end
00227 end += 8
00228 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
00229 start = end
00230 end += 4
00231 (length,) = _struct_I.unpack(str[start:end])
00232 start = end
00233 end += length
00234 if python3:
00235 _v6.frame_id = str[start:end].decode('utf-8')
00236 else:
00237 _v6.frame_id = str[start:end]
00238 _v8 = val1.pose
00239 _v9 = _v8.position
00240 _x = _v9
00241 start = end
00242 end += 24
00243 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
00244 _v10 = _v8.orientation
00245 _x = _v10
00246 start = end
00247 end += 32
00248 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
00249 self.goal.path.append(val1)
00250 return self
00251 except struct.error as e:
00252 raise genpy.DeserializationError(e)
00253
00254
00255 def serialize_numpy(self, buff, numpy):
00256 """
00257 serialize message with numpy array types into buffer
00258 :param buff: buffer, ``StringIO``
00259 :param numpy: numpy python module
00260 """
00261 try:
00262 _x = self
00263 buff.write(_struct_3I.pack(_x.header.seq, _x.header.stamp.secs, _x.header.stamp.nsecs))
00264 _x = self.header.frame_id
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 _x = self
00271 buff.write(_struct_2I.pack(_x.goal_id.stamp.secs, _x.goal_id.stamp.nsecs))
00272 _x = self.goal_id.id
00273 length = len(_x)
00274 if python3 or type(_x) == unicode:
00275 _x = _x.encode('utf-8')
00276 length = len(_x)
00277 buff.write(struct.pack('<I%ss'%length, length, _x))
00278 length = len(self.goal.path)
00279 buff.write(_struct_I.pack(length))
00280 for val1 in self.goal.path:
00281 _v11 = val1.header
00282 buff.write(_struct_I.pack(_v11.seq))
00283 _v12 = _v11.stamp
00284 _x = _v12
00285 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00286 _x = _v11.frame_id
00287 length = len(_x)
00288 if python3 or type(_x) == unicode:
00289 _x = _x.encode('utf-8')
00290 length = len(_x)
00291 buff.write(struct.pack('<I%ss'%length, length, _x))
00292 _v13 = val1.pose
00293 _v14 = _v13.position
00294 _x = _v14
00295 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00296 _v15 = _v13.orientation
00297 _x = _v15
00298 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
00299 except struct.error as se: self._check_types(struct.error("%s: '%s' when writing '%s'" % (type(se), str(se), str(_x))))
00300 except TypeError as te: self._check_types(ValueError("%s: '%s' when writing '%s'" % (type(te), str(te), str(_x))))
00301
00302 def deserialize_numpy(self, str, numpy):
00303 """
00304 unpack serialized message in str into this message instance using numpy for array types
00305 :param str: byte array of serialized message, ``str``
00306 :param numpy: numpy python module
00307 """
00308 try:
00309 if self.header is None:
00310 self.header = std_msgs.msg.Header()
00311 if self.goal_id is None:
00312 self.goal_id = actionlib_msgs.msg.GoalID()
00313 if self.goal is None:
00314 self.goal = eband_local_planner.msg.FollowBaseTrajectoryGoal()
00315 end = 0
00316 _x = self
00317 start = end
00318 end += 12
00319 (_x.header.seq, _x.header.stamp.secs, _x.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00320 start = end
00321 end += 4
00322 (length,) = _struct_I.unpack(str[start:end])
00323 start = end
00324 end += length
00325 if python3:
00326 self.header.frame_id = str[start:end].decode('utf-8')
00327 else:
00328 self.header.frame_id = str[start:end]
00329 _x = self
00330 start = end
00331 end += 8
00332 (_x.goal_id.stamp.secs, _x.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00333 start = end
00334 end += 4
00335 (length,) = _struct_I.unpack(str[start:end])
00336 start = end
00337 end += length
00338 if python3:
00339 self.goal_id.id = str[start:end].decode('utf-8')
00340 else:
00341 self.goal_id.id = str[start:end]
00342 start = end
00343 end += 4
00344 (length,) = _struct_I.unpack(str[start:end])
00345 self.goal.path = []
00346 for i in range(0, length):
00347 val1 = geometry_msgs.msg.PoseStamped()
00348 _v16 = val1.header
00349 start = end
00350 end += 4
00351 (_v16.seq,) = _struct_I.unpack(str[start:end])
00352 _v17 = _v16.stamp
00353 _x = _v17
00354 start = end
00355 end += 8
00356 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
00357 start = end
00358 end += 4
00359 (length,) = _struct_I.unpack(str[start:end])
00360 start = end
00361 end += length
00362 if python3:
00363 _v16.frame_id = str[start:end].decode('utf-8')
00364 else:
00365 _v16.frame_id = str[start:end]
00366 _v18 = val1.pose
00367 _v19 = _v18.position
00368 _x = _v19
00369 start = end
00370 end += 24
00371 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
00372 _v20 = _v18.orientation
00373 _x = _v20
00374 start = end
00375 end += 32
00376 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
00377 self.goal.path.append(val1)
00378 return self
00379 except struct.error as e:
00380 raise genpy.DeserializationError(e)
00381
00382 _struct_I = genpy.struct_I
00383 _struct_4d = struct.Struct("<4d")
00384 _struct_3I = struct.Struct("<3I")
00385 _struct_2I = struct.Struct("<2I")
00386 _struct_3d = struct.Struct("<3d")