00001 """autogenerated by genmsg_py from TransitiveImport.msg. Do not edit."""
00002 import roslib.message
00003 import struct
00004
00005 import test_rospy.msg
00006 import std_msgs.msg
00007
00008 class TransitiveImport(roslib.message.Message):
00009 _md5sum = "27665539bacd6d2d02a7538692d3d3d0"
00010 _type = "test_rospy/TransitiveImport"
00011 _has_header = False
00012 _full_text = """# Bug #2133/2139: EmbedTest uses std_msgs, so TransitiveImport needs it as well
00013 EmbedTest data
00014 ================================================================================
00015 MSG: test_rospy/EmbedTest
00016 std_msgs/String str1
00017 std_msgs/Int32 int1
00018 std_msgs/Int32[] ints
00019 Val val
00020 Val[] vals
00021 ArrayVal[] arrayval
00022
00023 ================================================================================
00024 MSG: std_msgs/String
00025 string data
00026
00027 ================================================================================
00028 MSG: std_msgs/Int32
00029 int32 data
00030 ================================================================================
00031 MSG: test_rospy/Val
00032 string val
00033 ================================================================================
00034 MSG: test_rospy/ArrayVal
00035 Val[] vals
00036 #Val[10] vals_fixed
00037
00038 """
00039 __slots__ = ['data']
00040 _slot_types = ['test_rospy/EmbedTest']
00041
00042 def __init__(self, *args, **kwds):
00043 """
00044 Constructor. Any message fields that are implicitly/explicitly
00045 set to None will be assigned a default value. The recommend
00046 use is keyword arguments as this is more robust to future message
00047 changes. You cannot mix in-order arguments and keyword arguments.
00048
00049 The available fields are:
00050 data
00051
00052 @param args: complete set of field values, in .msg order
00053 @param kwds: use keyword arguments corresponding to message field names
00054 to set specific fields.
00055 """
00056 if args or kwds:
00057 super(TransitiveImport, self).__init__(*args, **kwds)
00058
00059 if self.data is None:
00060 self.data = test_rospy.msg.EmbedTest()
00061 else:
00062 self.data = test_rospy.msg.EmbedTest()
00063
00064 def _get_types(self):
00065 """
00066 internal API method
00067 """
00068 return self._slot_types
00069
00070 def serialize(self, buff):
00071 """
00072 serialize message into buffer
00073 @param buff: buffer
00074 @type buff: StringIO
00075 """
00076 try:
00077 _x = self.data.str1.data
00078 length = len(_x)
00079 buff.write(struct.pack('<I%ss'%length, length, _x))
00080 buff.write(_struct_i.pack(self.data.int1.data))
00081 length = len(self.data.ints)
00082 buff.write(_struct_I.pack(length))
00083 for val1 in self.data.ints:
00084 buff.write(_struct_i.pack(val1.data))
00085 _x = self.data.val.val
00086 length = len(_x)
00087 buff.write(struct.pack('<I%ss'%length, length, _x))
00088 length = len(self.data.vals)
00089 buff.write(_struct_I.pack(length))
00090 for val1 in self.data.vals:
00091 _x = val1.val
00092 length = len(_x)
00093 buff.write(struct.pack('<I%ss'%length, length, _x))
00094 length = len(self.data.arrayval)
00095 buff.write(_struct_I.pack(length))
00096 for val1 in self.data.arrayval:
00097 length = len(val1.vals)
00098 buff.write(_struct_I.pack(length))
00099 for val2 in val1.vals:
00100 _x = val2.val
00101 length = len(_x)
00102 buff.write(struct.pack('<I%ss'%length, length, _x))
00103 except struct.error, se: self._check_types(se)
00104 except TypeError, te: self._check_types(te)
00105
00106 def deserialize(self, str):
00107 """
00108 unpack serialized message in str into this message instance
00109 @param str: byte array of serialized message
00110 @type str: str
00111 """
00112 try:
00113 if self.data is None:
00114 self.data = test_rospy.msg.EmbedTest()
00115 end = 0
00116 start = end
00117 end += 4
00118 (length,) = _struct_I.unpack(str[start:end])
00119 start = end
00120 end += length
00121 self.data.str1.data = str[start:end]
00122 start = end
00123 end += 4
00124 (self.data.int1.data,) = _struct_i.unpack(str[start:end])
00125 start = end
00126 end += 4
00127 (length,) = _struct_I.unpack(str[start:end])
00128 self.data.ints = []
00129 for i in xrange(0, length):
00130 val1 = std_msgs.msg.Int32()
00131 start = end
00132 end += 4
00133 (val1.data,) = _struct_i.unpack(str[start:end])
00134 self.data.ints.append(val1)
00135 start = end
00136 end += 4
00137 (length,) = _struct_I.unpack(str[start:end])
00138 start = end
00139 end += length
00140 self.data.val.val = str[start:end]
00141 start = end
00142 end += 4
00143 (length,) = _struct_I.unpack(str[start:end])
00144 self.data.vals = []
00145 for i in xrange(0, length):
00146 val1 = test_rospy.msg.Val()
00147 start = end
00148 end += 4
00149 (length,) = _struct_I.unpack(str[start:end])
00150 start = end
00151 end += length
00152 val1.val = str[start:end]
00153 self.data.vals.append(val1)
00154 start = end
00155 end += 4
00156 (length,) = _struct_I.unpack(str[start:end])
00157 self.data.arrayval = []
00158 for i in xrange(0, length):
00159 val1 = test_rospy.msg.ArrayVal()
00160 start = end
00161 end += 4
00162 (length,) = _struct_I.unpack(str[start:end])
00163 val1.vals = []
00164 for i in xrange(0, length):
00165 val2 = test_rospy.msg.Val()
00166 start = end
00167 end += 4
00168 (length,) = _struct_I.unpack(str[start:end])
00169 start = end
00170 end += length
00171 val2.val = str[start:end]
00172 val1.vals.append(val2)
00173 self.data.arrayval.append(val1)
00174 return self
00175 except struct.error, e:
00176 raise roslib.message.DeserializationError(e)
00177
00178
00179 def serialize_numpy(self, buff, numpy):
00180 """
00181 serialize message with numpy array types into buffer
00182 @param buff: buffer
00183 @type buff: StringIO
00184 @param numpy: numpy python module
00185 @type numpy module
00186 """
00187 try:
00188 _x = self.data.str1.data
00189 length = len(_x)
00190 buff.write(struct.pack('<I%ss'%length, length, _x))
00191 buff.write(_struct_i.pack(self.data.int1.data))
00192 length = len(self.data.ints)
00193 buff.write(_struct_I.pack(length))
00194 for val1 in self.data.ints:
00195 buff.write(_struct_i.pack(val1.data))
00196 _x = self.data.val.val
00197 length = len(_x)
00198 buff.write(struct.pack('<I%ss'%length, length, _x))
00199 length = len(self.data.vals)
00200 buff.write(_struct_I.pack(length))
00201 for val1 in self.data.vals:
00202 _x = val1.val
00203 length = len(_x)
00204 buff.write(struct.pack('<I%ss'%length, length, _x))
00205 length = len(self.data.arrayval)
00206 buff.write(_struct_I.pack(length))
00207 for val1 in self.data.arrayval:
00208 length = len(val1.vals)
00209 buff.write(_struct_I.pack(length))
00210 for val2 in val1.vals:
00211 _x = val2.val
00212 length = len(_x)
00213 buff.write(struct.pack('<I%ss'%length, length, _x))
00214 except struct.error, se: self._check_types(se)
00215 except TypeError, te: self._check_types(te)
00216
00217 def deserialize_numpy(self, str, numpy):
00218 """
00219 unpack serialized message in str into this message instance using numpy for array types
00220 @param str: byte array of serialized message
00221 @type str: str
00222 @param numpy: numpy python module
00223 @type numpy: module
00224 """
00225 try:
00226 if self.data is None:
00227 self.data = test_rospy.msg.EmbedTest()
00228 end = 0
00229 start = end
00230 end += 4
00231 (length,) = _struct_I.unpack(str[start:end])
00232 start = end
00233 end += length
00234 self.data.str1.data = str[start:end]
00235 start = end
00236 end += 4
00237 (self.data.int1.data,) = _struct_i.unpack(str[start:end])
00238 start = end
00239 end += 4
00240 (length,) = _struct_I.unpack(str[start:end])
00241 self.data.ints = []
00242 for i in xrange(0, length):
00243 val1 = std_msgs.msg.Int32()
00244 start = end
00245 end += 4
00246 (val1.data,) = _struct_i.unpack(str[start:end])
00247 self.data.ints.append(val1)
00248 start = end
00249 end += 4
00250 (length,) = _struct_I.unpack(str[start:end])
00251 start = end
00252 end += length
00253 self.data.val.val = str[start:end]
00254 start = end
00255 end += 4
00256 (length,) = _struct_I.unpack(str[start:end])
00257 self.data.vals = []
00258 for i in xrange(0, length):
00259 val1 = test_rospy.msg.Val()
00260 start = end
00261 end += 4
00262 (length,) = _struct_I.unpack(str[start:end])
00263 start = end
00264 end += length
00265 val1.val = str[start:end]
00266 self.data.vals.append(val1)
00267 start = end
00268 end += 4
00269 (length,) = _struct_I.unpack(str[start:end])
00270 self.data.arrayval = []
00271 for i in xrange(0, length):
00272 val1 = test_rospy.msg.ArrayVal()
00273 start = end
00274 end += 4
00275 (length,) = _struct_I.unpack(str[start:end])
00276 val1.vals = []
00277 for i in xrange(0, length):
00278 val2 = test_rospy.msg.Val()
00279 start = end
00280 end += 4
00281 (length,) = _struct_I.unpack(str[start:end])
00282 start = end
00283 end += length
00284 val2.val = str[start:end]
00285 val1.vals.append(val2)
00286 self.data.arrayval.append(val1)
00287 return self
00288 except struct.error, e:
00289 raise roslib.message.DeserializationError(e)
00290
00291 _struct_I = roslib.message.struct_I
00292 _struct_i = struct.Struct("<i")