00001 """autogenerated by genmsg_py from MakeNavPlanRequest.msg. Do not edit."""
00002 import roslib.message
00003 import struct
00004
00005 import geometry_msgs.msg
00006 import std_msgs.msg
00007
00008 class MakeNavPlanRequest(roslib.message.Message):
00009 _md5sum = "2fe3126bd5b2d56edd5005220333d4fd"
00010 _type = "navfn/MakeNavPlanRequest"
00011 _has_header = False
00012 _full_text = """geometry_msgs/PoseStamped start
00013 geometry_msgs/PoseStamped goal
00014
00015 ================================================================================
00016 MSG: geometry_msgs/PoseStamped
00017 # A Pose with reference coordinate frame and timestamp
00018 Header header
00019 Pose pose
00020
00021 ================================================================================
00022 MSG: std_msgs/Header
00023 # Standard metadata for higher-level stamped data types.
00024 # This is generally used to communicate timestamped data
00025 # in a particular coordinate frame.
00026 #
00027 # sequence ID: consecutively increasing ID
00028 uint32 seq
00029 #Two-integer timestamp that is expressed as:
00030 # * stamp.secs: seconds (stamp_secs) since epoch
00031 # * stamp.nsecs: nanoseconds since stamp_secs
00032 # time-handling sugar is provided by the client library
00033 time stamp
00034 #Frame this data is associated with
00035 # 0: no frame
00036 # 1: global frame
00037 string frame_id
00038
00039 ================================================================================
00040 MSG: geometry_msgs/Pose
00041 # A representation of pose in free space, composed of postion and orientation.
00042 Point position
00043 Quaternion orientation
00044
00045 ================================================================================
00046 MSG: geometry_msgs/Point
00047 # This contains the position of a point in free space
00048 float64 x
00049 float64 y
00050 float64 z
00051
00052 ================================================================================
00053 MSG: geometry_msgs/Quaternion
00054 # This represents an orientation in free space in quaternion form.
00055
00056 float64 x
00057 float64 y
00058 float64 z
00059 float64 w
00060
00061 """
00062 __slots__ = ['start','goal']
00063 _slot_types = ['geometry_msgs/PoseStamped','geometry_msgs/PoseStamped']
00064
00065 def __init__(self, *args, **kwds):
00066 """
00067 Constructor. Any message fields that are implicitly/explicitly
00068 set to None will be assigned a default value. The recommend
00069 use is keyword arguments as this is more robust to future message
00070 changes. You cannot mix in-order arguments and keyword arguments.
00071
00072 The available fields are:
00073 start,goal
00074
00075 @param args: complete set of field values, in .msg order
00076 @param kwds: use keyword arguments corresponding to message field names
00077 to set specific fields.
00078 """
00079 if args or kwds:
00080 super(MakeNavPlanRequest, self).__init__(*args, **kwds)
00081
00082 if self.start is None:
00083 self.start = geometry_msgs.msg.PoseStamped()
00084 if self.goal is None:
00085 self.goal = geometry_msgs.msg.PoseStamped()
00086 else:
00087 self.start = geometry_msgs.msg.PoseStamped()
00088 self.goal = geometry_msgs.msg.PoseStamped()
00089
00090 def _get_types(self):
00091 """
00092 internal API method
00093 """
00094 return self._slot_types
00095
00096 def serialize(self, buff):
00097 """
00098 serialize message into buffer
00099 @param buff: buffer
00100 @type buff: StringIO
00101 """
00102 try:
00103 _x = self
00104 buff.write(_struct_3I.pack(_x.start.header.seq, _x.start.header.stamp.secs, _x.start.header.stamp.nsecs))
00105 _x = self.start.header.frame_id
00106 length = len(_x)
00107 buff.write(struct.pack('<I%ss'%length, length, _x))
00108 _x = self
00109 buff.write(_struct_7d3I.pack(_x.start.pose.position.x, _x.start.pose.position.y, _x.start.pose.position.z, _x.start.pose.orientation.x, _x.start.pose.orientation.y, _x.start.pose.orientation.z, _x.start.pose.orientation.w, _x.goal.header.seq, _x.goal.header.stamp.secs, _x.goal.header.stamp.nsecs))
00110 _x = self.goal.header.frame_id
00111 length = len(_x)
00112 buff.write(struct.pack('<I%ss'%length, length, _x))
00113 _x = self
00114 buff.write(_struct_7d.pack(_x.goal.pose.position.x, _x.goal.pose.position.y, _x.goal.pose.position.z, _x.goal.pose.orientation.x, _x.goal.pose.orientation.y, _x.goal.pose.orientation.z, _x.goal.pose.orientation.w))
00115 except struct.error, se: self._check_types(se)
00116 except TypeError, te: self._check_types(te)
00117
00118 def deserialize(self, str):
00119 """
00120 unpack serialized message in str into this message instance
00121 @param str: byte array of serialized message
00122 @type str: str
00123 """
00124 try:
00125 if self.start is None:
00126 self.start = geometry_msgs.msg.PoseStamped()
00127 if self.goal is None:
00128 self.goal = geometry_msgs.msg.PoseStamped()
00129 end = 0
00130 _x = self
00131 start = end
00132 end += 12
00133 (_x.start.header.seq, _x.start.header.stamp.secs, _x.start.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00134 start = end
00135 end += 4
00136 (length,) = _struct_I.unpack(str[start:end])
00137 start = end
00138 end += length
00139 self.start.header.frame_id = str[start:end]
00140 _x = self
00141 start = end
00142 end += 68
00143 (_x.start.pose.position.x, _x.start.pose.position.y, _x.start.pose.position.z, _x.start.pose.orientation.x, _x.start.pose.orientation.y, _x.start.pose.orientation.z, _x.start.pose.orientation.w, _x.goal.header.seq, _x.goal.header.stamp.secs, _x.goal.header.stamp.nsecs,) = _struct_7d3I.unpack(str[start:end])
00144 start = end
00145 end += 4
00146 (length,) = _struct_I.unpack(str[start:end])
00147 start = end
00148 end += length
00149 self.goal.header.frame_id = str[start:end]
00150 _x = self
00151 start = end
00152 end += 56
00153 (_x.goal.pose.position.x, _x.goal.pose.position.y, _x.goal.pose.position.z, _x.goal.pose.orientation.x, _x.goal.pose.orientation.y, _x.goal.pose.orientation.z, _x.goal.pose.orientation.w,) = _struct_7d.unpack(str[start:end])
00154 return self
00155 except struct.error, e:
00156 raise roslib.message.DeserializationError(e)
00157
00158
00159 def serialize_numpy(self, buff, numpy):
00160 """
00161 serialize message with numpy array types into buffer
00162 @param buff: buffer
00163 @type buff: StringIO
00164 @param numpy: numpy python module
00165 @type numpy module
00166 """
00167 try:
00168 _x = self
00169 buff.write(_struct_3I.pack(_x.start.header.seq, _x.start.header.stamp.secs, _x.start.header.stamp.nsecs))
00170 _x = self.start.header.frame_id
00171 length = len(_x)
00172 buff.write(struct.pack('<I%ss'%length, length, _x))
00173 _x = self
00174 buff.write(_struct_7d3I.pack(_x.start.pose.position.x, _x.start.pose.position.y, _x.start.pose.position.z, _x.start.pose.orientation.x, _x.start.pose.orientation.y, _x.start.pose.orientation.z, _x.start.pose.orientation.w, _x.goal.header.seq, _x.goal.header.stamp.secs, _x.goal.header.stamp.nsecs))
00175 _x = self.goal.header.frame_id
00176 length = len(_x)
00177 buff.write(struct.pack('<I%ss'%length, length, _x))
00178 _x = self
00179 buff.write(_struct_7d.pack(_x.goal.pose.position.x, _x.goal.pose.position.y, _x.goal.pose.position.z, _x.goal.pose.orientation.x, _x.goal.pose.orientation.y, _x.goal.pose.orientation.z, _x.goal.pose.orientation.w))
00180 except struct.error, se: self._check_types(se)
00181 except TypeError, te: self._check_types(te)
00182
00183 def deserialize_numpy(self, str, numpy):
00184 """
00185 unpack serialized message in str into this message instance using numpy for array types
00186 @param str: byte array of serialized message
00187 @type str: str
00188 @param numpy: numpy python module
00189 @type numpy: module
00190 """
00191 try:
00192 if self.start is None:
00193 self.start = geometry_msgs.msg.PoseStamped()
00194 if self.goal is None:
00195 self.goal = geometry_msgs.msg.PoseStamped()
00196 end = 0
00197 _x = self
00198 start = end
00199 end += 12
00200 (_x.start.header.seq, _x.start.header.stamp.secs, _x.start.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00201 start = end
00202 end += 4
00203 (length,) = _struct_I.unpack(str[start:end])
00204 start = end
00205 end += length
00206 self.start.header.frame_id = str[start:end]
00207 _x = self
00208 start = end
00209 end += 68
00210 (_x.start.pose.position.x, _x.start.pose.position.y, _x.start.pose.position.z, _x.start.pose.orientation.x, _x.start.pose.orientation.y, _x.start.pose.orientation.z, _x.start.pose.orientation.w, _x.goal.header.seq, _x.goal.header.stamp.secs, _x.goal.header.stamp.nsecs,) = _struct_7d3I.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 self.goal.header.frame_id = str[start:end]
00217 _x = self
00218 start = end
00219 end += 56
00220 (_x.goal.pose.position.x, _x.goal.pose.position.y, _x.goal.pose.position.z, _x.goal.pose.orientation.x, _x.goal.pose.orientation.y, _x.goal.pose.orientation.z, _x.goal.pose.orientation.w,) = _struct_7d.unpack(str[start:end])
00221 return self
00222 except struct.error, e:
00223 raise roslib.message.DeserializationError(e)
00224
00225 _struct_I = roslib.message.struct_I
00226 _struct_3I = struct.Struct("<3I")
00227 _struct_7d = struct.Struct("<7d")
00228 _struct_7d3I = struct.Struct("<7d3I")
00229 """autogenerated by genmsg_py from MakeNavPlanResponse.msg. Do not edit."""
00230 import roslib.message
00231 import struct
00232
00233 import geometry_msgs.msg
00234 import std_msgs.msg
00235
00236 class MakeNavPlanResponse(roslib.message.Message):
00237 _md5sum = "8b8ed7edf1b237dc9ddda8c8ffed5d3a"
00238 _type = "navfn/MakeNavPlanResponse"
00239 _has_header = False
00240 _full_text = """
00241 uint8 plan_found
00242 string error_message
00243
00244
00245 geometry_msgs/PoseStamped[] path
00246
00247
00248 ================================================================================
00249 MSG: geometry_msgs/PoseStamped
00250 # A Pose with reference coordinate frame and timestamp
00251 Header header
00252 Pose pose
00253
00254 ================================================================================
00255 MSG: std_msgs/Header
00256 # Standard metadata for higher-level stamped data types.
00257 # This is generally used to communicate timestamped data
00258 # in a particular coordinate frame.
00259 #
00260 # sequence ID: consecutively increasing ID
00261 uint32 seq
00262 #Two-integer timestamp that is expressed as:
00263 # * stamp.secs: seconds (stamp_secs) since epoch
00264 # * stamp.nsecs: nanoseconds since stamp_secs
00265 # time-handling sugar is provided by the client library
00266 time stamp
00267 #Frame this data is associated with
00268 # 0: no frame
00269 # 1: global frame
00270 string frame_id
00271
00272 ================================================================================
00273 MSG: geometry_msgs/Pose
00274 # A representation of pose in free space, composed of postion and orientation.
00275 Point position
00276 Quaternion orientation
00277
00278 ================================================================================
00279 MSG: geometry_msgs/Point
00280 # This contains the position of a point in free space
00281 float64 x
00282 float64 y
00283 float64 z
00284
00285 ================================================================================
00286 MSG: geometry_msgs/Quaternion
00287 # This represents an orientation in free space in quaternion form.
00288
00289 float64 x
00290 float64 y
00291 float64 z
00292 float64 w
00293
00294 """
00295 __slots__ = ['plan_found','error_message','path']
00296 _slot_types = ['uint8','string','geometry_msgs/PoseStamped[]']
00297
00298 def __init__(self, *args, **kwds):
00299 """
00300 Constructor. Any message fields that are implicitly/explicitly
00301 set to None will be assigned a default value. The recommend
00302 use is keyword arguments as this is more robust to future message
00303 changes. You cannot mix in-order arguments and keyword arguments.
00304
00305 The available fields are:
00306 plan_found,error_message,path
00307
00308 @param args: complete set of field values, in .msg order
00309 @param kwds: use keyword arguments corresponding to message field names
00310 to set specific fields.
00311 """
00312 if args or kwds:
00313 super(MakeNavPlanResponse, self).__init__(*args, **kwds)
00314
00315 if self.plan_found is None:
00316 self.plan_found = 0
00317 if self.error_message is None:
00318 self.error_message = ''
00319 if self.path is None:
00320 self.path = []
00321 else:
00322 self.plan_found = 0
00323 self.error_message = ''
00324 self.path = []
00325
00326 def _get_types(self):
00327 """
00328 internal API method
00329 """
00330 return self._slot_types
00331
00332 def serialize(self, buff):
00333 """
00334 serialize message into buffer
00335 @param buff: buffer
00336 @type buff: StringIO
00337 """
00338 try:
00339 buff.write(_struct_B.pack(self.plan_found))
00340 _x = self.error_message
00341 length = len(_x)
00342 buff.write(struct.pack('<I%ss'%length, length, _x))
00343 length = len(self.path)
00344 buff.write(_struct_I.pack(length))
00345 for val1 in self.path:
00346 _v1 = val1.header
00347 buff.write(_struct_I.pack(_v1.seq))
00348 _v2 = _v1.stamp
00349 _x = _v2
00350 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00351 _x = _v1.frame_id
00352 length = len(_x)
00353 buff.write(struct.pack('<I%ss'%length, length, _x))
00354 _v3 = val1.pose
00355 _v4 = _v3.position
00356 _x = _v4
00357 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00358 _v5 = _v3.orientation
00359 _x = _v5
00360 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
00361 except struct.error, se: self._check_types(se)
00362 except TypeError, te: self._check_types(te)
00363
00364 def deserialize(self, str):
00365 """
00366 unpack serialized message in str into this message instance
00367 @param str: byte array of serialized message
00368 @type str: str
00369 """
00370 try:
00371 end = 0
00372 start = end
00373 end += 1
00374 (self.plan_found,) = _struct_B.unpack(str[start:end])
00375 start = end
00376 end += 4
00377 (length,) = _struct_I.unpack(str[start:end])
00378 start = end
00379 end += length
00380 self.error_message = str[start:end]
00381 start = end
00382 end += 4
00383 (length,) = _struct_I.unpack(str[start:end])
00384 self.path = []
00385 for i in xrange(0, length):
00386 val1 = geometry_msgs.msg.PoseStamped()
00387 _v6 = val1.header
00388 start = end
00389 end += 4
00390 (_v6.seq,) = _struct_I.unpack(str[start:end])
00391 _v7 = _v6.stamp
00392 _x = _v7
00393 start = end
00394 end += 8
00395 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
00396 start = end
00397 end += 4
00398 (length,) = _struct_I.unpack(str[start:end])
00399 start = end
00400 end += length
00401 _v6.frame_id = str[start:end]
00402 _v8 = val1.pose
00403 _v9 = _v8.position
00404 _x = _v9
00405 start = end
00406 end += 24
00407 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
00408 _v10 = _v8.orientation
00409 _x = _v10
00410 start = end
00411 end += 32
00412 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
00413 self.path.append(val1)
00414 return self
00415 except struct.error, e:
00416 raise roslib.message.DeserializationError(e)
00417
00418
00419 def serialize_numpy(self, buff, numpy):
00420 """
00421 serialize message with numpy array types into buffer
00422 @param buff: buffer
00423 @type buff: StringIO
00424 @param numpy: numpy python module
00425 @type numpy module
00426 """
00427 try:
00428 buff.write(_struct_B.pack(self.plan_found))
00429 _x = self.error_message
00430 length = len(_x)
00431 buff.write(struct.pack('<I%ss'%length, length, _x))
00432 length = len(self.path)
00433 buff.write(_struct_I.pack(length))
00434 for val1 in self.path:
00435 _v11 = val1.header
00436 buff.write(_struct_I.pack(_v11.seq))
00437 _v12 = _v11.stamp
00438 _x = _v12
00439 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00440 _x = _v11.frame_id
00441 length = len(_x)
00442 buff.write(struct.pack('<I%ss'%length, length, _x))
00443 _v13 = val1.pose
00444 _v14 = _v13.position
00445 _x = _v14
00446 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00447 _v15 = _v13.orientation
00448 _x = _v15
00449 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
00450 except struct.error, se: self._check_types(se)
00451 except TypeError, te: self._check_types(te)
00452
00453 def deserialize_numpy(self, str, numpy):
00454 """
00455 unpack serialized message in str into this message instance using numpy for array types
00456 @param str: byte array of serialized message
00457 @type str: str
00458 @param numpy: numpy python module
00459 @type numpy: module
00460 """
00461 try:
00462 end = 0
00463 start = end
00464 end += 1
00465 (self.plan_found,) = _struct_B.unpack(str[start:end])
00466 start = end
00467 end += 4
00468 (length,) = _struct_I.unpack(str[start:end])
00469 start = end
00470 end += length
00471 self.error_message = str[start:end]
00472 start = end
00473 end += 4
00474 (length,) = _struct_I.unpack(str[start:end])
00475 self.path = []
00476 for i in xrange(0, length):
00477 val1 = geometry_msgs.msg.PoseStamped()
00478 _v16 = val1.header
00479 start = end
00480 end += 4
00481 (_v16.seq,) = _struct_I.unpack(str[start:end])
00482 _v17 = _v16.stamp
00483 _x = _v17
00484 start = end
00485 end += 8
00486 (_x.secs, _x.nsecs,) = _struct_2I.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 _v16.frame_id = str[start:end]
00493 _v18 = val1.pose
00494 _v19 = _v18.position
00495 _x = _v19
00496 start = end
00497 end += 24
00498 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
00499 _v20 = _v18.orientation
00500 _x = _v20
00501 start = end
00502 end += 32
00503 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
00504 self.path.append(val1)
00505 return self
00506 except struct.error, e:
00507 raise roslib.message.DeserializationError(e)
00508
00509 _struct_I = roslib.message.struct_I
00510 _struct_4d = struct.Struct("<4d")
00511 _struct_B = struct.Struct("<B")
00512 _struct_2I = struct.Struct("<2I")
00513 _struct_3d = struct.Struct("<3d")
00514 class MakeNavPlan(roslib.message.ServiceDefinition):
00515 _type = 'navfn/MakeNavPlan'
00516 _md5sum = '8ffef29bc8b086289124c16a8daa989d'
00517 _request_class = MakeNavPlanRequest
00518 _response_class = MakeNavPlanResponse