_SteeringCommand.py
Go to the documentation of this file.
00001 """autogenerated by genpy from art_msgs/SteeringCommand.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 std_msgs.msg
00008 
00009 class SteeringCommand(genpy.Message):
00010   _md5sum = "0b28cba4463dbaf6e3e1eaa49cf68c4a"
00011   _type = "art_msgs/SteeringCommand"
00012   _has_header = True #flag to mark the presence of a Header object
00013   _full_text = """# ART steering controller command message
00014 
00015 # $Id: SteeringCommand.msg 644 2010-09-28 03:19:07Z jack.oquin $
00016 
00017 # The maximum allowed steering angle is ArtVehicle::max_steer_degrees
00018 # (29 degrees) in either direction, defined in the art_msgs/ArtVehicle
00019 # message.
00020 
00021 # The driver enforces this limit to protect the vehicle from
00022 # mechanical damage.  There is about a two degree safety margin
00023 # included in that limit.
00024 
00025 Header  header
00026 
00027 # request types
00028 uint32 Degrees = 0     # set absolute angle in degrees: +left, 0 center, -right
00029 uint32 Relative = 1    # change angle relative to current setting (degrees)
00030 
00031 uint32  request                # request type
00032 float32 angle                  # requested angle (degrees)
00033 
00034 
00035 
00036 ================================================================================
00037 MSG: std_msgs/Header
00038 # Standard metadata for higher-level stamped data types.
00039 # This is generally used to communicate timestamped data 
00040 # in a particular coordinate frame.
00041 # 
00042 # sequence ID: consecutively increasing ID 
00043 uint32 seq
00044 #Two-integer timestamp that is expressed as:
00045 # * stamp.secs: seconds (stamp_secs) since epoch
00046 # * stamp.nsecs: nanoseconds since stamp_secs
00047 # time-handling sugar is provided by the client library
00048 time stamp
00049 #Frame this data is associated with
00050 # 0: no frame
00051 # 1: global frame
00052 string frame_id
00053 
00054 """
00055   # Pseudo-constants
00056   Degrees = 0
00057   Relative = 1
00058 
00059   __slots__ = ['header','request','angle']
00060   _slot_types = ['std_msgs/Header','uint32','float32']
00061 
00062   def __init__(self, *args, **kwds):
00063     """
00064     Constructor. Any message fields that are implicitly/explicitly
00065     set to None will be assigned a default value. The recommend
00066     use is keyword arguments as this is more robust to future message
00067     changes.  You cannot mix in-order arguments and keyword arguments.
00068 
00069     The available fields are:
00070        header,request,angle
00071 
00072     :param args: complete set of field values, in .msg order
00073     :param kwds: use keyword arguments corresponding to message field names
00074     to set specific fields.
00075     """
00076     if args or kwds:
00077       super(SteeringCommand, self).__init__(*args, **kwds)
00078       #message fields cannot be None, assign default values for those that are
00079       if self.header is None:
00080         self.header = std_msgs.msg.Header()
00081       if self.request is None:
00082         self.request = 0
00083       if self.angle is None:
00084         self.angle = 0.
00085     else:
00086       self.header = std_msgs.msg.Header()
00087       self.request = 0
00088       self.angle = 0.
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, ``StringIO``
00100     """
00101     try:
00102       _x = self
00103       buff.write(_struct_3I.pack(_x.header.seq, _x.header.stamp.secs, _x.header.stamp.nsecs))
00104       _x = self.header.frame_id
00105       length = len(_x)
00106       if python3 or type(_x) == unicode:
00107         _x = _x.encode('utf-8')
00108         length = len(_x)
00109       buff.write(struct.pack('<I%ss'%length, length, _x))
00110       _x = self
00111       buff.write(_struct_If.pack(_x.request, _x.angle))
00112     except struct.error as se: self._check_types(se)
00113     except TypeError as te: self._check_types(te)
00114 
00115   def deserialize(self, str):
00116     """
00117     unpack serialized message in str into this message instance
00118     :param str: byte array of serialized message, ``str``
00119     """
00120     try:
00121       if self.header is None:
00122         self.header = std_msgs.msg.Header()
00123       end = 0
00124       _x = self
00125       start = end
00126       end += 12
00127       (_x.header.seq, _x.header.stamp.secs, _x.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00128       start = end
00129       end += 4
00130       (length,) = _struct_I.unpack(str[start:end])
00131       start = end
00132       end += length
00133       if python3:
00134         self.header.frame_id = str[start:end].decode('utf-8')
00135       else:
00136         self.header.frame_id = str[start:end]
00137       _x = self
00138       start = end
00139       end += 8
00140       (_x.request, _x.angle,) = _struct_If.unpack(str[start:end])
00141       return self
00142     except struct.error as e:
00143       raise genpy.DeserializationError(e) #most likely buffer underfill
00144 
00145 
00146   def serialize_numpy(self, buff, numpy):
00147     """
00148     serialize message with numpy array types into buffer
00149     :param buff: buffer, ``StringIO``
00150     :param numpy: numpy python module
00151     """
00152     try:
00153       _x = self
00154       buff.write(_struct_3I.pack(_x.header.seq, _x.header.stamp.secs, _x.header.stamp.nsecs))
00155       _x = self.header.frame_id
00156       length = len(_x)
00157       if python3 or type(_x) == unicode:
00158         _x = _x.encode('utf-8')
00159         length = len(_x)
00160       buff.write(struct.pack('<I%ss'%length, length, _x))
00161       _x = self
00162       buff.write(_struct_If.pack(_x.request, _x.angle))
00163     except struct.error as se: self._check_types(se)
00164     except TypeError as te: self._check_types(te)
00165 
00166   def deserialize_numpy(self, str, numpy):
00167     """
00168     unpack serialized message in str into this message instance using numpy for array types
00169     :param str: byte array of serialized message, ``str``
00170     :param numpy: numpy python module
00171     """
00172     try:
00173       if self.header is None:
00174         self.header = std_msgs.msg.Header()
00175       end = 0
00176       _x = self
00177       start = end
00178       end += 12
00179       (_x.header.seq, _x.header.stamp.secs, _x.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00180       start = end
00181       end += 4
00182       (length,) = _struct_I.unpack(str[start:end])
00183       start = end
00184       end += length
00185       if python3:
00186         self.header.frame_id = str[start:end].decode('utf-8')
00187       else:
00188         self.header.frame_id = str[start:end]
00189       _x = self
00190       start = end
00191       end += 8
00192       (_x.request, _x.angle,) = _struct_If.unpack(str[start:end])
00193       return self
00194     except struct.error as e:
00195       raise genpy.DeserializationError(e) #most likely buffer underfill
00196 
00197 _struct_I = genpy.struct_I
00198 _struct_3I = struct.Struct("<3I")
00199 _struct_If = struct.Struct("<If")


art_msgs
Author(s): Jack O'Quin
autogenerated on Fri Jan 3 2014 11:08:05