_ModelJointsState.py
Go to the documentation of this file.
00001 """autogenerated by genpy from pr2_gazebo_plugins/ModelJointsState.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 geometry_msgs.msg
00008 
00009 class ModelJointsState(genpy.Message):
00010   _md5sum = "f700a74958b6566fae4cd77fbb80ffd4"
00011   _type = "pr2_gazebo_plugins/ModelJointsState"
00012   _has_header = False #flag to mark the presence of a Header object
00013   _full_text = """geometry_msgs/Pose[] model_pose                          # set as single element array if user wishes to specify model pose, otherwise, leave empty
00014 string[] joint_names                                     # list of joint names
00015 float64[] joint_positions                                 # list of desired joint positions, should match joint_names
00016 
00017 ================================================================================
00018 MSG: geometry_msgs/Pose
00019 # A representation of pose in free space, composed of postion and orientation. 
00020 Point position
00021 Quaternion orientation
00022 
00023 ================================================================================
00024 MSG: geometry_msgs/Point
00025 # This contains the position of a point in free space
00026 float64 x
00027 float64 y
00028 float64 z
00029 
00030 ================================================================================
00031 MSG: geometry_msgs/Quaternion
00032 # This represents an orientation in free space in quaternion form.
00033 
00034 float64 x
00035 float64 y
00036 float64 z
00037 float64 w
00038 
00039 """
00040   __slots__ = ['model_pose','joint_names','joint_positions']
00041   _slot_types = ['geometry_msgs/Pose[]','string[]','float64[]']
00042 
00043   def __init__(self, *args, **kwds):
00044     """
00045     Constructor. Any message fields that are implicitly/explicitly
00046     set to None will be assigned a default value. The recommend
00047     use is keyword arguments as this is more robust to future message
00048     changes.  You cannot mix in-order arguments and keyword arguments.
00049 
00050     The available fields are:
00051        model_pose,joint_names,joint_positions
00052 
00053     :param args: complete set of field values, in .msg order
00054     :param kwds: use keyword arguments corresponding to message field names
00055     to set specific fields.
00056     """
00057     if args or kwds:
00058       super(ModelJointsState, self).__init__(*args, **kwds)
00059       #message fields cannot be None, assign default values for those that are
00060       if self.model_pose is None:
00061         self.model_pose = []
00062       if self.joint_names is None:
00063         self.joint_names = []
00064       if self.joint_positions is None:
00065         self.joint_positions = []
00066     else:
00067       self.model_pose = []
00068       self.joint_names = []
00069       self.joint_positions = []
00070 
00071   def _get_types(self):
00072     """
00073     internal API method
00074     """
00075     return self._slot_types
00076 
00077   def serialize(self, buff):
00078     """
00079     serialize message into buffer
00080     :param buff: buffer, ``StringIO``
00081     """
00082     try:
00083       length = len(self.model_pose)
00084       buff.write(_struct_I.pack(length))
00085       for val1 in self.model_pose:
00086         _v1 = val1.position
00087         _x = _v1
00088         buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00089         _v2 = val1.orientation
00090         _x = _v2
00091         buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
00092       length = len(self.joint_names)
00093       buff.write(_struct_I.pack(length))
00094       for val1 in self.joint_names:
00095         length = len(val1)
00096         if python3 or type(val1) == unicode:
00097           val1 = val1.encode('utf-8')
00098           length = len(val1)
00099         buff.write(struct.pack('<I%ss'%length, length, val1))
00100       length = len(self.joint_positions)
00101       buff.write(_struct_I.pack(length))
00102       pattern = '<%sd'%length
00103       buff.write(struct.pack(pattern, *self.joint_positions))
00104     except struct.error as se: self._check_types(se)
00105     except TypeError as te: self._check_types(te)
00106 
00107   def deserialize(self, str):
00108     """
00109     unpack serialized message in str into this message instance
00110     :param str: byte array of serialized message, ``str``
00111     """
00112     try:
00113       if self.model_pose is None:
00114         self.model_pose = None
00115       end = 0
00116       start = end
00117       end += 4
00118       (length,) = _struct_I.unpack(str[start:end])
00119       self.model_pose = []
00120       for i in range(0, length):
00121         val1 = geometry_msgs.msg.Pose()
00122         _v3 = val1.position
00123         _x = _v3
00124         start = end
00125         end += 24
00126         (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
00127         _v4 = val1.orientation
00128         _x = _v4
00129         start = end
00130         end += 32
00131         (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
00132         self.model_pose.append(val1)
00133       start = end
00134       end += 4
00135       (length,) = _struct_I.unpack(str[start:end])
00136       self.joint_names = []
00137       for i in range(0, length):
00138         start = end
00139         end += 4
00140         (length,) = _struct_I.unpack(str[start:end])
00141         start = end
00142         end += length
00143         if python3:
00144           val1 = str[start:end].decode('utf-8')
00145         else:
00146           val1 = str[start:end]
00147         self.joint_names.append(val1)
00148       start = end
00149       end += 4
00150       (length,) = _struct_I.unpack(str[start:end])
00151       pattern = '<%sd'%length
00152       start = end
00153       end += struct.calcsize(pattern)
00154       self.joint_positions = struct.unpack(pattern, str[start:end])
00155       return self
00156     except struct.error as e:
00157       raise genpy.DeserializationError(e) #most likely buffer underfill
00158 
00159 
00160   def serialize_numpy(self, buff, numpy):
00161     """
00162     serialize message with numpy array types into buffer
00163     :param buff: buffer, ``StringIO``
00164     :param numpy: numpy python module
00165     """
00166     try:
00167       length = len(self.model_pose)
00168       buff.write(_struct_I.pack(length))
00169       for val1 in self.model_pose:
00170         _v5 = val1.position
00171         _x = _v5
00172         buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00173         _v6 = val1.orientation
00174         _x = _v6
00175         buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
00176       length = len(self.joint_names)
00177       buff.write(_struct_I.pack(length))
00178       for val1 in self.joint_names:
00179         length = len(val1)
00180         if python3 or type(val1) == unicode:
00181           val1 = val1.encode('utf-8')
00182           length = len(val1)
00183         buff.write(struct.pack('<I%ss'%length, length, val1))
00184       length = len(self.joint_positions)
00185       buff.write(_struct_I.pack(length))
00186       pattern = '<%sd'%length
00187       buff.write(self.joint_positions.tostring())
00188     except struct.error as se: self._check_types(se)
00189     except TypeError as te: self._check_types(te)
00190 
00191   def deserialize_numpy(self, str, numpy):
00192     """
00193     unpack serialized message in str into this message instance using numpy for array types
00194     :param str: byte array of serialized message, ``str``
00195     :param numpy: numpy python module
00196     """
00197     try:
00198       if self.model_pose is None:
00199         self.model_pose = None
00200       end = 0
00201       start = end
00202       end += 4
00203       (length,) = _struct_I.unpack(str[start:end])
00204       self.model_pose = []
00205       for i in range(0, length):
00206         val1 = geometry_msgs.msg.Pose()
00207         _v7 = val1.position
00208         _x = _v7
00209         start = end
00210         end += 24
00211         (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
00212         _v8 = val1.orientation
00213         _x = _v8
00214         start = end
00215         end += 32
00216         (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
00217         self.model_pose.append(val1)
00218       start = end
00219       end += 4
00220       (length,) = _struct_I.unpack(str[start:end])
00221       self.joint_names = []
00222       for i in range(0, length):
00223         start = end
00224         end += 4
00225         (length,) = _struct_I.unpack(str[start:end])
00226         start = end
00227         end += length
00228         if python3:
00229           val1 = str[start:end].decode('utf-8')
00230         else:
00231           val1 = str[start:end]
00232         self.joint_names.append(val1)
00233       start = end
00234       end += 4
00235       (length,) = _struct_I.unpack(str[start:end])
00236       pattern = '<%sd'%length
00237       start = end
00238       end += struct.calcsize(pattern)
00239       self.joint_positions = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length)
00240       return self
00241     except struct.error as e:
00242       raise genpy.DeserializationError(e) #most likely buffer underfill
00243 
00244 _struct_I = genpy.struct_I
00245 _struct_4d = struct.Struct("<4d")
00246 _struct_3d = struct.Struct("<3d")


pr2_gazebo_plugins
Author(s): Sachin Chitta, Stu Glaser, John Hsu
autogenerated on Thu Jan 2 2014 11:45:00