00001 """autogenerated by genpy from applanix_msgs/NavigationSolution.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 applanix_msgs.msg
00008
00009 class NavigationSolution(genpy.Message):
00010 _md5sum = "5bd9b6a0dde762b9354121b78d050654"
00011 _type = "applanix_msgs/NavigationSolution"
00012 _has_header = False
00013 _full_text = """TimeDistance td
00014
00015 # Position in degrees
00016 float64 latitude
00017 float64 longitude
00018
00019 # Meters
00020 float64 altitude
00021
00022 # Meters/second
00023 float32 north_vel
00024 float32 east_vel
00025 float32 down_vel
00026
00027 # Degrees
00028 float64 roll
00029 float64 pitch
00030 float64 heading
00031 float64 wander_angle
00032 float32 track_angle
00033
00034 # Meters/second
00035 float32 speed
00036
00037 # Degrees/second
00038 float32 ang_rate_long
00039 float32 ang_rate_trans
00040 float32 ang_rate_down
00041
00042 # Meters/second^2
00043 float32 long_accel
00044 float32 trans_accel
00045 float32 down_accel
00046
00047 uint8 ALIGNMENT_FULL_NAVIGATION=0
00048 uint8 ALIGNMENT_FINE_ALIGNMENT_ACTIVE=1
00049 uint8 ALIGNMENT_GC_CHI_2=2
00050 uint8 ALIGNMENT_PC_CHI_2=3
00051 uint8 ALIGNMENT_GC_CHI_1=4
00052 uint8 ALIGNMENT_PC_CHI_1=5
00053 uint8 ALIGNMENT_COARSE_LEVELING=6
00054 uint8 ALIGNMENT_INITIAL_SOLUTION=7
00055 uint8 ALIGNMENT_NO_VALID_SOLUTION=8
00056 uint8 alignment_status
00057
00058 ================================================================================
00059 MSG: applanix_msgs/TimeDistance
00060 float64 time1
00061 float64 time2
00062 float64 distance
00063 uint8 time_types
00064 uint8 distance_type
00065
00066 """
00067
00068 ALIGNMENT_FULL_NAVIGATION = 0
00069 ALIGNMENT_FINE_ALIGNMENT_ACTIVE = 1
00070 ALIGNMENT_GC_CHI_2 = 2
00071 ALIGNMENT_PC_CHI_2 = 3
00072 ALIGNMENT_GC_CHI_1 = 4
00073 ALIGNMENT_PC_CHI_1 = 5
00074 ALIGNMENT_COARSE_LEVELING = 6
00075 ALIGNMENT_INITIAL_SOLUTION = 7
00076 ALIGNMENT_NO_VALID_SOLUTION = 8
00077
00078 __slots__ = ['td','latitude','longitude','altitude','north_vel','east_vel','down_vel','roll','pitch','heading','wander_angle','track_angle','speed','ang_rate_long','ang_rate_trans','ang_rate_down','long_accel','trans_accel','down_accel','alignment_status']
00079 _slot_types = ['applanix_msgs/TimeDistance','float64','float64','float64','float32','float32','float32','float64','float64','float64','float64','float32','float32','float32','float32','float32','float32','float32','float32','uint8']
00080
00081 def __init__(self, *args, **kwds):
00082 """
00083 Constructor. Any message fields that are implicitly/explicitly
00084 set to None will be assigned a default value. The recommend
00085 use is keyword arguments as this is more robust to future message
00086 changes. You cannot mix in-order arguments and keyword arguments.
00087
00088 The available fields are:
00089 td,latitude,longitude,altitude,north_vel,east_vel,down_vel,roll,pitch,heading,wander_angle,track_angle,speed,ang_rate_long,ang_rate_trans,ang_rate_down,long_accel,trans_accel,down_accel,alignment_status
00090
00091 :param args: complete set of field values, in .msg order
00092 :param kwds: use keyword arguments corresponding to message field names
00093 to set specific fields.
00094 """
00095 if args or kwds:
00096 super(NavigationSolution, self).__init__(*args, **kwds)
00097
00098 if self.td is None:
00099 self.td = applanix_msgs.msg.TimeDistance()
00100 if self.latitude is None:
00101 self.latitude = 0.
00102 if self.longitude is None:
00103 self.longitude = 0.
00104 if self.altitude is None:
00105 self.altitude = 0.
00106 if self.north_vel is None:
00107 self.north_vel = 0.
00108 if self.east_vel is None:
00109 self.east_vel = 0.
00110 if self.down_vel is None:
00111 self.down_vel = 0.
00112 if self.roll is None:
00113 self.roll = 0.
00114 if self.pitch is None:
00115 self.pitch = 0.
00116 if self.heading is None:
00117 self.heading = 0.
00118 if self.wander_angle is None:
00119 self.wander_angle = 0.
00120 if self.track_angle is None:
00121 self.track_angle = 0.
00122 if self.speed is None:
00123 self.speed = 0.
00124 if self.ang_rate_long is None:
00125 self.ang_rate_long = 0.
00126 if self.ang_rate_trans is None:
00127 self.ang_rate_trans = 0.
00128 if self.ang_rate_down is None:
00129 self.ang_rate_down = 0.
00130 if self.long_accel is None:
00131 self.long_accel = 0.
00132 if self.trans_accel is None:
00133 self.trans_accel = 0.
00134 if self.down_accel is None:
00135 self.down_accel = 0.
00136 if self.alignment_status is None:
00137 self.alignment_status = 0
00138 else:
00139 self.td = applanix_msgs.msg.TimeDistance()
00140 self.latitude = 0.
00141 self.longitude = 0.
00142 self.altitude = 0.
00143 self.north_vel = 0.
00144 self.east_vel = 0.
00145 self.down_vel = 0.
00146 self.roll = 0.
00147 self.pitch = 0.
00148 self.heading = 0.
00149 self.wander_angle = 0.
00150 self.track_angle = 0.
00151 self.speed = 0.
00152 self.ang_rate_long = 0.
00153 self.ang_rate_trans = 0.
00154 self.ang_rate_down = 0.
00155 self.long_accel = 0.
00156 self.trans_accel = 0.
00157 self.down_accel = 0.
00158 self.alignment_status = 0
00159
00160 def _get_types(self):
00161 """
00162 internal API method
00163 """
00164 return self._slot_types
00165
00166 def serialize(self, buff):
00167 """
00168 serialize message into buffer
00169 :param buff: buffer, ``StringIO``
00170 """
00171 try:
00172 _x = self
00173 buff.write(_struct_3d2B3d3f4d8fB.pack(_x.td.time1, _x.td.time2, _x.td.distance, _x.td.time_types, _x.td.distance_type, _x.latitude, _x.longitude, _x.altitude, _x.north_vel, _x.east_vel, _x.down_vel, _x.roll, _x.pitch, _x.heading, _x.wander_angle, _x.track_angle, _x.speed, _x.ang_rate_long, _x.ang_rate_trans, _x.ang_rate_down, _x.long_accel, _x.trans_accel, _x.down_accel, _x.alignment_status))
00174 except struct.error as se: self._check_types(se)
00175 except TypeError as te: self._check_types(te)
00176
00177 def deserialize(self, str):
00178 """
00179 unpack serialized message in str into this message instance
00180 :param str: byte array of serialized message, ``str``
00181 """
00182 try:
00183 if self.td is None:
00184 self.td = applanix_msgs.msg.TimeDistance()
00185 end = 0
00186 _x = self
00187 start = end
00188 end += 127
00189 (_x.td.time1, _x.td.time2, _x.td.distance, _x.td.time_types, _x.td.distance_type, _x.latitude, _x.longitude, _x.altitude, _x.north_vel, _x.east_vel, _x.down_vel, _x.roll, _x.pitch, _x.heading, _x.wander_angle, _x.track_angle, _x.speed, _x.ang_rate_long, _x.ang_rate_trans, _x.ang_rate_down, _x.long_accel, _x.trans_accel, _x.down_accel, _x.alignment_status,) = _struct_3d2B3d3f4d8fB.unpack(str[start:end])
00190 return self
00191 except struct.error as e:
00192 raise genpy.DeserializationError(e)
00193
00194
00195 def serialize_numpy(self, buff, numpy):
00196 """
00197 serialize message with numpy array types into buffer
00198 :param buff: buffer, ``StringIO``
00199 :param numpy: numpy python module
00200 """
00201 try:
00202 _x = self
00203 buff.write(_struct_3d2B3d3f4d8fB.pack(_x.td.time1, _x.td.time2, _x.td.distance, _x.td.time_types, _x.td.distance_type, _x.latitude, _x.longitude, _x.altitude, _x.north_vel, _x.east_vel, _x.down_vel, _x.roll, _x.pitch, _x.heading, _x.wander_angle, _x.track_angle, _x.speed, _x.ang_rate_long, _x.ang_rate_trans, _x.ang_rate_down, _x.long_accel, _x.trans_accel, _x.down_accel, _x.alignment_status))
00204 except struct.error as se: self._check_types(se)
00205 except TypeError as te: self._check_types(te)
00206
00207 def deserialize_numpy(self, str, numpy):
00208 """
00209 unpack serialized message in str into this message instance using numpy for array types
00210 :param str: byte array of serialized message, ``str``
00211 :param numpy: numpy python module
00212 """
00213 try:
00214 if self.td is None:
00215 self.td = applanix_msgs.msg.TimeDistance()
00216 end = 0
00217 _x = self
00218 start = end
00219 end += 127
00220 (_x.td.time1, _x.td.time2, _x.td.distance, _x.td.time_types, _x.td.distance_type, _x.latitude, _x.longitude, _x.altitude, _x.north_vel, _x.east_vel, _x.down_vel, _x.roll, _x.pitch, _x.heading, _x.wander_angle, _x.track_angle, _x.speed, _x.ang_rate_long, _x.ang_rate_trans, _x.ang_rate_down, _x.long_accel, _x.trans_accel, _x.down_accel, _x.alignment_status,) = _struct_3d2B3d3f4d8fB.unpack(str[start:end])
00221 return self
00222 except struct.error as e:
00223 raise genpy.DeserializationError(e)
00224
00225 _struct_I = genpy.struct_I
00226 _struct_3d2B3d3f4d8fB = struct.Struct("<3d2B3d3f4d8fB")