00001 """autogenerated by genmsg_py from SBPLLatticePlannerStats.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 SBPLLatticePlannerStats(roslib.message.Message):
00009 _md5sum = "b1c85b1cec5e7b196cc477ac1440bbf0"
00010 _type = "sbpl_lattice_planner/SBPLLatticePlannerStats"
00011 _has_header = False
00012 _full_text = """#planner stats
00013 float64 initial_epsilon
00014 float64 final_epsilon
00015 bool plan_to_first_solution
00016 float64 allocated_time
00017 float64 actual_time
00018 float64 time_to_first_solution
00019 float64 solution_cost
00020 float64 path_size
00021 int64 final_number_of_expands
00022 int64 number_of_expands_initial_solution
00023
00024 #problem stats
00025 geometry_msgs/PoseStamped start
00026 geometry_msgs/PoseStamped goal
00027
00028 ================================================================================
00029 MSG: geometry_msgs/PoseStamped
00030 # A Pose with reference coordinate frame and timestamp
00031 Header header
00032 Pose pose
00033
00034 ================================================================================
00035 MSG: std_msgs/Header
00036 # Standard metadata for higher-level stamped data types.
00037 # This is generally used to communicate timestamped data
00038 # in a particular coordinate frame.
00039 #
00040 # sequence ID: consecutively increasing ID
00041 uint32 seq
00042 #Two-integer timestamp that is expressed as:
00043 # * stamp.secs: seconds (stamp_secs) since epoch
00044 # * stamp.nsecs: nanoseconds since stamp_secs
00045 # time-handling sugar is provided by the client library
00046 time stamp
00047 #Frame this data is associated with
00048 # 0: no frame
00049 # 1: global frame
00050 string frame_id
00051
00052 ================================================================================
00053 MSG: geometry_msgs/Pose
00054 # A representation of pose in free space, composed of postion and orientation.
00055 Point position
00056 Quaternion orientation
00057
00058 ================================================================================
00059 MSG: geometry_msgs/Point
00060 # This contains the position of a point in free space
00061 float64 x
00062 float64 y
00063 float64 z
00064
00065 ================================================================================
00066 MSG: geometry_msgs/Quaternion
00067 # This represents an orientation in free space in quaternion form.
00068
00069 float64 x
00070 float64 y
00071 float64 z
00072 float64 w
00073
00074 """
00075 __slots__ = ['initial_epsilon','final_epsilon','plan_to_first_solution','allocated_time','actual_time','time_to_first_solution','solution_cost','path_size','final_number_of_expands','number_of_expands_initial_solution','start','goal']
00076 _slot_types = ['float64','float64','bool','float64','float64','float64','float64','float64','int64','int64','geometry_msgs/PoseStamped','geometry_msgs/PoseStamped']
00077
00078 def __init__(self, *args, **kwds):
00079 """
00080 Constructor. Any message fields that are implicitly/explicitly
00081 set to None will be assigned a default value. The recommend
00082 use is keyword arguments as this is more robust to future message
00083 changes. You cannot mix in-order arguments and keyword arguments.
00084
00085 The available fields are:
00086 initial_epsilon,final_epsilon,plan_to_first_solution,allocated_time,actual_time,time_to_first_solution,solution_cost,path_size,final_number_of_expands,number_of_expands_initial_solution,start,goal
00087
00088 @param args: complete set of field values, in .msg order
00089 @param kwds: use keyword arguments corresponding to message field names
00090 to set specific fields.
00091 """
00092 if args or kwds:
00093 super(SBPLLatticePlannerStats, self).__init__(*args, **kwds)
00094
00095 if self.initial_epsilon is None:
00096 self.initial_epsilon = 0.
00097 if self.final_epsilon is None:
00098 self.final_epsilon = 0.
00099 if self.plan_to_first_solution is None:
00100 self.plan_to_first_solution = False
00101 if self.allocated_time is None:
00102 self.allocated_time = 0.
00103 if self.actual_time is None:
00104 self.actual_time = 0.
00105 if self.time_to_first_solution is None:
00106 self.time_to_first_solution = 0.
00107 if self.solution_cost is None:
00108 self.solution_cost = 0.
00109 if self.path_size is None:
00110 self.path_size = 0.
00111 if self.final_number_of_expands is None:
00112 self.final_number_of_expands = 0
00113 if self.number_of_expands_initial_solution is None:
00114 self.number_of_expands_initial_solution = 0
00115 if self.start is None:
00116 self.start = geometry_msgs.msg.PoseStamped()
00117 if self.goal is None:
00118 self.goal = geometry_msgs.msg.PoseStamped()
00119 else:
00120 self.initial_epsilon = 0.
00121 self.final_epsilon = 0.
00122 self.plan_to_first_solution = False
00123 self.allocated_time = 0.
00124 self.actual_time = 0.
00125 self.time_to_first_solution = 0.
00126 self.solution_cost = 0.
00127 self.path_size = 0.
00128 self.final_number_of_expands = 0
00129 self.number_of_expands_initial_solution = 0
00130 self.start = geometry_msgs.msg.PoseStamped()
00131 self.goal = geometry_msgs.msg.PoseStamped()
00132
00133 def _get_types(self):
00134 """
00135 internal API method
00136 """
00137 return self._slot_types
00138
00139 def serialize(self, buff):
00140 """
00141 serialize message into buffer
00142 @param buff: buffer
00143 @type buff: StringIO
00144 """
00145 try:
00146 _x = self
00147 buff.write(_struct_2dB5d2q3I.pack(_x.initial_epsilon, _x.final_epsilon, _x.plan_to_first_solution, _x.allocated_time, _x.actual_time, _x.time_to_first_solution, _x.solution_cost, _x.path_size, _x.final_number_of_expands, _x.number_of_expands_initial_solution, _x.start.header.seq, _x.start.header.stamp.secs, _x.start.header.stamp.nsecs))
00148 _x = self.start.header.frame_id
00149 length = len(_x)
00150 buff.write(struct.pack('<I%ss'%length, length, _x))
00151 _x = self
00152 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))
00153 _x = self.goal.header.frame_id
00154 length = len(_x)
00155 buff.write(struct.pack('<I%ss'%length, length, _x))
00156 _x = self
00157 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))
00158 except struct.error, se: self._check_types(se)
00159 except TypeError, te: self._check_types(te)
00160
00161 def deserialize(self, str):
00162 """
00163 unpack serialized message in str into this message instance
00164 @param str: byte array of serialized message
00165 @type str: str
00166 """
00167 try:
00168 if self.start is None:
00169 self.start = geometry_msgs.msg.PoseStamped()
00170 if self.goal is None:
00171 self.goal = geometry_msgs.msg.PoseStamped()
00172 end = 0
00173 _x = self
00174 start = end
00175 end += 85
00176 (_x.initial_epsilon, _x.final_epsilon, _x.plan_to_first_solution, _x.allocated_time, _x.actual_time, _x.time_to_first_solution, _x.solution_cost, _x.path_size, _x.final_number_of_expands, _x.number_of_expands_initial_solution, _x.start.header.seq, _x.start.header.stamp.secs, _x.start.header.stamp.nsecs,) = _struct_2dB5d2q3I.unpack(str[start:end])
00177 self.plan_to_first_solution = bool(self.plan_to_first_solution)
00178 start = end
00179 end += 4
00180 (length,) = _struct_I.unpack(str[start:end])
00181 start = end
00182 end += length
00183 self.start.header.frame_id = str[start:end]
00184 _x = self
00185 start = end
00186 end += 68
00187 (_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])
00188 start = end
00189 end += 4
00190 (length,) = _struct_I.unpack(str[start:end])
00191 start = end
00192 end += length
00193 self.goal.header.frame_id = str[start:end]
00194 _x = self
00195 start = end
00196 end += 56
00197 (_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])
00198 return self
00199 except struct.error, e:
00200 raise roslib.message.DeserializationError(e)
00201
00202
00203 def serialize_numpy(self, buff, numpy):
00204 """
00205 serialize message with numpy array types into buffer
00206 @param buff: buffer
00207 @type buff: StringIO
00208 @param numpy: numpy python module
00209 @type numpy module
00210 """
00211 try:
00212 _x = self
00213 buff.write(_struct_2dB5d2q3I.pack(_x.initial_epsilon, _x.final_epsilon, _x.plan_to_first_solution, _x.allocated_time, _x.actual_time, _x.time_to_first_solution, _x.solution_cost, _x.path_size, _x.final_number_of_expands, _x.number_of_expands_initial_solution, _x.start.header.seq, _x.start.header.stamp.secs, _x.start.header.stamp.nsecs))
00214 _x = self.start.header.frame_id
00215 length = len(_x)
00216 buff.write(struct.pack('<I%ss'%length, length, _x))
00217 _x = self
00218 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))
00219 _x = self.goal.header.frame_id
00220 length = len(_x)
00221 buff.write(struct.pack('<I%ss'%length, length, _x))
00222 _x = self
00223 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))
00224 except struct.error, se: self._check_types(se)
00225 except TypeError, te: self._check_types(te)
00226
00227 def deserialize_numpy(self, str, numpy):
00228 """
00229 unpack serialized message in str into this message instance using numpy for array types
00230 @param str: byte array of serialized message
00231 @type str: str
00232 @param numpy: numpy python module
00233 @type numpy: module
00234 """
00235 try:
00236 if self.start is None:
00237 self.start = geometry_msgs.msg.PoseStamped()
00238 if self.goal is None:
00239 self.goal = geometry_msgs.msg.PoseStamped()
00240 end = 0
00241 _x = self
00242 start = end
00243 end += 85
00244 (_x.initial_epsilon, _x.final_epsilon, _x.plan_to_first_solution, _x.allocated_time, _x.actual_time, _x.time_to_first_solution, _x.solution_cost, _x.path_size, _x.final_number_of_expands, _x.number_of_expands_initial_solution, _x.start.header.seq, _x.start.header.stamp.secs, _x.start.header.stamp.nsecs,) = _struct_2dB5d2q3I.unpack(str[start:end])
00245 self.plan_to_first_solution = bool(self.plan_to_first_solution)
00246 start = end
00247 end += 4
00248 (length,) = _struct_I.unpack(str[start:end])
00249 start = end
00250 end += length
00251 self.start.header.frame_id = str[start:end]
00252 _x = self
00253 start = end
00254 end += 68
00255 (_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])
00256 start = end
00257 end += 4
00258 (length,) = _struct_I.unpack(str[start:end])
00259 start = end
00260 end += length
00261 self.goal.header.frame_id = str[start:end]
00262 _x = self
00263 start = end
00264 end += 56
00265 (_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])
00266 return self
00267 except struct.error, e:
00268 raise roslib.message.DeserializationError(e)
00269
00270 _struct_I = roslib.message.struct_I
00271 _struct_7d = struct.Struct("<7d")
00272 _struct_2dB5d2q3I = struct.Struct("<2dB5d2q3I")
00273 _struct_7d3I = struct.Struct("<7d3I")