0001 # THIS FILE IS AUTOMATICALLY GENERATED. EDIT THE SOURCE FILE NOT THIS ONE 0002 0003 """Various descriptions of data specific to LG PM325 (Sprint)""" 0004 0005 import re 0006 0007 from prototypes import * 0008 from prototypeslg import * 0009 0010 # Make all lg stuff available in this module as well 0011 from p_lg import * 0012 0013 0014 # We use LSB for all integer like fields 0015 UINT=UINTlsb 0016 BOOL=BOOLlsb 0017 0018 NUMSPEEDDIALS=99 0019 FIRSTSPEEDDIAL=1 0020 LASTSPEEDDIAL=99 0021 NUMPHONEBOOKENTRIES=200 0022 MEMOLENGTH=33 0023 0024 NUMEMAILS=3 0025 NUMPHONENUMBERS=5 0026 0027 NORINGTONE=0 0028 NOMSGRINGTONE=0 0029 NOWALLPAPER=0 0030 0031 PHONE_ENCODING='iso8859_1' 0032 0033 numbertypetab=( 'cell', 'home', 'office', 'fax', 'pager' ) 0034 0035 media_directory='ams' 0036 ringerindex='setas/amsRingerIndex.map' 0037 imageindex='setas/amsImageIndex.map' 0038 ringerconst=2 0039 imageconst=3 0040 max_ringers=100 0041 max_images=100 0042 0043 phonebook_media='pim/pbookcontact.dat' 0044 0045 #----- Calendar settings -------------------------------------------------- 0046 NUMCALENDARENTRIES=300 0047 CAL_REP_NONE=0x10 0048 CAL_REP_DAILY=0x11 0049 CAL_REP_MONFRI=0x12 0050 CAL_REP_WEEKLY=0x13 0051 CAL_REP_MONTHLY=0x14 0052 CAL_REP_YEARLY=0x15 0053 CAL_DOW_SUN=0x0800 0054 CAL_DOW_MON=0x0400 0055 CAL_DOW_TUE=0x0200 0056 CAL_DOW_WED=0x0100 0057 CAL_DOW_THU=0x0080 0058 CAL_DOW_FRI=0x0040 0059 CAL_DOW_SAT=0x0020 0060 CAL_DOW_EXCEPTIONS=0x0010 0061 CAL_REMINDER_NONE=0 0062 CAL_REMINDER_ONTIME=1 0063 CAL_REMINDER_5MIN=2 0064 CAL_REMINDER_10MIN=3 0065 CAL_REMINDER_1HOUR=4 0066 CAL_REMINDER_1DAY=5 0067 CAL_REMINDER_2DAYS=6 0068 CAL_REPEAT_DATE=(2100, 12, 31) 0069 0070 cal_dir='sch' 0071 cal_data_file_name='sch/schedule.dat' 0072 cal_exception_file_name='sch/schexception.dat' 0073 cal_has_voice_id=False 0074 0075 #----- SMS settings ------------------------------------------------------- 0076 SMS_CANNED_MAX_ITEMS=40 0077 SMS_CANNED_MAX_LENGTH=104 0078 SMS_CANNED_FILENAME="sms/canned_msg.dat" 0079 SMS_PATTERNS={'Inbox': re.compile(r"^.*/inbox[0-9][0-9][0-9]\.dat$"), 0080 'Sent': re.compile(r"^.*/outbox[0-9][0-9][0-9]\.dat$"), 0081 'Saved': re.compile(r"^.*/sf[0-9][0-9]\.dat$"), 0082 } 0083 0084 #----- Text Memo settings ------------------------------------------------- 0085 text_memo_file='sch/memo.dat' 0086 content_file_name='ams/contentInfo' 0087 content_count_file_name='ams/realContent' 0088 0089 class firmwareresponse(BaseProtogenClass): 0090 __fields=['command', 'date1', 'time1', 'date2', 'time2', 'firmware', 'dunno'] 0091 0092 def __init__(self, *args, **kwargs): 0093 dict={} 0094 # What was supplied to this function 0095 dict.update(kwargs) 0096 # Parent constructor 0097 super(firmwareresponse,self).__init__(**dict) 0098 if self.__class__ is firmwareresponse: 0099 self._update(args,dict) 0100 0101 0102 def getfields(self): 0103 return self.__fields 0104 0105 0106 def _update(self, args, kwargs): 0107 super(firmwareresponse,self)._update(args,kwargs) 0108 keys=kwargs.keys() 0109 for key in keys: 0110 if key in self.__fields: 0111 setattr(self, key, kwargs[key]) 0112 del kwargs[key] 0113 # Were any unrecognized kwargs passed in? 0114 if __debug__: 0115 self._complainaboutunusedargs(firmwareresponse,kwargs) 0116 if len(args): raise TypeError('Unexpected arguments supplied: '+`args`) 0117 # Make all P fields that haven't already been constructed 0118 0119 0120 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 0121 'Writes this packet to the supplied buffer' 0122 self._bufferstartoffset=buf.getcurrentoffset() 0123 self.__field_command.writetobuffer(buf) 0124 self.__field_date1.writetobuffer(buf) 0125 self.__field_time1.writetobuffer(buf) 0126 self.__field_date2.writetobuffer(buf) 0127 self.__field_time2.writetobuffer(buf) 0128 self.__field_firmware.writetobuffer(buf) 0129 self.__field_dunno.writetobuffer(buf) 0130 self._bufferendoffset=buf.getcurrentoffset() 0131 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 0132 0133 0134 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 0135 'Reads this packet from the supplied buffer' 0136 self._bufferstartoffset=buf.getcurrentoffset() 0137 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 0138 self.__field_command=UINT(**{'sizeinbytes': 1}) 0139 self.__field_command.readfrombuffer(buf) 0140 self.__field_date1=USTRING(**{'sizeinbytes': 11, 'terminator': None}) 0141 self.__field_date1.readfrombuffer(buf) 0142 self.__field_time1=USTRING(**{'sizeinbytes': 8, 'terminator': None}) 0143 self.__field_time1.readfrombuffer(buf) 0144 self.__field_date2=USTRING(**{'sizeinbytes': 11, 'terminator': None}) 0145 self.__field_date2.readfrombuffer(buf) 0146 self.__field_time2=USTRING(**{'sizeinbytes': 8, 'terminator': None}) 0147 self.__field_time2.readfrombuffer(buf) 0148 self.__field_firmware=USTRING(**{'sizeinbytes': 8, 'terminator': None}) 0149 self.__field_firmware.readfrombuffer(buf) 0150 self.__field_dunno=DATA() 0151 self.__field_dunno.readfrombuffer(buf) 0152 self._bufferendoffset=buf.getcurrentoffset() 0153 0154 0155 def __getfield_command(self): 0156 return self.__field_command.getvalue() 0157 0158 def __setfield_command(self, value): 0159 if isinstance(value,UINT): 0160 self.__field_command=value 0161 else: 0162 self.__field_command=UINT(value,**{'sizeinbytes': 1}) 0163 0164 def __delfield_command(self): del self.__field_command 0165 0166 command=property(__getfield_command, __setfield_command, __delfield_command, None) 0167 0168 def __getfield_date1(self): 0169 return self.__field_date1.getvalue() 0170 0171 def __setfield_date1(self, value): 0172 if isinstance(value,USTRING): 0173 self.__field_date1=value 0174 else: 0175 self.__field_date1=USTRING(value,**{'sizeinbytes': 11, 'terminator': None}) 0176 0177 def __delfield_date1(self): del self.__field_date1 0178 0179 date1=property(__getfield_date1, __setfield_date1, __delfield_date1, None) 0180 0181 def __getfield_time1(self): 0182 return self.__field_time1.getvalue() 0183 0184 def __setfield_time1(self, value): 0185 if isinstance(value,USTRING): 0186 self.__field_time1=value 0187 else: 0188 self.__field_time1=USTRING(value,**{'sizeinbytes': 8, 'terminator': None}) 0189 0190 def __delfield_time1(self): del self.__field_time1 0191 0192 time1=property(__getfield_time1, __setfield_time1, __delfield_time1, None) 0193 0194 def __getfield_date2(self): 0195 return self.__field_date2.getvalue() 0196 0197 def __setfield_date2(self, value): 0198 if isinstance(value,USTRING): 0199 self.__field_date2=value 0200 else: 0201 self.__field_date2=USTRING(value,**{'sizeinbytes': 11, 'terminator': None}) 0202 0203 def __delfield_date2(self): del self.__field_date2 0204 0205 date2=property(__getfield_date2, __setfield_date2, __delfield_date2, None) 0206 0207 def __getfield_time2(self): 0208 return self.__field_time2.getvalue() 0209 0210 def __setfield_time2(self, value): 0211 if isinstance(value,USTRING): 0212 self.__field_time2=value 0213 else: 0214 self.__field_time2=USTRING(value,**{'sizeinbytes': 8, 'terminator': None}) 0215 0216 def __delfield_time2(self): del self.__field_time2 0217 0218 time2=property(__getfield_time2, __setfield_time2, __delfield_time2, None) 0219 0220 def __getfield_firmware(self): 0221 return self.__field_firmware.getvalue() 0222 0223 def __setfield_firmware(self, value): 0224 if isinstance(value,USTRING): 0225 self.__field_firmware=value 0226 else: 0227 self.__field_firmware=USTRING(value,**{'sizeinbytes': 8, 'terminator': None}) 0228 0229 def __delfield_firmware(self): del self.__field_firmware 0230 0231 firmware=property(__getfield_firmware, __setfield_firmware, __delfield_firmware, None) 0232 0233 def __getfield_dunno(self): 0234 return self.__field_dunno.getvalue() 0235 0236 def __setfield_dunno(self, value): 0237 if isinstance(value,DATA): 0238 self.__field_dunno=value 0239 else: 0240 self.__field_dunno=DATA(value,) 0241 0242 def __delfield_dunno(self): del self.__field_dunno 0243 0244 dunno=property(__getfield_dunno, __setfield_dunno, __delfield_dunno, None) 0245 0246 def iscontainer(self): 0247 return True 0248 0249 def containerelements(self): 0250 yield ('command', self.__field_command, None) 0251 yield ('date1', self.__field_date1, None) 0252 yield ('time1', self.__field_time1, None) 0253 yield ('date2', self.__field_date2, None) 0254 yield ('time2', self.__field_time2, None) 0255 yield ('firmware', self.__field_firmware, None) 0256 yield ('dunno', self.__field_dunno, None) 0257 0258 0259 0260 0261 class pbreadentryresponse(BaseProtogenClass): 0262 "Results of reading one entry" 0263 __fields=['header', 'entry'] 0264 0265 def __init__(self, *args, **kwargs): 0266 dict={} 0267 # What was supplied to this function 0268 dict.update(kwargs) 0269 # Parent constructor 0270 super(pbreadentryresponse,self).__init__(**dict) 0271 if self.__class__ is pbreadentryresponse: 0272 self._update(args,dict) 0273 0274 0275 def getfields(self): 0276 return self.__fields 0277 0278 0279 def _update(self, args, kwargs): 0280 super(pbreadentryresponse,self)._update(args,kwargs) 0281 keys=kwargs.keys() 0282 for key in keys: 0283 if key in self.__fields: 0284 setattr(self, key, kwargs[key]) 0285 del kwargs[key] 0286 # Were any unrecognized kwargs passed in? 0287 if __debug__: 0288 self._complainaboutunusedargs(pbreadentryresponse,kwargs) 0289 if len(args): raise TypeError('Unexpected arguments supplied: '+`args`) 0290 # Make all P fields that haven't already been constructed 0291 0292 0293 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 0294 'Writes this packet to the supplied buffer' 0295 self._bufferstartoffset=buf.getcurrentoffset() 0296 self.__field_header.writetobuffer(buf) 0297 self.__field_entry.writetobuffer(buf) 0298 self._bufferendoffset=buf.getcurrentoffset() 0299 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 0300 0301 0302 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 0303 'Reads this packet from the supplied buffer' 0304 self._bufferstartoffset=buf.getcurrentoffset() 0305 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 0306 self.__field_header=pbheader() 0307 self.__field_header.readfrombuffer(buf) 0308 self.__field_entry=pbentry() 0309 self.__field_entry.readfrombuffer(buf) 0310 self._bufferendoffset=buf.getcurrentoffset() 0311 0312 0313 def __getfield_header(self): 0314 return self.__field_header.getvalue() 0315 0316 def __setfield_header(self, value): 0317 if isinstance(value,pbheader): 0318 self.__field_header=value 0319 else: 0320 self.__field_header=pbheader(value,) 0321 0322 def __delfield_header(self): del self.__field_header 0323 0324 header=property(__getfield_header, __setfield_header, __delfield_header, None) 0325 0326 def __getfield_entry(self): 0327 return self.__field_entry.getvalue() 0328 0329 def __setfield_entry(self, value): 0330 if isinstance(value,pbentry): 0331 self.__field_entry=value 0332 else: 0333 self.__field_entry=pbentry(value,) 0334 0335 def __delfield_entry(self): del self.__field_entry 0336 0337 entry=property(__getfield_entry, __setfield_entry, __delfield_entry, None) 0338 0339 def iscontainer(self): 0340 return True 0341 0342 def containerelements(self): 0343 yield ('header', self.__field_header, None) 0344 yield ('entry', self.__field_entry, None) 0345 0346 0347 0348 0349 class pbupdateentryrequest(BaseProtogenClass): 0350 __fields=['header', 'entry'] 0351 0352 def __init__(self, *args, **kwargs): 0353 dict={} 0354 # What was supplied to this function 0355 dict.update(kwargs) 0356 # Parent constructor 0357 super(pbupdateentryrequest,self).__init__(**dict) 0358 if self.__class__ is pbupdateentryrequest: 0359 self._update(args,dict) 0360 0361 0362 def getfields(self): 0363 return self.__fields 0364 0365 0366 def _update(self, args, kwargs): 0367 super(pbupdateentryrequest,self)._update(args,kwargs) 0368 keys=kwargs.keys() 0369 for key in keys: 0370 if key in self.__fields: 0371 setattr(self, key, kwargs[key]) 0372 del kwargs[key] 0373 # Were any unrecognized kwargs passed in? 0374 if __debug__: 0375 self._complainaboutunusedargs(pbupdateentryrequest,kwargs) 0376 if len(args): raise TypeError('Unexpected arguments supplied: '+`args`) 0377 # Make all P fields that haven't already been constructed 0378 0379 0380 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 0381 'Writes this packet to the supplied buffer' 0382 self._bufferstartoffset=buf.getcurrentoffset() 0383 try: self.__field_header 0384 except: 0385 self.__field_header=pbheader(**{'command': 0x04, 'flag': 0x01}) 0386 self.__field_header.writetobuffer(buf) 0387 self.__field_entry.writetobuffer(buf) 0388 self._bufferendoffset=buf.getcurrentoffset() 0389 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 0390 0391 0392 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 0393 'Reads this packet from the supplied buffer' 0394 self._bufferstartoffset=buf.getcurrentoffset() 0395 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 0396 self.__field_header=pbheader(**{'command': 0x04, 'flag': 0x01}) 0397 self.__field_header.readfrombuffer(buf) 0398 self.__field_entry=pbentry() 0399 self.__field_entry.readfrombuffer(buf) 0400 self._bufferendoffset=buf.getcurrentoffset() 0401 0402 0403 def __getfield_header(self): 0404 try: self.__field_header 0405 except: 0406 self.__field_header=pbheader(**{'command': 0x04, 'flag': 0x01}) 0407 return self.__field_header.getvalue() 0408 0409 def __setfield_header(self, value): 0410 if isinstance(value,pbheader): 0411 self.__field_header=value 0412 else: 0413 self.__field_header=pbheader(value,**{'command': 0x04, 'flag': 0x01}) 0414 0415 def __delfield_header(self): del self.__field_header 0416 0417 header=property(__getfield_header, __setfield_header, __delfield_header, None) 0418 0419 def __getfield_entry(self): 0420 return self.__field_entry.getvalue() 0421 0422 def __setfield_entry(self, value): 0423 if isinstance(value,pbentry): 0424 self.__field_entry=value 0425 else: 0426 self.__field_entry=pbentry(value,) 0427 0428 def __delfield_entry(self): del self.__field_entry 0429 0430 entry=property(__getfield_entry, __setfield_entry, __delfield_entry, None) 0431 0432 def iscontainer(self): 0433 return True 0434 0435 def containerelements(self): 0436 yield ('header', self.__field_header, None) 0437 yield ('entry', self.__field_entry, None) 0438 0439 0440 0441 0442 class pbappendentryrequest(BaseProtogenClass): 0443 __fields=['header', 'entry'] 0444 0445 def __init__(self, *args, **kwargs): 0446 dict={} 0447 # What was supplied to this function 0448 dict.update(kwargs) 0449 # Parent constructor 0450 super(pbappendentryrequest,self).__init__(**dict) 0451 if self.__class__ is pbappendentryrequest: 0452 self._update(args,dict) 0453 0454 0455 def getfields(self): 0456 return self.__fields 0457 0458 0459 def _update(self, args, kwargs): 0460 super(pbappendentryrequest,self)._update(args,kwargs) 0461 keys=kwargs.keys() 0462 for key in keys: 0463 if key in self.__fields: 0464 setattr(self, key, kwargs[key]) 0465 del kwargs[key] 0466 # Were any unrecognized kwargs passed in? 0467 if __debug__: 0468 self._complainaboutunusedargs(pbappendentryrequest,kwargs) 0469 if len(args): raise TypeError('Unexpected arguments supplied: '+`args`) 0470 # Make all P fields that haven't already been constructed 0471 0472 0473 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 0474 'Writes this packet to the supplied buffer' 0475 self._bufferstartoffset=buf.getcurrentoffset() 0476 try: self.__field_header 0477 except: 0478 self.__field_header=pbheader(**{'command': 0x03, 'flag': 0x01}) 0479 self.__field_header.writetobuffer(buf) 0480 self.__field_entry.writetobuffer(buf) 0481 self._bufferendoffset=buf.getcurrentoffset() 0482 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 0483 0484 0485 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 0486 'Reads this packet from the supplied buffer' 0487 self._bufferstartoffset=buf.getcurrentoffset() 0488 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 0489 self.__field_header=pbheader(**{'command': 0x03, 'flag': 0x01}) 0490 self.__field_header.readfrombuffer(buf) 0491 self.__field_entry=pbentry() 0492 self.__field_entry.readfrombuffer(buf) 0493 self._bufferendoffset=buf.getcurrentoffset() 0494 0495 0496 def __getfield_header(self): 0497 try: self.__field_header 0498 except: 0499 self.__field_header=pbheader(**{'command': 0x03, 'flag': 0x01}) 0500 return self.__field_header.getvalue() 0501 0502 def __setfield_header(self, value): 0503 if isinstance(value,pbheader): 0504 self.__field_header=value 0505 else: 0506 self.__field_header=pbheader(value,**{'command': 0x03, 'flag': 0x01}) 0507 0508 def __delfield_header(self): del self.__field_header 0509 0510 header=property(__getfield_header, __setfield_header, __delfield_header, None) 0511 0512 def __getfield_entry(self): 0513 return self.__field_entry.getvalue() 0514 0515 def __setfield_entry(self, value): 0516 if isinstance(value,pbentry): 0517 self.__field_entry=value 0518 else: 0519 self.__field_entry=pbentry(value,) 0520 0521 def __delfield_entry(self): del self.__field_entry 0522 0523 entry=property(__getfield_entry, __setfield_entry, __delfield_entry, None) 0524 0525 def iscontainer(self): 0526 return True 0527 0528 def containerelements(self): 0529 yield ('header', self.__field_header, None) 0530 yield ('entry', self.__field_entry, None) 0531 0532 0533 0534 0535 class pbentry(BaseProtogenClass): 0536 __fields=['serial1', 'entrysize', 'entrynumber', 'name', 'group', 'unknown2', 'secret', 'memo', 'emails', 'url', 'numberspeeds', 'numbertypes', 'numbers', 'EndOfRecord', 'ringtone', 'wallpaper'] 0537 0538 def __init__(self, *args, **kwargs): 0539 dict={} 0540 # What was supplied to this function 0541 dict.update(kwargs) 0542 # Parent constructor 0543 super(pbentry,self).__init__(**dict) 0544 if self.__class__ is pbentry: 0545 self._update(args,dict) 0546 0547 0548 def getfields(self): 0549 return self.__fields 0550 0551 0552 def _update(self, args, kwargs): 0553 super(pbentry,self)._update(args,kwargs) 0554 keys=kwargs.keys() 0555 for key in keys: 0556 if key in self.__fields: 0557 setattr(self, key, kwargs[key]) 0558 del kwargs[key] 0559 # Were any unrecognized kwargs passed in? 0560 if __debug__: 0561 self._complainaboutunusedargs(pbentry,kwargs) 0562 if len(args): raise TypeError('Unexpected arguments supplied: '+`args`) 0563 # Make all P fields that haven't already been constructed 0564 try: self.__field_ringtone 0565 except: 0566 self.__field_ringtone=UINT(**{'default': 0x600}) 0567 try: self.__field_wallpaper 0568 except: 0569 self.__field_wallpaper=UINT(**{'default': 0x100}) 0570 0571 0572 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 0573 'Writes this packet to the supplied buffer' 0574 self._bufferstartoffset=buf.getcurrentoffset() 0575 self.__field_serial1.writetobuffer(buf) 0576 try: self.__field_entrysize 0577 except: 0578 self.__field_entrysize=UINT(**{'sizeinbytes': 2, 'constant': 0x026E}) 0579 self.__field_entrysize.writetobuffer(buf) 0580 self.__field_entrynumber.writetobuffer(buf) 0581 self.__field_name.writetobuffer(buf) 0582 self.__field_group.writetobuffer(buf) 0583 try: self.__field_unknown2 0584 except: 0585 self.__field_unknown2=UINT(**{'sizeinbytes': 2, 'default': 0}) 0586 self.__field_unknown2.writetobuffer(buf) 0587 self.__field_secret.writetobuffer(buf) 0588 self.__field_memo.writetobuffer(buf) 0589 try: self.__field_emails 0590 except: 0591 self.__field_emails=LIST(**{'elementclass': _gen_p_lgpm325_139, 'length': NUMEMAILS}) 0592 self.__field_emails.writetobuffer(buf) 0593 self.__field_url.writetobuffer(buf) 0594 try: self.__field_numberspeeds 0595 except: 0596 self.__field_numberspeeds=LIST(**{'elementclass': _gen_p_lgpm325_142, 'length': NUMPHONENUMBERS}) 0597 self.__field_numberspeeds.writetobuffer(buf) 0598 try: self.__field_numbertypes 0599 except: 0600 self.__field_numbertypes=LIST(**{'elementclass': _gen_p_lgpm325_144, 'length': NUMPHONENUMBERS}) 0601 self.__field_numbertypes.writetobuffer(buf) 0602 try: self.__field_numbers 0603 except: 0604 self.__field_numbers=LIST(**{'elementclass': _gen_p_lgpm325_146, 'length': NUMPHONENUMBERS}) 0605 self.__field_numbers.writetobuffer(buf) 0606 try: self.__field_EndOfRecord 0607 except: 0608 self.__field_EndOfRecord=UINT(**{'sizeinbytes': 1, 'constant': 0x78}) 0609 self.__field_EndOfRecord.writetobuffer(buf) 0610 self._bufferendoffset=buf.getcurrentoffset() 0611 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 0612 0613 0614 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 0615 'Reads this packet from the supplied buffer' 0616 self._bufferstartoffset=buf.getcurrentoffset() 0617 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 0618 self.__field_serial1=UINT(**{'sizeinbytes': 4}) 0619 self.__field_serial1.readfrombuffer(buf) 0620 self.__field_entrysize=UINT(**{'sizeinbytes': 2, 'constant': 0x026E}) 0621 self.__field_entrysize.readfrombuffer(buf) 0622 self.__field_entrynumber=UINT(**{'sizeinbytes': 4}) 0623 self.__field_entrynumber.readfrombuffer(buf) 0624 self.__field_name=USTRING(**{'sizeinbytes': 33, 'encoding': PHONE_ENCODING, 'raiseonunterminatedread': False}) 0625 self.__field_name.readfrombuffer(buf) 0626 self.__field_group=UINT(**{'sizeinbytes': 2}) 0627 self.__field_group.readfrombuffer(buf) 0628 self.__field_unknown2=UINT(**{'sizeinbytes': 2, 'default': 0}) 0629 self.__field_unknown2.readfrombuffer(buf) 0630 self.__field_secret=BOOL(**{'sizeinbytes': 1}) 0631 self.__field_secret.readfrombuffer(buf) 0632 self.__field_memo=USTRING(**{'encoding': PHONE_ENCODING, 'raiseonunterminatedread': False, 'sizeinbytes': MEMOLENGTH}) 0633 self.__field_memo.readfrombuffer(buf) 0634 self.__field_emails=LIST(**{'elementclass': _gen_p_lgpm325_139, 'length': NUMEMAILS}) 0635 self.__field_emails.readfrombuffer(buf) 0636 self.__field_url=USTRING(**{'sizeinbytes': 73, 'encoding': PHONE_ENCODING, 'raiseonunterminatedread': False}) 0637 self.__field_url.readfrombuffer(buf) 0638 self.__field_numberspeeds=LIST(**{'elementclass': _gen_p_lgpm325_142, 'length': NUMPHONENUMBERS}) 0639 self.__field_numberspeeds.readfrombuffer(buf) 0640 self.__field_numbertypes=LIST(**{'elementclass': _gen_p_lgpm325_144, 'length': NUMPHONENUMBERS}) 0641 self.__field_numbertypes.readfrombuffer(buf) 0642 self.__field_numbers=LIST(**{'elementclass': _gen_p_lgpm325_146, 'length': NUMPHONENUMBERS}) 0643 self.__field_numbers.readfrombuffer(buf) 0644 self.__field_EndOfRecord=UINT(**{'sizeinbytes': 1, 'constant': 0x78}) 0645 self.__field_EndOfRecord.readfrombuffer(buf) 0646 self._bufferendoffset=buf.getcurrentoffset() 0647 0648 0649 def __getfield_serial1(self): 0650 return self.__field_serial1.getvalue() 0651 0652 def __setfield_serial1(self, value): 0653 if isinstance(value,UINT): 0654 self.__field_serial1=value 0655 else: 0656 self.__field_serial1=UINT(value,**{'sizeinbytes': 4}) 0657 0658 def __delfield_serial1(self): del self.__field_serial1 0659 0660 serial1=property(__getfield_serial1, __setfield_serial1, __delfield_serial1, None) 0661 0662 def __getfield_entrysize(self): 0663 try: self.__field_entrysize 0664 except: 0665 self.__field_entrysize=UINT(**{'sizeinbytes': 2, 'constant': 0x026E}) 0666 return self.__field_entrysize.getvalue() 0667 0668 def __setfield_entrysize(self, value): 0669 if isinstance(value,UINT): 0670 self.__field_entrysize=value 0671 else: 0672 self.__field_entrysize=UINT(value,**{'sizeinbytes': 2, 'constant': 0x026E}) 0673 0674 def __delfield_entrysize(self): del self.__field_entrysize 0675 0676 entrysize=property(__getfield_entrysize, __setfield_entrysize, __delfield_entrysize, None) 0677 0678 def __getfield_entrynumber(self): 0679 return self.__field_entrynumber.getvalue() 0680 0681 def __setfield_entrynumber(self, value): 0682 if isinstance(value,UINT): 0683 self.__field_entrynumber=value 0684 else: 0685 self.__field_entrynumber=UINT(value,**{'sizeinbytes': 4}) 0686 0687 def __delfield_entrynumber(self): del self.__field_entrynumber 0688 0689 entrynumber=property(__getfield_entrynumber, __setfield_entrynumber, __delfield_entrynumber, None) 0690 0691 def __getfield_name(self): 0692 return self.__field_name.getvalue() 0693 0694 def __setfield_name(self, value): 0695 if isinstance(value,USTRING): 0696 self.__field_name=value 0697 else: 0698 self.__field_name=USTRING(value,**{'sizeinbytes': 33, 'encoding': PHONE_ENCODING, 'raiseonunterminatedread': False}) 0699 0700 def __delfield_name(self): del self.__field_name 0701 0702 name=property(__getfield_name, __setfield_name, __delfield_name, None) 0703 0704 def __getfield_group(self): 0705 return self.__field_group.getvalue() 0706 0707 def __setfield_group(self, value): 0708 if isinstance(value,UINT): 0709 self.__field_group=value 0710 else: 0711 self.__field_group=UINT(value,**{'sizeinbytes': 2}) 0712 0713 def __delfield_group(self): del self.__field_group 0714 0715 group=property(__getfield_group, __setfield_group, __delfield_group, None) 0716 0717 def __getfield_unknown2(self): 0718 try: self.__field_unknown2 0719 except: 0720 self.__field_unknown2=UINT(**{'sizeinbytes': 2, 'default': 0}) 0721 return self.__field_unknown2.getvalue() 0722 0723 def __setfield_unknown2(self, value): 0724 if isinstance(value,UINT): 0725 self.__field_unknown2=value 0726 else: 0727 self.__field_unknown2=UINT(value,**{'sizeinbytes': 2, 'default': 0}) 0728 0729 def __delfield_unknown2(self): del self.__field_unknown2 0730 0731 unknown2=property(__getfield_unknown2, __setfield_unknown2, __delfield_unknown2, None) 0732 0733 def __getfield_secret(self): 0734 return self.__field_secret.getvalue() 0735 0736 def __setfield_secret(self, value): 0737 if isinstance(value,BOOL): 0738 self.__field_secret=value 0739 else: 0740 self.__field_secret=BOOL(value,**{'sizeinbytes': 1}) 0741 0742 def __delfield_secret(self): del self.__field_secret 0743 0744 secret=property(__getfield_secret, __setfield_secret, __delfield_secret, None) 0745 0746 def __getfield_memo(self): 0747 return self.__field_memo.getvalue() 0748 0749 def __setfield_memo(self, value): 0750 if isinstance(value,USTRING): 0751 self.__field_memo=value 0752 else: 0753 self.__field_memo=USTRING(value,**{'encoding': PHONE_ENCODING, 'raiseonunterminatedread': False, 'sizeinbytes': MEMOLENGTH}) 0754 0755 def __delfield_memo(self): del self.__field_memo 0756 0757 memo=property(__getfield_memo, __setfield_memo, __delfield_memo, None) 0758 0759 def __getfield_emails(self): 0760 try: self.__field_emails 0761 except: 0762 self.__field_emails=LIST(**{'elementclass': _gen_p_lgpm325_139, 'length': NUMEMAILS}) 0763 return self.__field_emails.getvalue() 0764 0765 def __setfield_emails(self, value): 0766 if isinstance(value,LIST): 0767 self.__field_emails=value 0768 else: 0769 self.__field_emails=LIST(value,**{'elementclass': _gen_p_lgpm325_139, 'length': NUMEMAILS}) 0770 0771 def __delfield_emails(self): del self.__field_emails 0772 0773 emails=property(__getfield_emails, __setfield_emails, __delfield_emails, None) 0774 0775 def __getfield_url(self): 0776 return self.__field_url.getvalue() 0777 0778 def __setfield_url(self, value): 0779 if isinstance(value,USTRING): 0780 self.__field_url=value 0781 else: 0782 self.__field_url=USTRING(value,**{'sizeinbytes': 73, 'encoding': PHONE_ENCODING, 'raiseonunterminatedread': False}) 0783 0784 def __delfield_url(self): del self.__field_url 0785 0786 url=property(__getfield_url, __setfield_url, __delfield_url, None) 0787 0788 def __getfield_numberspeeds(self): 0789 try: self.__field_numberspeeds 0790 except: 0791 self.__field_numberspeeds=LIST(**{'elementclass': _gen_p_lgpm325_142, 'length': NUMPHONENUMBERS}) 0792 return self.__field_numberspeeds.getvalue() 0793 0794 def __setfield_numberspeeds(self, value): 0795 if isinstance(value,LIST): 0796 self.__field_numberspeeds=value 0797 else: 0798 self.__field_numberspeeds=LIST(value,**{'elementclass': _gen_p_lgpm325_142, 'length': NUMPHONENUMBERS}) 0799 0800 def __delfield_numberspeeds(self): del self.__field_numberspeeds 0801 0802 numberspeeds=property(__getfield_numberspeeds, __setfield_numberspeeds, __delfield_numberspeeds, None) 0803 0804 def __getfield_numbertypes(self): 0805 try: self.__field_numbertypes 0806 except: 0807 self.__field_numbertypes=LIST(**{'elementclass': _gen_p_lgpm325_144, 'length': NUMPHONENUMBERS}) 0808 return self.__field_numbertypes.getvalue() 0809 0810 def __setfield_numbertypes(self, value): 0811 if isinstance(value,LIST): 0812 self.__field_numbertypes=value 0813 else: 0814 self.__field_numbertypes=LIST(value,**{'elementclass': _gen_p_lgpm325_144, 'length': NUMPHONENUMBERS}) 0815 0816 def __delfield_numbertypes(self): del self.__field_numbertypes 0817 0818 numbertypes=property(__getfield_numbertypes, __setfield_numbertypes, __delfield_numbertypes, None) 0819 0820 def __getfield_numbers(self): 0821 try: self.__field_numbers 0822 except: 0823 self.__field_numbers=LIST(**{'elementclass': _gen_p_lgpm325_146, 'length': NUMPHONENUMBERS}) 0824 return self.__field_numbers.getvalue() 0825 0826 def __setfield_numbers(self, value): 0827 if isinstance(value,LIST): 0828 self.__field_numbers=value 0829 else: 0830 self.__field_numbers=LIST(value,**{'elementclass': _gen_p_lgpm325_146, 'length': NUMPHONENUMBERS}) 0831 0832 def __delfield_numbers(self): del self.__field_numbers 0833 0834 numbers=property(__getfield_numbers, __setfield_numbers, __delfield_numbers, None) 0835 0836 def __getfield_EndOfRecord(self): 0837 try: self.__field_EndOfRecord 0838 except: 0839 self.__field_EndOfRecord=UINT(**{'sizeinbytes': 1, 'constant': 0x78}) 0840 return self.__field_EndOfRecord.getvalue() 0841 0842 def __setfield_EndOfRecord(self, value): 0843 if isinstance(value,UINT): 0844 self.__field_EndOfRecord=value 0845 else: 0846 self.__field_EndOfRecord=UINT(value,**{'sizeinbytes': 1, 'constant': 0x78}) 0847 0848 def __delfield_EndOfRecord(self): del self.__field_EndOfRecord 0849 0850 EndOfRecord=property(__getfield_EndOfRecord, __setfield_EndOfRecord, __delfield_EndOfRecord, None) 0851 0852 def __getfield_ringtone(self): 0853 try: self.__field_ringtone 0854 except: 0855 self.__field_ringtone=UINT(**{'default': 0x600}) 0856 return self.__field_ringtone.getvalue() 0857 0858 def __setfield_ringtone(self, value): 0859 if isinstance(value,UINT): 0860 self.__field_ringtone=value 0861 else: 0862 self.__field_ringtone=UINT(value,**{'default': 0x600}) 0863 0864 def __delfield_ringtone(self): del self.__field_ringtone 0865 0866 ringtone=property(__getfield_ringtone, __setfield_ringtone, __delfield_ringtone, None) 0867 0868 def __getfield_wallpaper(self): 0869 try: self.__field_wallpaper 0870 except: 0871 self.__field_wallpaper=UINT(**{'default': 0x100}) 0872 return self.__field_wallpaper.getvalue() 0873 0874 def __setfield_wallpaper(self, value): 0875 if isinstance(value,UINT): 0876 self.__field_wallpaper=value 0877 else: 0878 self.__field_wallpaper=UINT(value,**{'default': 0x100}) 0879 0880 def __delfield_wallpaper(self): del self.__field_wallpaper 0881 0882 wallpaper=property(__getfield_wallpaper, __setfield_wallpaper, __delfield_wallpaper, None) 0883 0884 def iscontainer(self): 0885 return True 0886 0887 def containerelements(self): 0888 yield ('serial1', self.__field_serial1, None) 0889 yield ('entrysize', self.__field_entrysize, None) 0890 yield ('entrynumber', self.__field_entrynumber, None) 0891 yield ('name', self.__field_name, None) 0892 yield ('group', self.__field_group, None) 0893 yield ('unknown2', self.__field_unknown2, None) 0894 yield ('secret', self.__field_secret, None) 0895 yield ('memo', self.__field_memo, None) 0896 yield ('emails', self.__field_emails, None) 0897 yield ('url', self.__field_url, None) 0898 yield ('numberspeeds', self.__field_numberspeeds, None) 0899 yield ('numbertypes', self.__field_numbertypes, None) 0900 yield ('numbers', self.__field_numbers, None) 0901 yield ('EndOfRecord', self.__field_EndOfRecord, None) 0902 yield ('ringtone', self.__field_ringtone, None) 0903 yield ('wallpaper', self.__field_wallpaper, None) 0904 0905 0906 0907 0908 class _gen_p_lgpm325_139(BaseProtogenClass): 0909 'Anonymous inner class' 0910 __fields=['email'] 0911 0912 def __init__(self, *args, **kwargs): 0913 dict={} 0914 # What was supplied to this function 0915 dict.update(kwargs) 0916 # Parent constructor 0917 super(_gen_p_lgpm325_139,self).__init__(**dict) 0918 if self.__class__ is _gen_p_lgpm325_139: 0919 self._update(args,dict) 0920 0921 0922 def getfields(self): 0923 return self.__fields 0924 0925 0926 def _update(self, args, kwargs): 0927 super(_gen_p_lgpm325_139,self)._update(args,kwargs) 0928 keys=kwargs.keys() 0929 for key in keys: 0930 if key in self.__fields: 0931 setattr(self, key, kwargs[key]) 0932 del kwargs[key] 0933 # Were any unrecognized kwargs passed in? 0934 if __debug__: 0935 self._complainaboutunusedargs(_gen_p_lgpm325_139,kwargs) 0936 if len(args): 0937 dict2={'sizeinbytes': 73, 'encoding': PHONE_ENCODING, 'raiseonunterminatedread': False} 0938 dict2.update(kwargs) 0939 kwargs=dict2 0940 self.__field_email=USTRING(*args,**dict2) 0941 # Make all P fields that haven't already been constructed 0942 0943 0944 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 0945 'Writes this packet to the supplied buffer' 0946 self._bufferstartoffset=buf.getcurrentoffset() 0947 self.__field_email.writetobuffer(buf) 0948 self._bufferendoffset=buf.getcurrentoffset() 0949 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 0950 0951 0952 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 0953 'Reads this packet from the supplied buffer' 0954 self._bufferstartoffset=buf.getcurrentoffset() 0955 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 0956 self.__field_email=USTRING(**{'sizeinbytes': 73, 'encoding': PHONE_ENCODING, 'raiseonunterminatedread': False}) 0957 self.__field_email.readfrombuffer(buf) 0958 self._bufferendoffset=buf.getcurrentoffset() 0959 0960 0961 def __getfield_email(self): 0962 return self.__field_email.getvalue() 0963 0964 def __setfield_email(self, value): 0965 if isinstance(value,USTRING): 0966 self.__field_email=value 0967 else: 0968 self.__field_email=USTRING(value,**{'sizeinbytes': 73, 'encoding': PHONE_ENCODING, 'raiseonunterminatedread': False}) 0969 0970 def __delfield_email(self): del self.__field_email 0971 0972 email=property(__getfield_email, __setfield_email, __delfield_email, None) 0973 0974 def iscontainer(self): 0975 return True 0976 0977 def containerelements(self): 0978 yield ('email', self.__field_email, None) 0979 0980 0981 0982 0983 class _gen_p_lgpm325_142(BaseProtogenClass): 0984 'Anonymous inner class' 0985 __fields=['numberspeed'] 0986 0987 def __init__(self, *args, **kwargs): 0988 dict={} 0989 # What was supplied to this function 0990 dict.update(kwargs) 0991 # Parent constructor 0992 super(_gen_p_lgpm325_142,self).__init__(**dict) 0993 if self.__class__ is _gen_p_lgpm325_142: 0994 self._update(args,dict) 0995 0996 0997 def getfields(self): 0998 return self.__fields 0999 1000 1001 def _update(self, args, kwargs): 1002 super(_gen_p_lgpm325_142,self)._update(args,kwargs) 1003 keys=kwargs.keys() 1004 for key in keys: 1005 if key in self.__fields: 1006 setattr(self, key, kwargs[key]) 1007 del kwargs[key] 1008 # Were any unrecognized kwargs passed in? 1009 if __debug__: 1010 self._complainaboutunusedargs(_gen_p_lgpm325_142,kwargs) 1011 if len(args): 1012 dict2={'sizeinbytes': 1} 1013 dict2.update(kwargs) 1014 kwargs=dict2 1015 self.__field_numberspeed=UINT(*args,**dict2) 1016 # Make all P fields that haven't already been constructed 1017 1018 1019 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 1020 'Writes this packet to the supplied buffer' 1021 self._bufferstartoffset=buf.getcurrentoffset() 1022 self.__field_numberspeed.writetobuffer(buf) 1023 self._bufferendoffset=buf.getcurrentoffset() 1024 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 1025 1026 1027 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 1028 'Reads this packet from the supplied buffer' 1029 self._bufferstartoffset=buf.getcurrentoffset() 1030 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 1031 self.__field_numberspeed=UINT(**{'sizeinbytes': 1}) 1032 self.__field_numberspeed.readfrombuffer(buf) 1033 self._bufferendoffset=buf.getcurrentoffset() 1034 1035 1036 def __getfield_numberspeed(self): 1037 return self.__field_numberspeed.getvalue() 1038 1039 def __setfield_numberspeed(self, value): 1040 if isinstance(value,UINT): 1041 self.__field_numberspeed=value 1042 else: 1043 self.__field_numberspeed=UINT(value,**{'sizeinbytes': 1}) 1044 1045 def __delfield_numberspeed(self): del self.__field_numberspeed 1046 1047 numberspeed=property(__getfield_numberspeed, __setfield_numberspeed, __delfield_numberspeed, None) 1048 1049 def iscontainer(self): 1050 return True 1051 1052 def containerelements(self): 1053 yield ('numberspeed', self.__field_numberspeed, None) 1054 1055 1056 1057 1058 class _gen_p_lgpm325_144(BaseProtogenClass): 1059 'Anonymous inner class' 1060 __fields=['numbertype'] 1061 1062 def __init__(self, *args, **kwargs): 1063 dict={} 1064 # What was supplied to this function 1065 dict.update(kwargs) 1066 # Parent constructor 1067 super(_gen_p_lgpm325_144,self).__init__(**dict) 1068 if self.__class__ is _gen_p_lgpm325_144: 1069 self._update(args,dict) 1070 1071 1072 def getfields(self): 1073 return self.__fields 1074 1075 1076 def _update(self, args, kwargs): 1077 super(_gen_p_lgpm325_144,self)._update(args,kwargs) 1078 keys=kwargs.keys() 1079 for key in keys: 1080 if key in self.__fields: 1081 setattr(self, key, kwargs[key]) 1082 del kwargs[key] 1083 # Were any unrecognized kwargs passed in? 1084 if __debug__: 1085 self._complainaboutunusedargs(_gen_p_lgpm325_144,kwargs) 1086 if len(args): 1087 dict2={'sizeinbytes': 1} 1088 dict2.update(kwargs) 1089 kwargs=dict2 1090 self.__field_numbertype=UINT(*args,**dict2) 1091 # Make all P fields that haven't already been constructed 1092 1093 1094 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 1095 'Writes this packet to the supplied buffer' 1096 self._bufferstartoffset=buf.getcurrentoffset() 1097 self.__field_numbertype.writetobuffer(buf) 1098 self._bufferendoffset=buf.getcurrentoffset() 1099 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 1100 1101 1102 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 1103 'Reads this packet from the supplied buffer' 1104 self._bufferstartoffset=buf.getcurrentoffset() 1105 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 1106 self.__field_numbertype=UINT(**{'sizeinbytes': 1}) 1107 self.__field_numbertype.readfrombuffer(buf) 1108 self._bufferendoffset=buf.getcurrentoffset() 1109 1110 1111 def __getfield_numbertype(self): 1112 return self.__field_numbertype.getvalue() 1113 1114 def __setfield_numbertype(self, value): 1115 if isinstance(value,UINT): 1116 self.__field_numbertype=value 1117 else: 1118 self.__field_numbertype=UINT(value,**{'sizeinbytes': 1}) 1119 1120 def __delfield_numbertype(self): del self.__field_numbertype 1121 1122 numbertype=property(__getfield_numbertype, __setfield_numbertype, __delfield_numbertype, None) 1123 1124 def iscontainer(self): 1125 return True 1126 1127 def containerelements(self): 1128 yield ('numbertype', self.__field_numbertype, None) 1129 1130 1131 1132 1133 class _gen_p_lgpm325_146(BaseProtogenClass): 1134 'Anonymous inner class' 1135 __fields=['number'] 1136 1137 def __init__(self, *args, **kwargs): 1138 dict={} 1139 # What was supplied to this function 1140 dict.update(kwargs) 1141 # Parent constructor 1142 super(_gen_p_lgpm325_146,self).__init__(**dict) 1143 if self.__class__ is _gen_p_lgpm325_146: 1144 self._update(args,dict) 1145 1146 1147 def getfields(self): 1148 return self.__fields 1149 1150 1151 def _update(self, args, kwargs): 1152 super(_gen_p_lgpm325_146,self)._update(args,kwargs) 1153 keys=kwargs.keys() 1154 for key in keys: 1155 if key in self.__fields: 1156 setattr(self, key, kwargs[key]) 1157 del kwargs[key] 1158 # Were any unrecognized kwargs passed in? 1159 if __debug__: 1160 self._complainaboutunusedargs(_gen_p_lgpm325_146,kwargs) 1161 if len(args): 1162 dict2={'sizeinbytes': 49, 'raiseonunterminatedread': False} 1163 dict2.update(kwargs) 1164 kwargs=dict2 1165 self.__field_number=USTRING(*args,**dict2) 1166 # Make all P fields that haven't already been constructed 1167 1168 1169 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 1170 'Writes this packet to the supplied buffer' 1171 self._bufferstartoffset=buf.getcurrentoffset() 1172 self.__field_number.writetobuffer(buf) 1173 self._bufferendoffset=buf.getcurrentoffset() 1174 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 1175 1176 1177 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 1178 'Reads this packet from the supplied buffer' 1179 self._bufferstartoffset=buf.getcurrentoffset() 1180 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 1181 self.__field_number=USTRING(**{'sizeinbytes': 49, 'raiseonunterminatedread': False}) 1182 self.__field_number.readfrombuffer(buf) 1183 self._bufferendoffset=buf.getcurrentoffset() 1184 1185 1186 def __getfield_number(self): 1187 return self.__field_number.getvalue() 1188 1189 def __setfield_number(self, value): 1190 if isinstance(value,USTRING): 1191 self.__field_number=value 1192 else: 1193 self.__field_number=USTRING(value,**{'sizeinbytes': 49, 'raiseonunterminatedread': False}) 1194 1195 def __delfield_number(self): del self.__field_number 1196 1197 number=property(__getfield_number, __setfield_number, __delfield_number, None) 1198 1199 def iscontainer(self): 1200 return True 1201 1202 def containerelements(self): 1203 yield ('number', self.__field_number, None) 1204 1205 1206 1207 1208 class pbgroup(BaseProtogenClass): 1209 "A single group" 1210 __fields=['group_id', 'rectype', 'unknown2', 'unknown3', 'name'] 1211 1212 def __init__(self, *args, **kwargs): 1213 dict={} 1214 # What was supplied to this function 1215 dict.update(kwargs) 1216 # Parent constructor 1217 super(pbgroup,self).__init__(**dict) 1218 if self.__class__ is pbgroup: 1219 self._update(args,dict) 1220 1221 1222 def getfields(self): 1223 return self.__fields 1224 1225 1226 def _update(self, args, kwargs): 1227 super(pbgroup,self)._update(args,kwargs) 1228 keys=kwargs.keys() 1229 for key in keys: 1230 if key in self.__fields: 1231 setattr(self, key, kwargs[key]) 1232 del kwargs[key] 1233 # Were any unrecognized kwargs passed in? 1234 if __debug__: 1235 self._complainaboutunusedargs(pbgroup,kwargs) 1236 if len(args): raise TypeError('Unexpected arguments supplied: '+`args`) 1237 # Make all P fields that haven't already been constructed 1238 1239 1240 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 1241 'Writes this packet to the supplied buffer' 1242 self._bufferstartoffset=buf.getcurrentoffset() 1243 self.__field_group_id.writetobuffer(buf) 1244 self.__field_rectype.writetobuffer(buf) 1245 try: self.__field_unknown2 1246 except: 1247 self.__field_unknown2=UNKNOWN(**{'sizeinbytes': 3}) 1248 self.__field_unknown2.writetobuffer(buf) 1249 try: self.__field_unknown3 1250 except: 1251 self.__field_unknown3=UNKNOWN(**{'sizeinbytes': 3}) 1252 self.__field_unknown3.writetobuffer(buf) 1253 self.__field_name.writetobuffer(buf) 1254 self._bufferendoffset=buf.getcurrentoffset() 1255 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 1256 1257 1258 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 1259 'Reads this packet from the supplied buffer' 1260 self._bufferstartoffset=buf.getcurrentoffset() 1261 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 1262 self.__field_group_id=UINT(**{'sizeinbytes': 1}) 1263 self.__field_group_id.readfrombuffer(buf) 1264 self.__field_rectype=UINT(**{'sizeinbytes': 1}) 1265 self.__field_rectype.readfrombuffer(buf) 1266 self.__field_unknown2=UNKNOWN(**{'sizeinbytes': 3}) 1267 self.__field_unknown2.readfrombuffer(buf) 1268 self.__field_unknown3=UNKNOWN(**{'sizeinbytes': 3}) 1269 self.__field_unknown3.readfrombuffer(buf) 1270 self.__field_name=USTRING(**{'sizeinbytes': 33, 'encoding': PHONE_ENCODING, 'raiseonunterminatedread': False}) 1271 self.__field_name.readfrombuffer(buf) 1272 self._bufferendoffset=buf.getcurrentoffset() 1273 1274 1275 def __getfield_group_id(self): 1276 return self.__field_group_id.getvalue() 1277 1278 def __setfield_group_id(self, value): 1279 if isinstance(value,UINT): 1280 self.__field_group_id=value 1281 else: 1282 self.__field_group_id=UINT(value,**{'sizeinbytes': 1}) 1283 1284 def __delfield_group_id(self): del self.__field_group_id 1285 1286 group_id=property(__getfield_group_id, __setfield_group_id, __delfield_group_id, None) 1287 1288 def __getfield_rectype(self): 1289 return self.__field_rectype.getvalue() 1290 1291 def __setfield_rectype(self, value): 1292 if isinstance(value,UINT): 1293 self.__field_rectype=value 1294 else: 1295 self.__field_rectype=UINT(value,**{'sizeinbytes': 1}) 1296 1297 def __delfield_rectype(self): del self.__field_rectype 1298 1299 rectype=property(__getfield_rectype, __setfield_rectype, __delfield_rectype, None) 1300 1301 def __getfield_unknown2(self): 1302 try: self.__field_unknown2 1303 except: 1304 self.__field_unknown2=UNKNOWN(**{'sizeinbytes': 3}) 1305 return self.__field_unknown2.getvalue() 1306 1307 def __setfield_unknown2(self, value): 1308 if isinstance(value,UNKNOWN): 1309 self.__field_unknown2=value 1310 else: 1311 self.__field_unknown2=UNKNOWN(value,**{'sizeinbytes': 3}) 1312 1313 def __delfield_unknown2(self): del self.__field_unknown2 1314 1315 unknown2=property(__getfield_unknown2, __setfield_unknown2, __delfield_unknown2, None) 1316 1317 def __getfield_unknown3(self): 1318 try: self.__field_unknown3 1319 except: 1320 self.__field_unknown3=UNKNOWN(**{'sizeinbytes': 3}) 1321 return self.__field_unknown3.getvalue() 1322 1323 def __setfield_unknown3(self, value): 1324 if isinstance(value,UNKNOWN): 1325 self.__field_unknown3=value 1326 else: 1327 self.__field_unknown3=UNKNOWN(value,**{'sizeinbytes': 3}) 1328 1329 def __delfield_unknown3(self): del self.__field_unknown3 1330 1331 unknown3=property(__getfield_unknown3, __setfield_unknown3, __delfield_unknown3, None) 1332 1333 def __getfield_name(self): 1334 return self.__field_name.getvalue() 1335 1336 def __setfield_name(self, value): 1337 if isinstance(value,USTRING): 1338 self.__field_name=value 1339 else: 1340 self.__field_name=USTRING(value,**{'sizeinbytes': 33, 'encoding': PHONE_ENCODING, 'raiseonunterminatedread': False}) 1341 1342 def __delfield_name(self): del self.__field_name 1343 1344 name=property(__getfield_name, __setfield_name, __delfield_name, None) 1345 1346 def iscontainer(self): 1347 return True 1348 1349 def containerelements(self): 1350 yield ('group_id', self.__field_group_id, None) 1351 yield ('rectype', self.__field_rectype, None) 1352 yield ('unknown2', self.__field_unknown2, None) 1353 yield ('unknown3', self.__field_unknown3, None) 1354 yield ('name', self.__field_name, None) 1355 1356 1357 1358 1359 class pbgroups(BaseProtogenClass): 1360 "Phonebook groups" 1361 __fields=['groups'] 1362 1363 def __init__(self, *args, **kwargs): 1364 dict={} 1365 # What was supplied to this function 1366 dict.update(kwargs) 1367 # Parent constructor 1368 super(pbgroups,self).__init__(**dict) 1369 if self.__class__ is pbgroups: 1370 self._update(args,dict) 1371 1372 1373 def getfields(self): 1374 return self.__fields 1375 1376 1377 def _update(self, args, kwargs): 1378 super(pbgroups,self)._update(args,kwargs) 1379 keys=kwargs.keys() 1380 for key in keys: 1381 if key in self.__fields: 1382 setattr(self, key, kwargs[key]) 1383 del kwargs[key] 1384 # Were any unrecognized kwargs passed in? 1385 if __debug__: 1386 self._complainaboutunusedargs(pbgroups,kwargs) 1387 if len(args): 1388 dict2={'elementclass': pbgroup} 1389 dict2.update(kwargs) 1390 kwargs=dict2 1391 self.__field_groups=LIST(*args,**dict2) 1392 # Make all P fields that haven't already been constructed 1393 1394 1395 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 1396 'Writes this packet to the supplied buffer' 1397 self._bufferstartoffset=buf.getcurrentoffset() 1398 try: self.__field_groups 1399 except: 1400 self.__field_groups=LIST(**{'elementclass': pbgroup}) 1401 self.__field_groups.writetobuffer(buf) 1402 self._bufferendoffset=buf.getcurrentoffset() 1403 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 1404 1405 1406 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 1407 'Reads this packet from the supplied buffer' 1408 self._bufferstartoffset=buf.getcurrentoffset() 1409 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 1410 self.__field_groups=LIST(**{'elementclass': pbgroup}) 1411 self.__field_groups.readfrombuffer(buf) 1412 self._bufferendoffset=buf.getcurrentoffset() 1413 1414 1415 def __getfield_groups(self): 1416 try: self.__field_groups 1417 except: 1418 self.__field_groups=LIST(**{'elementclass': pbgroup}) 1419 return self.__field_groups.getvalue() 1420 1421 def __setfield_groups(self, value): 1422 if isinstance(value,LIST): 1423 self.__field_groups=value 1424 else: 1425 self.__field_groups=LIST(value,**{'elementclass': pbgroup}) 1426 1427 def __delfield_groups(self): del self.__field_groups 1428 1429 groups=property(__getfield_groups, __setfield_groups, __delfield_groups, None) 1430 1431 def iscontainer(self): 1432 return True 1433 1434 def containerelements(self): 1435 yield ('groups', self.__field_groups, None) 1436 1437 1438 1439 1440 class pb_contact_media_entry(BaseProtogenClass): 1441 """Reads the wallpaper/ringer info for each contact on the phone""" 1442 __fields=['index', 'dont_care1', 'ringer', 'name', 'dont_care2', 'wallpaper', 'dont_care3'] 1443 1444 def __init__(self, *args, **kwargs): 1445 dict={} 1446 # What was supplied to this function 1447 dict.update(kwargs) 1448 # Parent constructor 1449 super(pb_contact_media_entry,self).__init__(**dict) 1450 if self.__class__ is pb_contact_media_entry: 1451 self._update(args,dict) 1452 1453 1454 def getfields(self): 1455 return self.__fields 1456 1457 1458 def _update(self, args, kwargs): 1459 super(pb_contact_media_entry,self)._update(args,kwargs) 1460 keys=kwargs.keys() 1461 for key in keys: 1462 if key in self.__fields: 1463 setattr(self, key, kwargs[key]) 1464 del kwargs[key] 1465 # Were any unrecognized kwargs passed in? 1466 if __debug__: 1467 self._complainaboutunusedargs(pb_contact_media_entry,kwargs) 1468 if len(args): raise TypeError('Unexpected arguments supplied: '+`args`) 1469 # Make all P fields that haven't already been constructed 1470 1471 1472 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 1473 'Writes this packet to the supplied buffer' 1474 self._bufferstartoffset=buf.getcurrentoffset() 1475 self.__field_index.writetobuffer(buf) 1476 self.__field_dont_care1.writetobuffer(buf) 1477 self.__field_ringer.writetobuffer(buf) 1478 self.__field_name.writetobuffer(buf) 1479 self.__field_dont_care2.writetobuffer(buf) 1480 self.__field_wallpaper.writetobuffer(buf) 1481 self.__field_dont_care3.writetobuffer(buf) 1482 self._bufferendoffset=buf.getcurrentoffset() 1483 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 1484 1485 1486 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 1487 'Reads this packet from the supplied buffer' 1488 self._bufferstartoffset=buf.getcurrentoffset() 1489 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 1490 self.__field_index=UINT(**{'sizeinbytes': 2}) 1491 self.__field_index.readfrombuffer(buf) 1492 self.__field_dont_care1=DATA(**{'sizeinbytes': 18}) 1493 self.__field_dont_care1.readfrombuffer(buf) 1494 self.__field_ringer=UINT(**{'sizeinbytes': 2}) 1495 self.__field_ringer.readfrombuffer(buf) 1496 self.__field_name=USTRING(**{'sizeinbytes': 33}) 1497 self.__field_name.readfrombuffer(buf) 1498 self.__field_dont_care2=DATA(**{'sizeinbytes': 182}) 1499 self.__field_dont_care2.readfrombuffer(buf) 1500 self.__field_wallpaper=UINT(**{'sizeinbytes': 2}) 1501 self.__field_wallpaper.readfrombuffer(buf) 1502 self.__field_dont_care3=DATA(**{'sizeinbytes': 4}) 1503 self.__field_dont_care3.readfrombuffer(buf) 1504 self._bufferendoffset=buf.getcurrentoffset() 1505 1506 1507 def __getfield_index(self): 1508 return self.__field_index.getvalue() 1509 1510 def __setfield_index(self, value): 1511 if isinstance(value,UINT): 1512 self.__field_index=value 1513 else: 1514 self.__field_index=UINT(value,**{'sizeinbytes': 2}) 1515 1516 def __delfield_index(self): del self.__field_index 1517 1518 index=property(__getfield_index, __setfield_index, __delfield_index, None) 1519 1520 def __getfield_dont_care1(self): 1521 return self.__field_dont_care1.getvalue() 1522 1523 def __setfield_dont_care1(self, value): 1524 if isinstance(value,DATA): 1525 self.__field_dont_care1=value 1526 else: 1527 self.__field_dont_care1=DATA(value,**{'sizeinbytes': 18}) 1528 1529 def __delfield_dont_care1(self): del self.__field_dont_care1 1530 1531 dont_care1=property(__getfield_dont_care1, __setfield_dont_care1, __delfield_dont_care1, None) 1532 1533 def __getfield_ringer(self): 1534 return self.__field_ringer.getvalue() 1535 1536 def __setfield_ringer(self, value): 1537 if isinstance(value,UINT): 1538 self.__field_ringer=value 1539 else: 1540 self.__field_ringer=UINT(value,**{'sizeinbytes': 2}) 1541 1542 def __delfield_ringer(self): del self.__field_ringer 1543 1544 ringer=property(__getfield_ringer, __setfield_ringer, __delfield_ringer, None) 1545 1546 def __getfield_name(self): 1547 return self.__field_name.getvalue() 1548 1549 def __setfield_name(self, value): 1550 if isinstance(value,USTRING): 1551 self.__field_name=value 1552 else: 1553 self.__field_name=USTRING(value,**{'sizeinbytes': 33}) 1554 1555 def __delfield_name(self): del self.__field_name 1556 1557 name=property(__getfield_name, __setfield_name, __delfield_name, None) 1558 1559 def __getfield_dont_care2(self): 1560 return self.__field_dont_care2.getvalue() 1561 1562 def __setfield_dont_care2(self, value): 1563 if isinstance(value,DATA): 1564 self.__field_dont_care2=value 1565 else: 1566 self.__field_dont_care2=DATA(value,**{'sizeinbytes': 182}) 1567 1568 def __delfield_dont_care2(self): del self.__field_dont_care2 1569 1570 dont_care2=property(__getfield_dont_care2, __setfield_dont_care2, __delfield_dont_care2, None) 1571 1572 def __getfield_wallpaper(self): 1573 return self.__field_wallpaper.getvalue() 1574 1575 def __setfield_wallpaper(self, value): 1576 if isinstance(value,UINT): 1577 self.__field_wallpaper=value 1578 else: 1579 self.__field_wallpaper=UINT(value,**{'sizeinbytes': 2}) 1580 1581 def __delfield_wallpaper(self): del self.__field_wallpaper 1582 1583 wallpaper=property(__getfield_wallpaper, __setfield_wallpaper, __delfield_wallpaper, None) 1584 1585 def __getfield_dont_care3(self): 1586 return self.__field_dont_care3.getvalue() 1587 1588 def __setfield_dont_care3(self, value): 1589 if isinstance(value,DATA): 1590 self.__field_dont_care3=value 1591 else: 1592 self.__field_dont_care3=DATA(value,**{'sizeinbytes': 4}) 1593 1594 def __delfield_dont_care3(self): del self.__field_dont_care3 1595 1596 dont_care3=property(__getfield_dont_care3, __setfield_dont_care3, __delfield_dont_care3, None) 1597 1598 def iscontainer(self): 1599 return True 1600 1601 def containerelements(self): 1602 yield ('index', self.__field_index, None) 1603 yield ('dont_care1', self.__field_dont_care1, None) 1604 yield ('ringer', self.__field_ringer, None) 1605 yield ('name', self.__field_name, None) 1606 yield ('dont_care2', self.__field_dont_care2, None) 1607 yield ('wallpaper', self.__field_wallpaper, None) 1608 yield ('dont_care3', self.__field_dont_care3, None) 1609 1610 1611 1612 1613 class pb_contact_media_file(BaseProtogenClass): 1614 __fields=['contacts'] 1615 1616 def __init__(self, *args, **kwargs): 1617 dict={} 1618 # What was supplied to this function 1619 dict.update(kwargs) 1620 # Parent constructor 1621 super(pb_contact_media_file,self).__init__(**dict) 1622 if self.__class__ is pb_contact_media_file: 1623 self._update(args,dict) 1624 1625 1626 def getfields(self): 1627 return self.__fields 1628 1629 1630 def _update(self, args, kwargs): 1631 super(pb_contact_media_file,self)._update(args,kwargs) 1632 keys=kwargs.keys() 1633 for key in keys: 1634 if key in self.__fields: 1635 setattr(self, key, kwargs[key]) 1636 del kwargs[key] 1637 # Were any unrecognized kwargs passed in? 1638 if __debug__: 1639 self._complainaboutunusedargs(pb_contact_media_file,kwargs) 1640 if len(args): 1641 dict2={'elementclass': pb_contact_media_entry} 1642 dict2.update(kwargs) 1643 kwargs=dict2 1644 self.__field_contacts=LIST(*args,**dict2) 1645 # Make all P fields that haven't already been constructed 1646 1647 1648 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 1649 'Writes this packet to the supplied buffer' 1650 self._bufferstartoffset=buf.getcurrentoffset() 1651 try: self.__field_contacts 1652 except: 1653 self.__field_contacts=LIST(**{'elementclass': pb_contact_media_entry}) 1654 self.__field_contacts.writetobuffer(buf) 1655 self._bufferendoffset=buf.getcurrentoffset() 1656 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 1657 1658 1659 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 1660 'Reads this packet from the supplied buffer' 1661 self._bufferstartoffset=buf.getcurrentoffset() 1662 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 1663 self.__field_contacts=LIST(**{'elementclass': pb_contact_media_entry}) 1664 self.__field_contacts.readfrombuffer(buf) 1665 self._bufferendoffset=buf.getcurrentoffset() 1666 1667 1668 def __getfield_contacts(self): 1669 try: self.__field_contacts 1670 except: 1671 self.__field_contacts=LIST(**{'elementclass': pb_contact_media_entry}) 1672 return self.__field_contacts.getvalue() 1673 1674 def __setfield_contacts(self, value): 1675 if isinstance(value,LIST): 1676 self.__field_contacts=value 1677 else: 1678 self.__field_contacts=LIST(value,**{'elementclass': pb_contact_media_entry}) 1679 1680 def __delfield_contacts(self): del self.__field_contacts 1681 1682 contacts=property(__getfield_contacts, __setfield_contacts, __delfield_contacts, None) 1683 1684 def iscontainer(self): 1685 return True 1686 1687 def containerelements(self): 1688 yield ('contacts', self.__field_contacts, None) 1689 1690 1691 1692 1693 class scheduleexception(BaseProtogenClass): 1694 __fields=['pos', 'day', 'month', 'year'] 1695 1696 def __init__(self, *args, **kwargs): 1697 dict={} 1698 # What was supplied to this function 1699 dict.update(kwargs) 1700 # Parent constructor 1701 super(scheduleexception,self).__init__(**dict) 1702 if self.__class__ is scheduleexception: 1703 self._update(args,dict) 1704 1705 1706 def getfields(self): 1707 return self.__fields 1708 1709 1710 def _update(self, args, kwargs): 1711 super(scheduleexception,self)._update(args,kwargs) 1712 keys=kwargs.keys() 1713 for key in keys: 1714 if key in self.__fields: 1715 setattr(self, key, kwargs[key]) 1716 del kwargs[key] 1717 # Were any unrecognized kwargs passed in? 1718 if __debug__: 1719 self._complainaboutunusedargs(scheduleexception,kwargs) 1720 if len(args): raise TypeError('Unexpected arguments supplied: '+`args`) 1721 # Make all P fields that haven't already been constructed 1722 1723 1724 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 1725 'Writes this packet to the supplied buffer' 1726 self._bufferstartoffset=buf.getcurrentoffset() 1727 self.__field_pos.writetobuffer(buf) 1728 self.__field_day.writetobuffer(buf) 1729 self.__field_month.writetobuffer(buf) 1730 self.__field_year.writetobuffer(buf) 1731 self._bufferendoffset=buf.getcurrentoffset() 1732 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 1733 1734 1735 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 1736 'Reads this packet from the supplied buffer' 1737 self._bufferstartoffset=buf.getcurrentoffset() 1738 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 1739 self.__field_pos=UINT(**{'sizeinbytes': 4}) 1740 self.__field_pos.readfrombuffer(buf) 1741 self.__field_day=UINT(**{'sizeinbytes': 1}) 1742 self.__field_day.readfrombuffer(buf) 1743 self.__field_month=UINT(**{'sizeinbytes': 1}) 1744 self.__field_month.readfrombuffer(buf) 1745 self.__field_year=UINT(**{'sizeinbytes': 2}) 1746 self.__field_year.readfrombuffer(buf) 1747 self._bufferendoffset=buf.getcurrentoffset() 1748 1749 1750 def __getfield_pos(self): 1751 return self.__field_pos.getvalue() 1752 1753 def __setfield_pos(self, value): 1754 if isinstance(value,UINT): 1755 self.__field_pos=value 1756 else: 1757 self.__field_pos=UINT(value,**{'sizeinbytes': 4}) 1758 1759 def __delfield_pos(self): del self.__field_pos 1760 1761 pos=property(__getfield_pos, __setfield_pos, __delfield_pos, "Refers to event id (position in schedule file) that this suppresses") 1762 1763 def __getfield_day(self): 1764 return self.__field_day.getvalue() 1765 1766 def __setfield_day(self, value): 1767 if isinstance(value,UINT): 1768 self.__field_day=value 1769 else: 1770 self.__field_day=UINT(value,**{'sizeinbytes': 1}) 1771 1772 def __delfield_day(self): del self.__field_day 1773 1774 day=property(__getfield_day, __setfield_day, __delfield_day, None) 1775 1776 def __getfield_month(self): 1777 return self.__field_month.getvalue() 1778 1779 def __setfield_month(self, value): 1780 if isinstance(value,UINT): 1781 self.__field_month=value 1782 else: 1783 self.__field_month=UINT(value,**{'sizeinbytes': 1}) 1784 1785 def __delfield_month(self): del self.__field_month 1786 1787 month=property(__getfield_month, __setfield_month, __delfield_month, None) 1788 1789 def __getfield_year(self): 1790 return self.__field_year.getvalue() 1791 1792 def __setfield_year(self, value): 1793 if isinstance(value,UINT): 1794 self.__field_year=value 1795 else: 1796 self.__field_year=UINT(value,**{'sizeinbytes': 2}) 1797 1798 def __delfield_year(self): del self.__field_year 1799 1800 year=property(__getfield_year, __setfield_year, __delfield_year, None) 1801 1802 def iscontainer(self): 1803 return True 1804 1805 def containerelements(self): 1806 yield ('pos', self.__field_pos, "Refers to event id (position in schedule file) that this suppresses") 1807 yield ('day', self.__field_day, None) 1808 yield ('month', self.__field_month, None) 1809 yield ('year', self.__field_year, None) 1810 1811 1812 1813 1814 class scheduleexceptionfile(BaseProtogenClass): 1815 __fields=['items'] 1816 1817 def __init__(self, *args, **kwargs): 1818 dict={} 1819 # What was supplied to this function 1820 dict.update(kwargs) 1821 # Parent constructor 1822 super(scheduleexceptionfile,self).__init__(**dict) 1823 if self.__class__ is scheduleexceptionfile: 1824 self._update(args,dict) 1825 1826 1827 def getfields(self): 1828 return self.__fields 1829 1830 1831 def _update(self, args, kwargs): 1832 super(scheduleexceptionfile,self)._update(args,kwargs) 1833 keys=kwargs.keys() 1834 for key in keys: 1835 if key in self.__fields: 1836 setattr(self, key, kwargs[key]) 1837 del kwargs[key] 1838 # Were any unrecognized kwargs passed in? 1839 if __debug__: 1840 self._complainaboutunusedargs(scheduleexceptionfile,kwargs) 1841 if len(args): 1842 dict2={'elementclass': scheduleexception} 1843 dict2.update(kwargs) 1844 kwargs=dict2 1845 self.__field_items=LIST(*args,**dict2) 1846 # Make all P fields that haven't already been constructed 1847 1848 1849 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 1850 'Writes this packet to the supplied buffer' 1851 self._bufferstartoffset=buf.getcurrentoffset() 1852 try: self.__field_items 1853 except: 1854 self.__field_items=LIST(**{'elementclass': scheduleexception}) 1855 self.__field_items.writetobuffer(buf) 1856 self._bufferendoffset=buf.getcurrentoffset() 1857 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 1858 1859 1860 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 1861 'Reads this packet from the supplied buffer' 1862 self._bufferstartoffset=buf.getcurrentoffset() 1863 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 1864 self.__field_items=LIST(**{'elementclass': scheduleexception}) 1865 self.__field_items.readfrombuffer(buf) 1866 self._bufferendoffset=buf.getcurrentoffset() 1867 1868 1869 def __getfield_items(self): 1870 try: self.__field_items 1871 except: 1872 self.__field_items=LIST(**{'elementclass': scheduleexception}) 1873 return self.__field_items.getvalue() 1874 1875 def __setfield_items(self, value): 1876 if isinstance(value,LIST): 1877 self.__field_items=value 1878 else: 1879 self.__field_items=LIST(value,**{'elementclass': scheduleexception}) 1880 1881 def __delfield_items(self): del self.__field_items 1882 1883 items=property(__getfield_items, __setfield_items, __delfield_items, None) 1884 1885 def iscontainer(self): 1886 return True 1887 1888 def containerelements(self): 1889 yield ('items', self.__field_items, None) 1890 1891 1892 1893 1894 class scheduleevent(BaseProtogenClass): 1895 __fields=['packet_size', 'pos', 'start', 'end', 'repeat', 'daybitmap', 'pad2', 'alarmminutes', 'alarmhours', 'alarmtype', 'snoozedelay', 'ringtone', 'pad3', 'description'] 1896 1897 def __init__(self, *args, **kwargs): 1898 dict={} 1899 # What was supplied to this function 1900 dict.update(kwargs) 1901 # Parent constructor 1902 super(scheduleevent,self).__init__(**dict) 1903 if self.__class__ is scheduleevent: 1904 self._update(args,dict) 1905 1906 1907 def getfields(self): 1908 return self.__fields 1909 1910 1911 def _update(self, args, kwargs): 1912 super(scheduleevent,self)._update(args,kwargs) 1913 keys=kwargs.keys() 1914 for key in keys: 1915 if key in self.__fields: 1916 setattr(self, key, kwargs[key]) 1917 del kwargs[key] 1918 # Were any unrecognized kwargs passed in? 1919 if __debug__: 1920 self._complainaboutunusedargs(scheduleevent,kwargs) 1921 if len(args): raise TypeError('Unexpected arguments supplied: '+`args`) 1922 # Make all P fields that haven't already been constructed 1923 try: self.__field_packet_size 1924 except: 1925 self.__field_packet_size=UINT(**{ 'constant': 64 }) 1926 1927 1928 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 1929 'Writes this packet to the supplied buffer' 1930 self._bufferstartoffset=buf.getcurrentoffset() 1931 self.__field_pos.writetobuffer(buf) 1932 self.__field_start.writetobuffer(buf) 1933 self.__field_end.writetobuffer(buf) 1934 self.__field_repeat.writetobuffer(buf) 1935 self.__field_daybitmap.writetobuffer(buf) 1936 try: self.__field_pad2 1937 except: 1938 self.__field_pad2=UINT(**{'sizeinbytes': 1, 'default': 0 }) 1939 self.__field_pad2.writetobuffer(buf) 1940 self.__field_alarmminutes.writetobuffer(buf) 1941 self.__field_alarmhours.writetobuffer(buf) 1942 self.__field_alarmtype.writetobuffer(buf) 1943 try: self.__field_snoozedelay 1944 except: 1945 self.__field_snoozedelay=UINT(**{'sizeinbytes': 1, 'default': 0 }) 1946 self.__field_snoozedelay.writetobuffer(buf) 1947 self.__field_ringtone.writetobuffer(buf) 1948 try: self.__field_pad3 1949 except: 1950 self.__field_pad3=UINT(**{'sizeinbytes': 1, 'default': 0 }) 1951 self.__field_pad3.writetobuffer(buf) 1952 self.__field_description.writetobuffer(buf) 1953 self._bufferendoffset=buf.getcurrentoffset() 1954 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 1955 1956 1957 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 1958 'Reads this packet from the supplied buffer' 1959 self._bufferstartoffset=buf.getcurrentoffset() 1960 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 1961 self.__field_pos=UINT(**{'sizeinbytes': 4}) 1962 self.__field_pos.readfrombuffer(buf) 1963 self.__field_start=LGCALDATE(**{'sizeinbytes': 4}) 1964 self.__field_start.readfrombuffer(buf) 1965 self.__field_end=LGCALDATE(**{'sizeinbytes': 4}) 1966 self.__field_end.readfrombuffer(buf) 1967 self.__field_repeat=UINT(**{'sizeinbytes': 1}) 1968 self.__field_repeat.readfrombuffer(buf) 1969 self.__field_daybitmap=UINT(**{'sizeinbytes': 2}) 1970 self.__field_daybitmap.readfrombuffer(buf) 1971 self.__field_pad2=UINT(**{'sizeinbytes': 1, 'default': 0 }) 1972 self.__field_pad2.readfrombuffer(buf) 1973 self.__field_alarmminutes=UINT(**{'sizeinbytes': 1}) 1974 self.__field_alarmminutes.readfrombuffer(buf) 1975 self.__field_alarmhours=UINT(**{'sizeinbytes': 1}) 1976 self.__field_alarmhours.readfrombuffer(buf) 1977 self.__field_alarmtype=UINT(**{'sizeinbytes': 1}) 1978 self.__field_alarmtype.readfrombuffer(buf) 1979 self.__field_snoozedelay=UINT(**{'sizeinbytes': 1, 'default': 0 }) 1980 self.__field_snoozedelay.readfrombuffer(buf) 1981 self.__field_ringtone=UINT(**{'sizeinbytes': 1}) 1982 self.__field_ringtone.readfrombuffer(buf) 1983 self.__field_pad3=UINT(**{'sizeinbytes': 1, 'default': 0 }) 1984 self.__field_pad3.readfrombuffer(buf) 1985 self.__field_description=USTRING(**{'sizeinbytes': 42, 'encoding': PHONE_ENCODING, 'raiseontruncate': False, 'raiseonunterminatedread': False }) 1986 self.__field_description.readfrombuffer(buf) 1987 self._bufferendoffset=buf.getcurrentoffset() 1988 1989 1990 def __getfield_packet_size(self): 1991 return self.__field_packet_size.getvalue() 1992 1993 def __setfield_packet_size(self, value): 1994 if isinstance(value,UINT): 1995 self.__field_packet_size=value 1996 else: 1997 self.__field_packet_size=UINT(value,**{ 'constant': 64 }) 1998 1999 def __delfield_packet_size(self): del self.__field_packet_size 2000 2001 packet_size=property(__getfield_packet_size, __setfield_packet_size, __delfield_packet_size, "Faster than packetsize()") 2002 2003 def __getfield_pos(self): 2004 return self.__field_pos.getvalue() 2005 2006 def __setfield_pos(self, value): 2007 if isinstance(value,UINT): 2008 self.__field_pos=value 2009 else: 2010 self.__field_pos=UINT(value,**{'sizeinbytes': 4}) 2011 2012 def __delfield_pos(self): del self.__field_pos 2013 2014 pos=property(__getfield_pos, __setfield_pos, __delfield_pos, "position within file, used as an event id") 2015 2016 def __getfield_start(self): 2017 return self.__field_start.getvalue() 2018 2019 def __setfield_start(self, value): 2020 if isinstance(value,LGCALDATE): 2021 self.__field_start=value 2022 else: 2023 self.__field_start=LGCALDATE(value,**{'sizeinbytes': 4}) 2024 2025 def __delfield_start(self): del self.__field_start 2026 2027 start=property(__getfield_start, __setfield_start, __delfield_start, None) 2028 2029 def __getfield_end(self): 2030 return self.__field_end.getvalue() 2031 2032 def __setfield_end(self, value): 2033 if isinstance(value,LGCALDATE): 2034 self.__field_end=value 2035 else: 2036 self.__field_end=LGCALDATE(value,**{'sizeinbytes': 4}) 2037 2038 def __delfield_end(self): del self.__field_end 2039 2040 end=property(__getfield_end, __setfield_end, __delfield_end, None) 2041 2042 def __getfield_repeat(self): 2043 return self.__field_repeat.getvalue() 2044 2045 def __setfield_repeat(self, value): 2046 if isinstance(value,UINT): 2047 self.__field_repeat=value 2048 else: 2049 self.__field_repeat=UINT(value,**{'sizeinbytes': 1}) 2050 2051 def __delfield_repeat(self): del self.__field_repeat 2052 2053 repeat=property(__getfield_repeat, __setfield_repeat, __delfield_repeat, None) 2054 2055 def __getfield_daybitmap(self): 2056 return self.__field_daybitmap.getvalue() 2057 2058 def __setfield_daybitmap(self, value): 2059 if isinstance(value,UINT): 2060 self.__field_daybitmap=value 2061 else: 2062 self.__field_daybitmap=UINT(value,**{'sizeinbytes': 2}) 2063 2064 def __delfield_daybitmap(self): del self.__field_daybitmap 2065 2066 daybitmap=property(__getfield_daybitmap, __setfield_daybitmap, __delfield_daybitmap, "which days a weekly repeat event happens on") 2067 2068 def __getfield_pad2(self): 2069 try: self.__field_pad2 2070 except: 2071 self.__field_pad2=UINT(**{'sizeinbytes': 1, 'default': 0 }) 2072 return self.__field_pad2.getvalue() 2073 2074 def __setfield_pad2(self, value): 2075 if isinstance(value,UINT): 2076 self.__field_pad2=value 2077 else: 2078 self.__field_pad2=UINT(value,**{'sizeinbytes': 1, 'default': 0 }) 2079 2080 def __delfield_pad2(self): del self.__field_pad2 2081 2082 pad2=property(__getfield_pad2, __setfield_pad2, __delfield_pad2, None) 2083 2084 def __getfield_alarmminutes(self): 2085 return self.__field_alarmminutes.getvalue() 2086 2087 def __setfield_alarmminutes(self, value): 2088 if isinstance(value,UINT): 2089 self.__field_alarmminutes=value 2090 else: 2091 self.__field_alarmminutes=UINT(value,**{'sizeinbytes': 1}) 2092 2093 def __delfield_alarmminutes(self): del self.__field_alarmminutes 2094 2095 alarmminutes=property(__getfield_alarmminutes, __setfield_alarmminutes, __delfield_alarmminutes, "a value of 100 indicates not set") 2096 2097 def __getfield_alarmhours(self): 2098 return self.__field_alarmhours.getvalue() 2099 2100 def __setfield_alarmhours(self, value): 2101 if isinstance(value,UINT): 2102 self.__field_alarmhours=value 2103 else: 2104 self.__field_alarmhours=UINT(value,**{'sizeinbytes': 1}) 2105 2106 def __delfield_alarmhours(self): del self.__field_alarmhours 2107 2108 alarmhours=property(__getfield_alarmhours, __setfield_alarmhours, __delfield_alarmhours, "a value of 100 indicates not set") 2109 2110 def __getfield_alarmtype(self): 2111 return self.__field_alarmtype.getvalue() 2112 2113 def __setfield_alarmtype(self, value): 2114 if isinstance(value,UINT): 2115 self.__field_alarmtype=value 2116 else: 2117 self.__field_alarmtype=UINT(value,**{'sizeinbytes': 1}) 2118 2119 def __delfield_alarmtype(self): del self.__field_alarmtype 2120 2121 alarmtype=property(__getfield_alarmtype, __setfield_alarmtype, __delfield_alarmtype, "preset alarm reminder type") 2122 2123 def __getfield_snoozedelay(self): 2124 try: self.__field_snoozedelay 2125 except: 2126 self.__field_snoozedelay=UINT(**{'sizeinbytes': 1, 'default': 0 }) 2127 return self.__field_snoozedelay.getvalue() 2128 2129 def __setfield_snoozedelay(self, value): 2130 if isinstance(value,UINT): 2131 self.__field_snoozedelay=value 2132 else: 2133 self.__field_snoozedelay=UINT(value,**{'sizeinbytes': 1, 'default': 0 }) 2134 2135 def __delfield_snoozedelay(self): del self.__field_snoozedelay 2136 2137 snoozedelay=property(__getfield_snoozedelay, __setfield_snoozedelay, __delfield_snoozedelay, "in minutes, not for this phone") 2138 2139 def __getfield_ringtone(self): 2140 return self.__field_ringtone.getvalue() 2141 2142 def __setfield_ringtone(self, value): 2143 if isinstance(value,UINT): 2144 self.__field_ringtone=value 2145 else: 2146 self.__field_ringtone=UINT(value,**{'sizeinbytes': 1}) 2147 2148 def __delfield_ringtone(self): del self.__field_ringtone 2149 2150 ringtone=property(__getfield_ringtone, __setfield_ringtone, __delfield_ringtone, None) 2151 2152 def __getfield_pad3(self): 2153 try: self.__field_pad3 2154 except: 2155 self.__field_pad3=UINT(**{'sizeinbytes': 1, 'default': 0 }) 2156 return self.__field_pad3.getvalue() 2157 2158 def __setfield_pad3(self, value): 2159 if isinstance(value,UINT): 2160 self.__field_pad3=value 2161 else: 2162 self.__field_pad3=UINT(value,**{'sizeinbytes': 1, 'default': 0 }) 2163 2164 def __delfield_pad3(self): del self.__field_pad3 2165 2166 pad3=property(__getfield_pad3, __setfield_pad3, __delfield_pad3, None) 2167 2168 def __getfield_description(self): 2169 return self.__field_description.getvalue() 2170 2171 def __setfield_description(self, value): 2172 if isinstance(value,USTRING): 2173 self.__field_description=value 2174 else: 2175 self.__field_description=USTRING(value,**{'sizeinbytes': 42, 'encoding': PHONE_ENCODING, 'raiseontruncate': False, 'raiseonunterminatedread': False }) 2176 2177 def __delfield_description(self): del self.__field_description 2178 2179 description=property(__getfield_description, __setfield_description, __delfield_description, None) 2180 2181 def iscontainer(self): 2182 return True 2183 2184 def containerelements(self): 2185 yield ('packet_size', self.__field_packet_size, "Faster than packetsize()") 2186 yield ('pos', self.__field_pos, "position within file, used as an event id") 2187 yield ('start', self.__field_start, None) 2188 yield ('end', self.__field_end, None) 2189 yield ('repeat', self.__field_repeat, None) 2190 yield ('daybitmap', self.__field_daybitmap, "which days a weekly repeat event happens on") 2191 yield ('pad2', self.__field_pad2, None) 2192 yield ('alarmminutes', self.__field_alarmminutes, "a value of 100 indicates not set") 2193 yield ('alarmhours', self.__field_alarmhours, "a value of 100 indicates not set") 2194 yield ('alarmtype', self.__field_alarmtype, "preset alarm reminder type") 2195 yield ('snoozedelay', self.__field_snoozedelay, "in minutes, not for this phone") 2196 yield ('ringtone', self.__field_ringtone, None) 2197 yield ('pad3', self.__field_pad3, None) 2198 yield ('description', self.__field_description, None) 2199 2200 2201 2202 2203 class schedulefile(BaseProtogenClass): 2204 __fields=['numactiveitems', 'events'] 2205 2206 def __init__(self, *args, **kwargs): 2207 dict={} 2208 # What was supplied to this function 2209 dict.update(kwargs) 2210 # Parent constructor 2211 super(schedulefile,self).__init__(**dict) 2212 if self.__class__ is schedulefile: 2213 self._update(args,dict) 2214 2215 2216 def getfields(self): 2217 return self.__fields 2218 2219 2220 def _update(self, args, kwargs): 2221 super(schedulefile,self)._update(args,kwargs) 2222 keys=kwargs.keys() 2223 for key in keys: 2224 if key in self.__fields: 2225 setattr(self, key, kwargs[key]) 2226 del kwargs[key] 2227 # Were any unrecognized kwargs passed in? 2228 if __debug__: 2229 self._complainaboutunusedargs(schedulefile,kwargs) 2230 if len(args): raise TypeError('Unexpected arguments supplied: '+`args`) 2231 # Make all P fields that haven't already been constructed 2232 2233 2234 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 2235 'Writes this packet to the supplied buffer' 2236 self._bufferstartoffset=buf.getcurrentoffset() 2237 self.__field_numactiveitems.writetobuffer(buf) 2238 try: self.__field_events 2239 except: 2240 self.__field_events=LIST(**{'elementclass': scheduleevent}) 2241 self.__field_events.writetobuffer(buf) 2242 self._bufferendoffset=buf.getcurrentoffset() 2243 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 2244 2245 2246 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 2247 'Reads this packet from the supplied buffer' 2248 self._bufferstartoffset=buf.getcurrentoffset() 2249 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 2250 self.__field_numactiveitems=UINT(**{'sizeinbytes': 2}) 2251 self.__field_numactiveitems.readfrombuffer(buf) 2252 self.__field_events=LIST(**{'elementclass': scheduleevent}) 2253 self.__field_events.readfrombuffer(buf) 2254 self._bufferendoffset=buf.getcurrentoffset() 2255 2256 2257 def __getfield_numactiveitems(self): 2258 return self.__field_numactiveitems.getvalue() 2259 2260 def __setfield_numactiveitems(self, value): 2261 if isinstance(value,UINT): 2262 self.__field_numactiveitems=value 2263 else: 2264 self.__field_numactiveitems=UINT(value,**{'sizeinbytes': 2}) 2265 2266 def __delfield_numactiveitems(self): del self.__field_numactiveitems 2267 2268 numactiveitems=property(__getfield_numactiveitems, __setfield_numactiveitems, __delfield_numactiveitems, None) 2269 2270 def __getfield_events(self): 2271 try: self.__field_events 2272 except: 2273 self.__field_events=LIST(**{'elementclass': scheduleevent}) 2274 return self.__field_events.getvalue() 2275 2276 def __setfield_events(self, value): 2277 if isinstance(value,LIST): 2278 self.__field_events=value 2279 else: 2280 self.__field_events=LIST(value,**{'elementclass': scheduleevent}) 2281 2282 def __delfield_events(self): del self.__field_events 2283 2284 events=property(__getfield_events, __setfield_events, __delfield_events, None) 2285 2286 def iscontainer(self): 2287 return True 2288 2289 def containerelements(self): 2290 yield ('numactiveitems', self.__field_numactiveitems, None) 2291 yield ('events', self.__field_events, None) 2292 2293 2294 2295 2296 class call(BaseProtogenClass): 2297 __fields=['GPStime', 'unknown1', 'duration', 'number', 'name', 'numberlength', 'unknown2', 'pbnumbertype', 'unknown3'] 2298 2299 def __init__(self, *args, **kwargs): 2300 dict={} 2301 # What was supplied to this function 2302 dict.update(kwargs) 2303 # Parent constructor 2304 super(call,self).__init__(**dict) 2305 if self.__class__ is call: 2306 self._update(args,dict) 2307 2308 2309 def getfields(self): 2310 return self.__fields 2311 2312 2313 def _update(self, args, kwargs): 2314 super(call,self)._update(args,kwargs) 2315 keys=kwargs.keys() 2316 for key in keys: 2317 if key in self.__fields: 2318 setattr(self, key, kwargs[key]) 2319 del kwargs[key] 2320 # Were any unrecognized kwargs passed in? 2321 if __debug__: 2322 self._complainaboutunusedargs(call,kwargs) 2323 if len(args): raise TypeError('Unexpected arguments supplied: '+`args`) 2324 # Make all P fields that haven't already been constructed 2325 2326 2327 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 2328 'Writes this packet to the supplied buffer' 2329 self._bufferstartoffset=buf.getcurrentoffset() 2330 self.__field_GPStime.writetobuffer(buf) 2331 self.__field_unknown1.writetobuffer(buf) 2332 self.__field_duration.writetobuffer(buf) 2333 self.__field_number.writetobuffer(buf) 2334 self.__field_name.writetobuffer(buf) 2335 self.__field_numberlength.writetobuffer(buf) 2336 self.__field_unknown2.writetobuffer(buf) 2337 self.__field_pbnumbertype.writetobuffer(buf) 2338 self.__field_unknown3.writetobuffer(buf) 2339 self._bufferendoffset=buf.getcurrentoffset() 2340 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 2341 2342 2343 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 2344 'Reads this packet from the supplied buffer' 2345 self._bufferstartoffset=buf.getcurrentoffset() 2346 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 2347 self.__field_GPStime=GPSDATE(**{'sizeinbytes': 4}) 2348 self.__field_GPStime.readfrombuffer(buf) 2349 self.__field_unknown1=UINT(**{'sizeinbytes': 4}) 2350 self.__field_unknown1.readfrombuffer(buf) 2351 self.__field_duration=UINT(**{'sizeinbytes': 4}) 2352 self.__field_duration.readfrombuffer(buf) 2353 self.__field_number=USTRING(**{'sizeinbytes': 49, 'raiseonunterminatedread': False}) 2354 self.__field_number.readfrombuffer(buf) 2355 self.__field_name=USTRING(**{'sizeinbytes': 36, 'encoding': PHONE_ENCODING, 'raiseonunterminatedread': False}) 2356 self.__field_name.readfrombuffer(buf) 2357 self.__field_numberlength=UINT(**{'sizeinbytes': 1}) 2358 self.__field_numberlength.readfrombuffer(buf) 2359 self.__field_unknown2=UINT(**{'sizeinbytes': 1}) 2360 self.__field_unknown2.readfrombuffer(buf) 2361 self.__field_pbnumbertype=UINT(**{'sizeinbytes': 1}) 2362 self.__field_pbnumbertype.readfrombuffer(buf) 2363 self.__field_unknown3=UINT(**{'sizeinbytes': 5}) 2364 self.__field_unknown3.readfrombuffer(buf) 2365 self._bufferendoffset=buf.getcurrentoffset() 2366 2367 2368 def __getfield_GPStime(self): 2369 return self.__field_GPStime.getvalue() 2370 2371 def __setfield_GPStime(self, value): 2372 if isinstance(value,GPSDATE): 2373 self.__field_GPStime=value 2374 else: 2375 self.__field_GPStime=GPSDATE(value,**{'sizeinbytes': 4}) 2376 2377 def __delfield_GPStime(self): del self.__field_GPStime 2378 2379 GPStime=property(__getfield_GPStime, __setfield_GPStime, __delfield_GPStime, None) 2380 2381 def __getfield_unknown1(self): 2382 return self.__field_unknown1.getvalue() 2383 2384 def __setfield_unknown1(self, value): 2385 if isinstance(value,UINT): 2386 self.__field_unknown1=value 2387 else: 2388 self.__field_unknown1=UINT(value,**{'sizeinbytes': 4}) 2389 2390 def __delfield_unknown1(self): del self.__field_unknown1 2391 2392 unknown1=property(__getfield_unknown1, __setfield_unknown1, __delfield_unknown1, None) 2393 2394 def __getfield_duration(self): 2395 return self.__field_duration.getvalue() 2396 2397 def __setfield_duration(self, value): 2398 if isinstance(value,UINT): 2399 self.__field_duration=value 2400 else: 2401 self.__field_duration=UINT(value,**{'sizeinbytes': 4}) 2402 2403 def __delfield_duration(self): del self.__field_duration 2404 2405 duration=property(__getfield_duration, __setfield_duration, __delfield_duration, None) 2406 2407 def __getfield_number(self): 2408 return self.__field_number.getvalue() 2409 2410 def __setfield_number(self, value): 2411 if isinstance(value,USTRING): 2412 self.__field_number=value 2413 else: 2414 self.__field_number=USTRING(value,**{'sizeinbytes': 49, 'raiseonunterminatedread': False}) 2415 2416 def __delfield_number(self): del self.__field_number 2417 2418 number=property(__getfield_number, __setfield_number, __delfield_number, None) 2419 2420 def __getfield_name(self): 2421 return self.__field_name.getvalue() 2422 2423 def __setfield_name(self, value): 2424 if isinstance(value,USTRING): 2425 self.__field_name=value 2426 else: 2427 self.__field_name=USTRING(value,**{'sizeinbytes': 36, 'encoding': PHONE_ENCODING, 'raiseonunterminatedread': False}) 2428 2429 def __delfield_name(self): del self.__field_name 2430 2431 name=property(__getfield_name, __setfield_name, __delfield_name, None) 2432 2433 def __getfield_numberlength(self): 2434 return self.__field_numberlength.getvalue() 2435 2436 def __setfield_numberlength(self, value): 2437 if isinstance(value,UINT): 2438 self.__field_numberlength=value 2439 else: 2440 self.__field_numberlength=UINT(value,**{'sizeinbytes': 1}) 2441 2442 def __delfield_numberlength(self): del self.__field_numberlength 2443 2444 numberlength=property(__getfield_numberlength, __setfield_numberlength, __delfield_numberlength, None) 2445 2446 def __getfield_unknown2(self): 2447 return self.__field_unknown2.getvalue() 2448 2449 def __setfield_unknown2(self, value): 2450 if isinstance(value,UINT): 2451 self.__field_unknown2=value 2452 else: 2453 self.__field_unknown2=UINT(value,**{'sizeinbytes': 1}) 2454 2455 def __delfield_unknown2(self): del self.__field_unknown2 2456 2457 unknown2=property(__getfield_unknown2, __setfield_unknown2, __delfield_unknown2, None) 2458 2459 def __getfield_pbnumbertype(self): 2460 return self.__field_pbnumbertype.getvalue() 2461 2462 def __setfield_pbnumbertype(self, value): 2463 if isinstance(value,UINT): 2464 self.__field_pbnumbertype=value 2465 else: 2466 self.__field_pbnumbertype=UINT(value,**{'sizeinbytes': 1}) 2467 2468 def __delfield_pbnumbertype(self): del self.__field_pbnumbertype 2469 2470 pbnumbertype=property(__getfield_pbnumbertype, __setfield_pbnumbertype, __delfield_pbnumbertype, None) 2471 2472 def __getfield_unknown3(self): 2473 return self.__field_unknown3.getvalue() 2474 2475 def __setfield_unknown3(self, value): 2476 if isinstance(value,UINT): 2477 self.__field_unknown3=value 2478 else: 2479 self.__field_unknown3=UINT(value,**{'sizeinbytes': 5}) 2480 2481 def __delfield_unknown3(self): del self.__field_unknown3 2482 2483 unknown3=property(__getfield_unknown3, __setfield_unknown3, __delfield_unknown3, None) 2484 2485 def iscontainer(self): 2486 return True 2487 2488 def containerelements(self): 2489 yield ('GPStime', self.__field_GPStime, None) 2490 yield ('unknown1', self.__field_unknown1, None) 2491 yield ('duration', self.__field_duration, None) 2492 yield ('number', self.__field_number, None) 2493 yield ('name', self.__field_name, None) 2494 yield ('numberlength', self.__field_numberlength, None) 2495 yield ('unknown2', self.__field_unknown2, None) 2496 yield ('pbnumbertype', self.__field_pbnumbertype, None) 2497 yield ('unknown3', self.__field_unknown3, None) 2498 2499 2500 2501 2502 class callhistory(BaseProtogenClass): 2503 __fields=['numcalls', 'unknown1', 'calls'] 2504 2505 def __init__(self, *args, **kwargs): 2506 dict={} 2507 # What was supplied to this function 2508 dict.update(kwargs) 2509 # Parent constructor 2510 super(callhistory,self).__init__(**dict) 2511 if self.__class__ is callhistory: 2512 self._update(args,dict) 2513 2514 2515 def getfields(self): 2516 return self.__fields 2517 2518 2519 def _update(self, args, kwargs): 2520 super(callhistory,self)._update(args,kwargs) 2521 keys=kwargs.keys() 2522 for key in keys: 2523 if key in self.__fields: 2524 setattr(self, key, kwargs[key]) 2525 del kwargs[key] 2526 # Were any unrecognized kwargs passed in? 2527 if __debug__: 2528 self._complainaboutunusedargs(callhistory,kwargs) 2529 if len(args): raise TypeError('Unexpected arguments supplied: '+`args`) 2530 # Make all P fields that haven't already been constructed 2531 2532 2533 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 2534 'Writes this packet to the supplied buffer' 2535 self._bufferstartoffset=buf.getcurrentoffset() 2536 self.__field_numcalls.writetobuffer(buf) 2537 self.__field_unknown1.writetobuffer(buf) 2538 try: self.__field_calls 2539 except: 2540 self.__field_calls=LIST(**{'elementclass': call}) 2541 self.__field_calls.writetobuffer(buf) 2542 self._bufferendoffset=buf.getcurrentoffset() 2543 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 2544 2545 2546 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 2547 'Reads this packet from the supplied buffer' 2548 self._bufferstartoffset=buf.getcurrentoffset() 2549 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 2550 self.__field_numcalls=UINT(**{'sizeinbytes': 4}) 2551 self.__field_numcalls.readfrombuffer(buf) 2552 self.__field_unknown1=UINT(**{'sizeinbytes': 1}) 2553 self.__field_unknown1.readfrombuffer(buf) 2554 self.__field_calls=LIST(**{'elementclass': call}) 2555 self.__field_calls.readfrombuffer(buf) 2556 self._bufferendoffset=buf.getcurrentoffset() 2557 2558 2559 def __getfield_numcalls(self): 2560 return self.__field_numcalls.getvalue() 2561 2562 def __setfield_numcalls(self, value): 2563 if isinstance(value,UINT): 2564 self.__field_numcalls=value 2565 else: 2566 self.__field_numcalls=UINT(value,**{'sizeinbytes': 4}) 2567 2568 def __delfield_numcalls(self): del self.__field_numcalls 2569 2570 numcalls=property(__getfield_numcalls, __setfield_numcalls, __delfield_numcalls, None) 2571 2572 def __getfield_unknown1(self): 2573 return self.__field_unknown1.getvalue() 2574 2575 def __setfield_unknown1(self, value): 2576 if isinstance(value,UINT): 2577 self.__field_unknown1=value 2578 else: 2579 self.__field_unknown1=UINT(value,**{'sizeinbytes': 1}) 2580 2581 def __delfield_unknown1(self): del self.__field_unknown1 2582 2583 unknown1=property(__getfield_unknown1, __setfield_unknown1, __delfield_unknown1, None) 2584 2585 def __getfield_calls(self): 2586 try: self.__field_calls 2587 except: 2588 self.__field_calls=LIST(**{'elementclass': call}) 2589 return self.__field_calls.getvalue() 2590 2591 def __setfield_calls(self, value): 2592 if isinstance(value,LIST): 2593 self.__field_calls=value 2594 else: 2595 self.__field_calls=LIST(value,**{'elementclass': call}) 2596 2597 def __delfield_calls(self): del self.__field_calls 2598 2599 calls=property(__getfield_calls, __setfield_calls, __delfield_calls, None) 2600 2601 def iscontainer(self): 2602 return True 2603 2604 def containerelements(self): 2605 yield ('numcalls', self.__field_numcalls, None) 2606 yield ('unknown1', self.__field_unknown1, None) 2607 yield ('calls', self.__field_calls, None) 2608 2609 2610 2611 2612 class indexentry(BaseProtogenClass): 2613 __fields=['index', 'const', 'name'] 2614 2615 def __init__(self, *args, **kwargs): 2616 dict={} 2617 # What was supplied to this function 2618 dict.update(kwargs) 2619 # Parent constructor 2620 super(indexentry,self).__init__(**dict) 2621 if self.__class__ is indexentry: 2622 self._update(args,dict) 2623 2624 2625 def getfields(self): 2626 return self.__fields 2627 2628 2629 def _update(self, args, kwargs): 2630 super(indexentry,self)._update(args,kwargs) 2631 keys=kwargs.keys() 2632 for key in keys: 2633 if key in self.__fields: 2634 setattr(self, key, kwargs[key]) 2635 del kwargs[key] 2636 # Were any unrecognized kwargs passed in? 2637 if __debug__: 2638 self._complainaboutunusedargs(indexentry,kwargs) 2639 if len(args): raise TypeError('Unexpected arguments supplied: '+`args`) 2640 # Make all P fields that haven't already been constructed 2641 2642 2643 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 2644 'Writes this packet to the supplied buffer' 2645 self._bufferstartoffset=buf.getcurrentoffset() 2646 self.__field_index.writetobuffer(buf) 2647 self.__field_const.writetobuffer(buf) 2648 try: self.__field_name 2649 except: 2650 self.__field_name=USTRING(**{'sizeinbytes': 40, 'default': ""}) 2651 self.__field_name.writetobuffer(buf) 2652 self._bufferendoffset=buf.getcurrentoffset() 2653 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 2654 2655 2656 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 2657 'Reads this packet from the supplied buffer' 2658 self._bufferstartoffset=buf.getcurrentoffset() 2659 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 2660 self.__field_index=UINT(**{'sizeinbytes': 1}) 2661 self.__field_index.readfrombuffer(buf) 2662 self.__field_const=UINT(**{'sizeinbytes': 1}) 2663 self.__field_const.readfrombuffer(buf) 2664 self.__field_name=USTRING(**{'sizeinbytes': 40, 'default': ""}) 2665 self.__field_name.readfrombuffer(buf) 2666 self._bufferendoffset=buf.getcurrentoffset() 2667 2668 2669 def __getfield_index(self): 2670 return self.__field_index.getvalue() 2671 2672 def __setfield_index(self, value): 2673 if isinstance(value,UINT): 2674 self.__field_index=value 2675 else: 2676 self.__field_index=UINT(value,**{'sizeinbytes': 1}) 2677 2678 def __delfield_index(self): del self.__field_index 2679 2680 index=property(__getfield_index, __setfield_index, __delfield_index, None) 2681 2682 def __getfield_const(self): 2683 return self.__field_const.getvalue() 2684 2685 def __setfield_const(self, value): 2686 if isinstance(value,UINT): 2687 self.__field_const=value 2688 else: 2689 self.__field_const=UINT(value,**{'sizeinbytes': 1}) 2690 2691 def __delfield_const(self): del self.__field_const 2692 2693 const=property(__getfield_const, __setfield_const, __delfield_const, None) 2694 2695 def __getfield_name(self): 2696 try: self.__field_name 2697 except: 2698 self.__field_name=USTRING(**{'sizeinbytes': 40, 'default': ""}) 2699 return self.__field_name.getvalue() 2700 2701 def __setfield_name(self, value): 2702 if isinstance(value,USTRING): 2703 self.__field_name=value 2704 else: 2705 self.__field_name=USTRING(value,**{'sizeinbytes': 40, 'default': ""}) 2706 2707 def __delfield_name(self): del self.__field_name 2708 2709 name=property(__getfield_name, __setfield_name, __delfield_name, None) 2710 2711 def iscontainer(self): 2712 return True 2713 2714 def containerelements(self): 2715 yield ('index', self.__field_index, None) 2716 yield ('const', self.__field_const, None) 2717 yield ('name', self.__field_name, None) 2718 2719 2720 2721 2722 class indexfile(BaseProtogenClass): 2723 "Used for tracking wallpaper and ringtones" 2724 __fields=['numactiveitems', 'items'] 2725 2726 def __init__(self, *args, **kwargs): 2727 dict={} 2728 # What was supplied to this function 2729 dict.update(kwargs) 2730 # Parent constructor 2731 super(indexfile,self).__init__(**dict) 2732 if self.__class__ is indexfile: 2733 self._update(args,dict) 2734 2735 2736 def getfields(self): 2737 return self.__fields 2738 2739 2740 def _update(self, args, kwargs): 2741 super(indexfile,self)._update(args,kwargs) 2742 keys=kwargs.keys() 2743 for key in keys: 2744 if key in self.__fields: 2745 setattr(self, key, kwargs[key]) 2746 del kwargs[key] 2747 # Were any unrecognized kwargs passed in? 2748 if __debug__: 2749 self._complainaboutunusedargs(indexfile,kwargs) 2750 if len(args): raise TypeError('Unexpected arguments supplied: '+`args`) 2751 # Make all P fields that haven't already been constructed 2752 2753 2754 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 2755 'Writes this packet to the supplied buffer' 2756 self._bufferstartoffset=buf.getcurrentoffset() 2757 self.__field_numactiveitems.writetobuffer(buf) 2758 try: self.__field_items 2759 except: 2760 self.__field_items=LIST(**{'elementclass': indexentry, 'createdefault': True}) 2761 self.__field_items.writetobuffer(buf) 2762 self._bufferendoffset=buf.getcurrentoffset() 2763 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 2764 2765 2766 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 2767 'Reads this packet from the supplied buffer' 2768 self._bufferstartoffset=buf.getcurrentoffset() 2769 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 2770 self.__field_numactiveitems=UINT(**{'sizeinbytes': 2}) 2771 self.__field_numactiveitems.readfrombuffer(buf) 2772 self.__field_items=LIST(**{'elementclass': indexentry, 'createdefault': True}) 2773 self.__field_items.readfrombuffer(buf) 2774 self._bufferendoffset=buf.getcurrentoffset() 2775 2776 2777 def __getfield_numactiveitems(self): 2778 return self.__field_numactiveitems.getvalue() 2779 2780 def __setfield_numactiveitems(self, value): 2781 if isinstance(value,UINT): 2782 self.__field_numactiveitems=value 2783 else: 2784 self.__field_numactiveitems=UINT(value,**{'sizeinbytes': 2}) 2785 2786 def __delfield_numactiveitems(self): del self.__field_numactiveitems 2787 2788 numactiveitems=property(__getfield_numactiveitems, __setfield_numactiveitems, __delfield_numactiveitems, None) 2789 2790 def __getfield_items(self): 2791 try: self.__field_items 2792 except: 2793 self.__field_items=LIST(**{'elementclass': indexentry, 'createdefault': True}) 2794 return self.__field_items.getvalue() 2795 2796 def __setfield_items(self, value): 2797 if isinstance(value,LIST): 2798 self.__field_items=value 2799 else: 2800 self.__field_items=LIST(value,**{'elementclass': indexentry, 'createdefault': True}) 2801 2802 def __delfield_items(self): del self.__field_items 2803 2804 items=property(__getfield_items, __setfield_items, __delfield_items, None) 2805 2806 def iscontainer(self): 2807 return True 2808 2809 def containerelements(self): 2810 yield ('numactiveitems', self.__field_numactiveitems, None) 2811 yield ('items', self.__field_items, None) 2812 2813 2814 2815 2816 class content_entry(BaseProtogenClass): 2817 __fields=['type', 'index1', 'name1', 'unknown1', 'unknown2', 'mime_type', 'content_type', 'url', 'unknown_int1', 'unknown3', 'unknown_int2', 'unknown4', 'unknown5', 'size', 'location_maybe', 'index2', 'name2', 'unknown6'] 2818 2819 def __init__(self, *args, **kwargs): 2820 dict={} 2821 # What was supplied to this function 2822 dict.update(kwargs) 2823 # Parent constructor 2824 super(content_entry,self).__init__(**dict) 2825 if self.__class__ is content_entry: 2826 self._update(args,dict) 2827 2828 2829 def getfields(self): 2830 return self.__fields 2831 2832 2833 def _update(self, args, kwargs): 2834 super(content_entry,self)._update(args,kwargs) 2835 keys=kwargs.keys() 2836 for key in keys: 2837 if key in self.__fields: 2838 setattr(self, key, kwargs[key]) 2839 del kwargs[key] 2840 # Were any unrecognized kwargs passed in? 2841 if __debug__: 2842 self._complainaboutunusedargs(content_entry,kwargs) 2843 if len(args): raise TypeError('Unexpected arguments supplied: '+`args`) 2844 # Make all P fields that haven't already been constructed 2845 2846 2847 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 2848 'Writes this packet to the supplied buffer' 2849 self._bufferstartoffset=buf.getcurrentoffset() 2850 self.__field_type.writetobuffer(buf) 2851 if self.type=='!C': 2852 self.__field_index1.writetobuffer(buf) 2853 self.__field_name1.writetobuffer(buf) 2854 try: self.__field_unknown1 2855 except: 2856 self.__field_unknown1=USTRING(**{'terminator': 0xA, 'default': '-1'}) 2857 self.__field_unknown1.writetobuffer(buf) 2858 try: self.__field_unknown2 2859 except: 2860 self.__field_unknown2=UINT(**{'sizeinbytes': 8, 'default' :0}) 2861 self.__field_unknown2.writetobuffer(buf) 2862 self.__field_mime_type.writetobuffer(buf) 2863 self.__field_content_type.writetobuffer(buf) 2864 try: self.__field_url 2865 except: 2866 self.__field_url=USTRING(**{'terminator': 0xA, 'default':'bitpim.org'}) 2867 self.__field_url.writetobuffer(buf) 2868 try: self.__field_unknown_int1 2869 except: 2870 self.__field_unknown_int1=UINT(**{'sizeinbytes': 1, 'default':0x14}) 2871 self.__field_unknown_int1.writetobuffer(buf) 2872 try: self.__field_unknown3 2873 except: 2874 self.__field_unknown3=USTRING(**{'terminator': 0xA, 'default':''}) 2875 self.__field_unknown3.writetobuffer(buf) 2876 try: self.__field_unknown_int2 2877 except: 2878 self.__field_unknown_int2=UINT(**{'sizeinbytes': 1, 'default':0x14}) 2879 self.__field_unknown_int2.writetobuffer(buf) 2880 try: self.__field_unknown4 2881 except: 2882 self.__field_unknown4=USTRING(**{'terminator': 0xA, 'default':''}) 2883 self.__field_unknown4.writetobuffer(buf) 2884 try: self.__field_unknown5 2885 except: 2886 self.__field_unknown5=USTRING(**{'terminator': 0xA, 'default':'0'}) 2887 self.__field_unknown5.writetobuffer(buf) 2888 self.__field_size.writetobuffer(buf) 2889 if self.type=='!E': 2890 try: self.__field_location_maybe 2891 except: 2892 self.__field_location_maybe=USTRING(**{'terminator': 0xA, 'default':'ams:'}) 2893 self.__field_location_maybe.writetobuffer(buf) 2894 self.__field_index2.writetobuffer(buf) 2895 self.__field_name2.writetobuffer(buf) 2896 try: self.__field_unknown6 2897 except: 2898 self.__field_unknown6=USTRING(**{'terminator': 0xA, 'default':''}) 2899 self.__field_unknown6.writetobuffer(buf) 2900 self._bufferendoffset=buf.getcurrentoffset() 2901 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 2902 2903 2904 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 2905 'Reads this packet from the supplied buffer' 2906 self._bufferstartoffset=buf.getcurrentoffset() 2907 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 2908 self.__field_type=USTRING(**{'sizeinbytes': 3, 'terminator': 0xA}) 2909 self.__field_type.readfrombuffer(buf) 2910 if self.type=='!C': 2911 self.__field_index1=USTRING(**{'terminator': 0xA}) 2912 self.__field_index1.readfrombuffer(buf) 2913 self.__field_name1=USTRING(**{'terminator': 0xA}) 2914 self.__field_name1.readfrombuffer(buf) 2915 self.__field_unknown1=USTRING(**{'terminator': 0xA, 'default': '-1'}) 2916 self.__field_unknown1.readfrombuffer(buf) 2917 self.__field_unknown2=UINT(**{'sizeinbytes': 8, 'default' :0}) 2918 self.__field_unknown2.readfrombuffer(buf) 2919 self.__field_mime_type=USTRING(**{'terminator': 0xA}) 2920 self.__field_mime_type.readfrombuffer(buf) 2921 self.__field_content_type=USTRING(**{'terminator': 0xA}) 2922 self.__field_content_type.readfrombuffer(buf) 2923 self.__field_url=USTRING(**{'terminator': 0xA, 'default':'bitpim.org'}) 2924 self.__field_url.readfrombuffer(buf) 2925 self.__field_unknown_int1=UINT(**{'sizeinbytes': 1, 'default':0x14}) 2926 self.__field_unknown_int1.readfrombuffer(buf) 2927 self.__field_unknown3=USTRING(**{'terminator': 0xA, 'default':''}) 2928 self.__field_unknown3.readfrombuffer(buf) 2929 self.__field_unknown_int2=UINT(**{'sizeinbytes': 1, 'default':0x14}) 2930 self.__field_unknown_int2.readfrombuffer(buf) 2931 self.__field_unknown4=USTRING(**{'terminator': 0xA, 'default':''}) 2932 self.__field_unknown4.readfrombuffer(buf) 2933 self.__field_unknown5=USTRING(**{'terminator': 0xA, 'default':'0'}) 2934 self.__field_unknown5.readfrombuffer(buf) 2935 self.__field_size=USTRING(**{'terminator': 0xA}) 2936 self.__field_size.readfrombuffer(buf) 2937 if self.type=='!E': 2938 self.__field_location_maybe=USTRING(**{'terminator': 0xA, 'default':'ams:'}) 2939 self.__field_location_maybe.readfrombuffer(buf) 2940 self.__field_index2=USTRING(**{'terminator': 0xA}) 2941 self.__field_index2.readfrombuffer(buf) 2942 self.__field_name2=USTRING(**{'terminator': 0xA}) 2943 self.__field_name2.readfrombuffer(buf) 2944 self.__field_unknown6=USTRING(**{'terminator': 0xA, 'default':''}) 2945 self.__field_unknown6.readfrombuffer(buf) 2946 self._bufferendoffset=buf.getcurrentoffset() 2947 2948 2949 def __getfield_type(self): 2950 return self.__field_type.getvalue() 2951 2952 def __setfield_type(self, value): 2953 if isinstance(value,USTRING): 2954 self.__field_type=value 2955 else: 2956 self.__field_type=USTRING(value,**{'sizeinbytes': 3, 'terminator': 0xA}) 2957 2958 def __delfield_type(self): del self.__field_type 2959 2960 type=property(__getfield_type, __setfield_type, __delfield_type, None) 2961 2962 def __getfield_index1(self): 2963 return self.__field_index1.getvalue() 2964 2965 def __setfield_index1(self, value): 2966 if isinstance(value,USTRING): 2967 self.__field_index1=value 2968 else: 2969 self.__field_index1=USTRING(value,**{'terminator': 0xA}) 2970 2971 def __delfield_index1(self): del self.__field_index1 2972 2973 index1=property(__getfield_index1, __setfield_index1, __delfield_index1, None) 2974 2975 def __getfield_name1(self): 2976 return self.__field_name1.getvalue() 2977 2978 def __setfield_name1(self, value): 2979 if isinstance(value,USTRING): 2980 self.__field_name1=value 2981 else: 2982 self.__field_name1=USTRING(value,**{'terminator': 0xA}) 2983 2984 def __delfield_name1(self): del self.__field_name1 2985 2986 name1=property(__getfield_name1, __setfield_name1, __delfield_name1, None) 2987 2988 def __getfield_unknown1(self): 2989 try: self.__field_unknown1 2990 except: 2991 self.__field_unknown1=USTRING(**{'terminator': 0xA, 'default': '-1'}) 2992 return self.__field_unknown1.getvalue() 2993 2994 def __setfield_unknown1(self, value): 2995 if isinstance(value,USTRING): 2996 self.__field_unknown1=value 2997 else: 2998 self.__field_unknown1=USTRING(value,**{'terminator': 0xA, 'default': '-1'}) 2999 3000 def __delfield_unknown1(self): del self.__field_unknown1 3001 3002 unknown1=property(__getfield_unknown1, __setfield_unknown1, __delfield_unknown1, None) 3003 3004 def __getfield_unknown2(self): 3005 try: self.__field_unknown2 3006 except: 3007 self.__field_unknown2=UINT(**{'sizeinbytes': 8, 'default' :0}) 3008 return self.__field_unknown2.getvalue() 3009 3010 def __setfield_unknown2(self, value): 3011 if isinstance(value,UINT): 3012 self.__field_unknown2=value 3013 else: 3014 self.__field_unknown2=UINT(value,**{'sizeinbytes': 8, 'default' :0}) 3015 3016 def __delfield_unknown2(self): del self.__field_unknown2 3017 3018 unknown2=property(__getfield_unknown2, __setfield_unknown2, __delfield_unknown2, None) 3019 3020 def __getfield_mime_type(self): 3021 return self.__field_mime_type.getvalue() 3022 3023 def __setfield_mime_type(self, value): 3024 if isinstance(value,USTRING): 3025 self.__field_mime_type=value 3026 else: 3027 self.__field_mime_type=USTRING(value,**{'terminator': 0xA}) 3028 3029 def __delfield_mime_type(self): del self.__field_mime_type 3030 3031 mime_type=property(__getfield_mime_type, __setfield_mime_type, __delfield_mime_type, None) 3032 3033 def __getfield_content_type(self): 3034 return self.__field_content_type.getvalue() 3035 3036 def __setfield_content_type(self, value): 3037 if isinstance(value,USTRING): 3038 self.__field_content_type=value 3039 else: 3040 self.__field_content_type=USTRING(value,**{'terminator': 0xA}) 3041 3042 def __delfield_content_type(self): del self.__field_content_type 3043 3044 content_type=property(__getfield_content_type, __setfield_content_type, __delfield_content_type, None) 3045 3046 def __getfield_url(self): 3047 try: self.__field_url 3048 except: 3049 self.__field_url=USTRING(**{'terminator': 0xA, 'default':'bitpim.org'}) 3050 return self.__field_url.getvalue() 3051 3052 def __setfield_url(self, value): 3053 if isinstance(value,USTRING): 3054 self.__field_url=value 3055 else: 3056 self.__field_url=USTRING(value,**{'terminator': 0xA, 'default':'bitpim.org'}) 3057 3058 def __delfield_url(self): del self.__field_url 3059 3060 url=property(__getfield_url, __setfield_url, __delfield_url, None) 3061 3062 def __getfield_unknown_int1(self): 3063 try: self.__field_unknown_int1 3064 except: 3065 self.__field_unknown_int1=UINT(**{'sizeinbytes': 1, 'default':0x14}) 3066 return self.__field_unknown_int1.getvalue() 3067 3068 def __setfield_unknown_int1(self, value): 3069 if isinstance(value,UINT): 3070 self.__field_unknown_int1=value 3071 else: 3072 self.__field_unknown_int1=UINT(value,**{'sizeinbytes': 1, 'default':0x14}) 3073 3074 def __delfield_unknown_int1(self): del self.__field_unknown_int1 3075 3076 unknown_int1=property(__getfield_unknown_int1, __setfield_unknown_int1, __delfield_unknown_int1, None) 3077 3078 def __getfield_unknown3(self): 3079 try: self.__field_unknown3 3080 except: 3081 self.__field_unknown3=USTRING(**{'terminator': 0xA, 'default':''}) 3082 return self.__field_unknown3.getvalue() 3083 3084 def __setfield_unknown3(self, value): 3085 if isinstance(value,USTRING): 3086 self.__field_unknown3=value 3087 else: 3088 self.__field_unknown3=USTRING(value,**{'terminator': 0xA, 'default':''}) 3089 3090 def __delfield_unknown3(self): del self.__field_unknown3 3091 3092 unknown3=property(__getfield_unknown3, __setfield_unknown3, __delfield_unknown3, None) 3093 3094 def __getfield_unknown_int2(self): 3095 try: self.__field_unknown_int2 3096 except: 3097 self.__field_unknown_int2=UINT(**{'sizeinbytes': 1, 'default':0x14}) 3098 return self.__field_unknown_int2.getvalue() 3099 3100 def __setfield_unknown_int2(self, value): 3101 if isinstance(value,UINT): 3102 self.__field_unknown_int2=value 3103 else: 3104 self.__field_unknown_int2=UINT(value,**{'sizeinbytes': 1, 'default':0x14}) 3105 3106 def __delfield_unknown_int2(self): del self.__field_unknown_int2 3107 3108 unknown_int2=property(__getfield_unknown_int2, __setfield_unknown_int2, __delfield_unknown_int2, None) 3109 3110 def __getfield_unknown4(self): 3111 try: self.__field_unknown4 3112 except: 3113 self.__field_unknown4=USTRING(**{'terminator': 0xA, 'default':''}) 3114 return self.__field_unknown4.getvalue() 3115 3116 def __setfield_unknown4(self, value): 3117 if isinstance(value,USTRING): 3118 self.__field_unknown4=value 3119 else: 3120 self.__field_unknown4=USTRING(value,**{'terminator': 0xA, 'default':''}) 3121 3122 def __delfield_unknown4(self): del self.__field_unknown4 3123 3124 unknown4=property(__getfield_unknown4, __setfield_unknown4, __delfield_unknown4, None) 3125 3126 def __getfield_unknown5(self): 3127 try: self.__field_unknown5 3128 except: 3129 self.__field_unknown5=USTRING(**{'terminator': 0xA, 'default':'0'}) 3130 return self.__field_unknown5.getvalue() 3131 3132 def __setfield_unknown5(self, value): 3133 if isinstance(value,USTRING): 3134 self.__field_unknown5=value 3135 else: 3136 self.__field_unknown5=USTRING(value,**{'terminator': 0xA, 'default':'0'}) 3137 3138 def __delfield_unknown5(self): del self.__field_unknown5 3139 3140 unknown5=property(__getfield_unknown5, __setfield_unknown5, __delfield_unknown5, None) 3141 3142 def __getfield_size(self): 3143 return self.__field_size.getvalue() 3144 3145 def __setfield_size(self, value): 3146 if isinstance(value,USTRING): 3147 self.__field_size=value 3148 else: 3149 self.__field_size=USTRING(value,**{'terminator': 0xA}) 3150 3151 def __delfield_size(self): del self.__field_size 3152 3153 size=property(__getfield_size, __setfield_size, __delfield_size, None) 3154 3155 def __getfield_location_maybe(self): 3156 try: self.__field_location_maybe 3157 except: 3158 self.__field_location_maybe=USTRING(**{'terminator': 0xA, 'default':'ams:'}) 3159 return self.__field_location_maybe.getvalue() 3160 3161 def __setfield_location_maybe(self, value): 3162 if isinstance(value,USTRING): 3163 self.__field_location_maybe=value 3164 else: 3165 self.__field_location_maybe=USTRING(value,**{'terminator': 0xA, 'default':'ams:'}) 3166 3167 def __delfield_location_maybe(self): del self.__field_location_maybe 3168 3169 location_maybe=property(__getfield_location_maybe, __setfield_location_maybe, __delfield_location_maybe, None) 3170 3171 def __getfield_index2(self): 3172 return self.__field_index2.getvalue() 3173 3174 def __setfield_index2(self, value): 3175 if isinstance(value,USTRING): 3176 self.__field_index2=value 3177 else: 3178 self.__field_index2=USTRING(value,**{'terminator': 0xA}) 3179 3180 def __delfield_index2(self): del self.__field_index2 3181 3182 index2=property(__getfield_index2, __setfield_index2, __delfield_index2, None) 3183 3184 def __getfield_name2(self): 3185 return self.__field_name2.getvalue() 3186 3187 def __setfield_name2(self, value): 3188 if isinstance(value,USTRING): 3189 self.__field_name2=value 3190 else: 3191 self.__field_name2=USTRING(value,**{'terminator': 0xA}) 3192 3193 def __delfield_name2(self): del self.__field_name2 3194 3195 name2=property(__getfield_name2, __setfield_name2, __delfield_name2, None) 3196 3197 def __getfield_unknown6(self): 3198 try: self.__field_unknown6 3199 except: 3200 self.__field_unknown6=USTRING(**{'terminator': 0xA, 'default':''}) 3201 return self.__field_unknown6.getvalue() 3202 3203 def __setfield_unknown6(self, value): 3204 if isinstance(value,USTRING): 3205 self.__field_unknown6=value 3206 else: 3207 self.__field_unknown6=USTRING(value,**{'terminator': 0xA, 'default':''}) 3208 3209 def __delfield_unknown6(self): del self.__field_unknown6 3210 3211 unknown6=property(__getfield_unknown6, __setfield_unknown6, __delfield_unknown6, None) 3212 3213 def iscontainer(self): 3214 return True 3215 3216 def containerelements(self): 3217 yield ('type', self.__field_type, None) 3218 if self.type=='!C': 3219 yield ('index1', self.__field_index1, None) 3220 yield ('name1', self.__field_name1, None) 3221 yield ('unknown1', self.__field_unknown1, None) 3222 yield ('unknown2', self.__field_unknown2, None) 3223 yield ('mime_type', self.__field_mime_type, None) 3224 yield ('content_type', self.__field_content_type, None) 3225 yield ('url', self.__field_url, None) 3226 yield ('unknown_int1', self.__field_unknown_int1, None) 3227 yield ('unknown3', self.__field_unknown3, None) 3228 yield ('unknown_int2', self.__field_unknown_int2, None) 3229 yield ('unknown4', self.__field_unknown4, None) 3230 yield ('unknown5', self.__field_unknown5, None) 3231 yield ('size', self.__field_size, None) 3232 if self.type=='!E': 3233 yield ('location_maybe', self.__field_location_maybe, None) 3234 yield ('index2', self.__field_index2, None) 3235 yield ('name2', self.__field_name2, None) 3236 yield ('unknown6', self.__field_unknown6, None) 3237 3238 3239 3240 3241 class content_file(BaseProtogenClass): 3242 "Used to store all content on the phone, apps, ringers and images (with the exception of the camera)" 3243 __fields=['items'] 3244 3245 def __init__(self, *args, **kwargs): 3246 dict={} 3247 # What was supplied to this function 3248 dict.update(kwargs) 3249 # Parent constructor 3250 super(content_file,self).__init__(**dict) 3251 if self.__class__ is content_file: 3252 self._update(args,dict) 3253 3254 3255 def getfields(self): 3256 return self.__fields 3257 3258 3259 def _update(self, args, kwargs): 3260 super(content_file,self)._update(args,kwargs) 3261 keys=kwargs.keys() 3262 for key in keys: 3263 if key in self.__fields: 3264 setattr(self, key, kwargs[key]) 3265 del kwargs[key] 3266 # Were any unrecognized kwargs passed in? 3267 if __debug__: 3268 self._complainaboutunusedargs(content_file,kwargs) 3269 if len(args): 3270 dict2={'elementclass': content_entry, 'createdefault': True} 3271 dict2.update(kwargs) 3272 kwargs=dict2 3273 self.__field_items=LIST(*args,**dict2) 3274 # Make all P fields that haven't already been constructed 3275 3276 3277 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 3278 'Writes this packet to the supplied buffer' 3279 self._bufferstartoffset=buf.getcurrentoffset() 3280 try: self.__field_items 3281 except: 3282 self.__field_items=LIST(**{'elementclass': content_entry, 'createdefault': True}) 3283 self.__field_items.writetobuffer(buf) 3284 self._bufferendoffset=buf.getcurrentoffset() 3285 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 3286 3287 3288 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 3289 'Reads this packet from the supplied buffer' 3290 self._bufferstartoffset=buf.getcurrentoffset() 3291 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 3292 self.__field_items=LIST(**{'elementclass': content_entry, 'createdefault': True}) 3293 self.__field_items.readfrombuffer(buf) 3294 self._bufferendoffset=buf.getcurrentoffset() 3295 3296 3297 def __getfield_items(self): 3298 try: self.__field_items 3299 except: 3300 self.__field_items=LIST(**{'elementclass': content_entry, 'createdefault': True}) 3301 return self.__field_items.getvalue() 3302 3303 def __setfield_items(self, value): 3304 if isinstance(value,LIST): 3305 self.__field_items=value 3306 else: 3307 self.__field_items=LIST(value,**{'elementclass': content_entry, 'createdefault': True}) 3308 3309 def __delfield_items(self): del self.__field_items 3310 3311 items=property(__getfield_items, __setfield_items, __delfield_items, None) 3312 3313 def iscontainer(self): 3314 return True 3315 3316 def containerelements(self): 3317 yield ('items', self.__field_items, None) 3318 3319 3320 3321 3322 class content_count(BaseProtogenClass): 3323 "Stores the number of items in the content file" 3324 __fields=['count'] 3325 3326 def __init__(self, *args, **kwargs): 3327 dict={} 3328 # What was supplied to this function 3329 dict.update(kwargs) 3330 # Parent constructor 3331 super(content_count,self).__init__(**dict) 3332 if self.__class__ is content_count: 3333 self._update(args,dict) 3334 3335 3336 def getfields(self): 3337 return self.__fields 3338 3339 3340 def _update(self, args, kwargs): 3341 super(content_count,self)._update(args,kwargs) 3342 keys=kwargs.keys() 3343 for key in keys: 3344 if key in self.__fields: 3345 setattr(self, key, kwargs[key]) 3346 del kwargs[key] 3347 # Were any unrecognized kwargs passed in? 3348 if __debug__: 3349 self._complainaboutunusedargs(content_count,kwargs) 3350 if len(args): 3351 dict2={'terminator': None} 3352 dict2.update(kwargs) 3353 kwargs=dict2 3354 self.__field_count=USTRING(*args,**dict2) 3355 # Make all P fields that haven't already been constructed 3356 3357 3358 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 3359 'Writes this packet to the supplied buffer' 3360 self._bufferstartoffset=buf.getcurrentoffset() 3361 self.__field_count.writetobuffer(buf) 3362 self._bufferendoffset=buf.getcurrentoffset() 3363 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 3364 3365 3366 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 3367 'Reads this packet from the supplied buffer' 3368 self._bufferstartoffset=buf.getcurrentoffset() 3369 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 3370 self.__field_count=USTRING(**{'terminator': None}) 3371 self.__field_count.readfrombuffer(buf) 3372 self._bufferendoffset=buf.getcurrentoffset() 3373 3374 3375 def __getfield_count(self): 3376 return self.__field_count.getvalue() 3377 3378 def __setfield_count(self, value): 3379 if isinstance(value,USTRING): 3380 self.__field_count=value 3381 else: 3382 self.__field_count=USTRING(value,**{'terminator': None}) 3383 3384 def __delfield_count(self): del self.__field_count 3385 3386 count=property(__getfield_count, __setfield_count, __delfield_count, None) 3387 3388 def iscontainer(self): 3389 return True 3390 3391 def containerelements(self): 3392 yield ('count', self.__field_count, None) 3393 3394 3395 3396 3397 class qcp_media_header(BaseProtogenClass): 3398 "Start of a qcp format file, used to determine if a file is qcp or mp3 format" 3399 __fields=['riff', 'riff_size', 'qcp_format', 'stuff'] 3400 3401 def __init__(self, *args, **kwargs): 3402 dict={} 3403 # What was supplied to this function 3404 dict.update(kwargs) 3405 # Parent constructor 3406 super(qcp_media_header,self).__init__(**dict) 3407 if self.__class__ is qcp_media_header: 3408 self._update(args,dict) 3409 3410 3411 def getfields(self): 3412 return self.__fields 3413 3414 3415 def _update(self, args, kwargs): 3416 super(qcp_media_header,self)._update(args,kwargs) 3417 keys=kwargs.keys() 3418 for key in keys: 3419 if key in self.__fields: 3420 setattr(self, key, kwargs[key]) 3421 del kwargs[key] 3422 # Were any unrecognized kwargs passed in? 3423 if __debug__: 3424 self._complainaboutunusedargs(qcp_media_header,kwargs) 3425 if len(args): raise TypeError('Unexpected arguments supplied: '+`args`) 3426 # Make all P fields that haven't already been constructed 3427 3428 3429 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 3430 'Writes this packet to the supplied buffer' 3431 self._bufferstartoffset=buf.getcurrentoffset() 3432 self.__field_riff.writetobuffer(buf) 3433 self.__field_riff_size.writetobuffer(buf) 3434 self.__field_qcp_format.writetobuffer(buf) 3435 self.__field_stuff.writetobuffer(buf) 3436 self._bufferendoffset=buf.getcurrentoffset() 3437 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 3438 3439 3440 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 3441 'Reads this packet from the supplied buffer' 3442 self._bufferstartoffset=buf.getcurrentoffset() 3443 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 3444 self.__field_riff=USTRING(**{'sizeinbytes': 4, 'constant': 'RIFF', 'terminator': None}) 3445 self.__field_riff.readfrombuffer(buf) 3446 self.__field_riff_size=UINT(**{'sizeinbytes': 4}) 3447 self.__field_riff_size.readfrombuffer(buf) 3448 self.__field_qcp_format=USTRING(**{'sizeinbytes': 8, 'constant': 'QLCMfmt ', 'terminator': None}) 3449 self.__field_qcp_format.readfrombuffer(buf) 3450 self.__field_stuff=DATA() 3451 self.__field_stuff.readfrombuffer(buf) 3452 self._bufferendoffset=buf.getcurrentoffset() 3453 3454 3455 def __getfield_riff(self): 3456 return self.__field_riff.getvalue() 3457 3458 def __setfield_riff(self, value): 3459 if isinstance(value,USTRING): 3460 self.__field_riff=value 3461 else: 3462 self.__field_riff=USTRING(value,**{'sizeinbytes': 4, 'constant': 'RIFF', 'terminator': None}) 3463 3464 def __delfield_riff(self): del self.__field_riff 3465 3466 riff=property(__getfield_riff, __setfield_riff, __delfield_riff, None) 3467 3468 def __getfield_riff_size(self): 3469 return self.__field_riff_size.getvalue() 3470 3471 def __setfield_riff_size(self, value): 3472 if isinstance(value,UINT): 3473 self.__field_riff_size=value 3474 else: 3475 self.__field_riff_size=UINT(value,**{'sizeinbytes': 4}) 3476 3477 def __delfield_riff_size(self): del self.__field_riff_size 3478 3479 riff_size=property(__getfield_riff_size, __setfield_riff_size, __delfield_riff_size, None) 3480 3481 def __getfield_qcp_format(self): 3482 return self.__field_qcp_format.getvalue() 3483 3484 def __setfield_qcp_format(self, value): 3485 if isinstance(value,USTRING): 3486 self.__field_qcp_format=value 3487 else: 3488 self.__field_qcp_format=USTRING(value,**{'sizeinbytes': 8, 'constant': 'QLCMfmt ', 'terminator': None}) 3489 3490 def __delfield_qcp_format(self): del self.__field_qcp_format 3491 3492 qcp_format=property(__getfield_qcp_format, __setfield_qcp_format, __delfield_qcp_format, None) 3493 3494 def __getfield_stuff(self): 3495 return self.__field_stuff.getvalue() 3496 3497 def __setfield_stuff(self, value): 3498 if isinstance(value,DATA): 3499 self.__field_stuff=value 3500 else: 3501 self.__field_stuff=DATA(value,) 3502 3503 def __delfield_stuff(self): del self.__field_stuff 3504 3505 stuff=property(__getfield_stuff, __setfield_stuff, __delfield_stuff, None) 3506 3507 def iscontainer(self): 3508 return True 3509 3510 def containerelements(self): 3511 yield ('riff', self.__field_riff, None) 3512 yield ('riff_size', self.__field_riff_size, None) 3513 yield ('qcp_format', self.__field_qcp_format, None) 3514 yield ('stuff', self.__field_stuff, None) 3515 3516 3517 3518 3519 class textmemo(BaseProtogenClass): 3520 __fields=['text'] 3521 3522 def __init__(self, *args, **kwargs): 3523 dict={} 3524 # What was supplied to this function 3525 dict.update(kwargs) 3526 # Parent constructor 3527 super(textmemo,self).__init__(**dict) 3528 if self.__class__ is textmemo: 3529 self._update(args,dict) 3530 3531 3532 def getfields(self): 3533 return self.__fields 3534 3535 3536 def _update(self, args, kwargs): 3537 super(textmemo,self)._update(args,kwargs) 3538 keys=kwargs.keys() 3539 for key in keys: 3540 if key in self.__fields: 3541 setattr(self, key, kwargs[key]) 3542 del kwargs[key] 3543 # Were any unrecognized kwargs passed in? 3544 if __debug__: 3545 self._complainaboutunusedargs(textmemo,kwargs) 3546 if len(args): 3547 dict2={'sizeinbytes': 151, 'encoding': PHONE_ENCODING, 'raiseonunterminatedread': False, 'raiseontruncate': False } 3548 dict2.update(kwargs) 3549 kwargs=dict2 3550 self.__field_text=USTRING(*args,**dict2) 3551 # Make all P fields that haven't already been constructed 3552 3553 3554 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 3555 'Writes this packet to the supplied buffer' 3556 self._bufferstartoffset=buf.getcurrentoffset() 3557 self.__field_text.writetobuffer(buf) 3558 self._bufferendoffset=buf.getcurrentoffset() 3559 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 3560 3561 3562 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 3563 'Reads this packet from the supplied buffer' 3564 self._bufferstartoffset=buf.getcurrentoffset() 3565 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 3566 self.__field_text=USTRING(**{'sizeinbytes': 151, 'encoding': PHONE_ENCODING, 'raiseonunterminatedread': False, 'raiseontruncate': False }) 3567 self.__field_text.readfrombuffer(buf) 3568 self._bufferendoffset=buf.getcurrentoffset() 3569 3570 3571 def __getfield_text(self): 3572 return self.__field_text.getvalue() 3573 3574 def __setfield_text(self, value): 3575 if isinstance(value,USTRING): 3576 self.__field_text=value 3577 else: 3578 self.__field_text=USTRING(value,**{'sizeinbytes': 151, 'encoding': PHONE_ENCODING, 'raiseonunterminatedread': False, 'raiseontruncate': False }) 3579 3580 def __delfield_text(self): del self.__field_text 3581 3582 text=property(__getfield_text, __setfield_text, __delfield_text, None) 3583 3584 def iscontainer(self): 3585 return True 3586 3587 def containerelements(self): 3588 yield ('text', self.__field_text, None) 3589 3590 3591 3592 3593 class textmemofile(BaseProtogenClass): 3594 __fields=['itemcount', 'items'] 3595 3596 def __init__(self, *args, **kwargs): 3597 dict={} 3598 # What was supplied to this function 3599 dict.update(kwargs) 3600 # Parent constructor 3601 super(textmemofile,self).__init__(**dict) 3602 if self.__class__ is textmemofile: 3603 self._update(args,dict) 3604 3605 3606 def getfields(self): 3607 return self.__fields 3608 3609 3610 def _update(self, args, kwargs): 3611 super(textmemofile,self)._update(args,kwargs) 3612 keys=kwargs.keys() 3613 for key in keys: 3614 if key in self.__fields: 3615 setattr(self, key, kwargs[key]) 3616 del kwargs[key] 3617 # Were any unrecognized kwargs passed in? 3618 if __debug__: 3619 self._complainaboutunusedargs(textmemofile,kwargs) 3620 if len(args): raise TypeError('Unexpected arguments supplied: '+`args`) 3621 # Make all P fields that haven't already been constructed 3622 3623 3624 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 3625 'Writes this packet to the supplied buffer' 3626 self._bufferstartoffset=buf.getcurrentoffset() 3627 self.__field_itemcount.writetobuffer(buf) 3628 try: self.__field_items 3629 except: 3630 self.__field_items=LIST(**{ 'elementclass': textmemo }) 3631 self.__field_items.writetobuffer(buf) 3632 self._bufferendoffset=buf.getcurrentoffset() 3633 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 3634 3635 3636 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 3637 'Reads this packet from the supplied buffer' 3638 self._bufferstartoffset=buf.getcurrentoffset() 3639 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 3640 self.__field_itemcount=UINT(**{'sizeinbytes': 4}) 3641 self.__field_itemcount.readfrombuffer(buf) 3642 self.__field_items=LIST(**{ 'elementclass': textmemo }) 3643 self.__field_items.readfrombuffer(buf) 3644 self._bufferendoffset=buf.getcurrentoffset() 3645 3646 3647 def __getfield_itemcount(self): 3648 return self.__field_itemcount.getvalue() 3649 3650 def __setfield_itemcount(self, value): 3651 if isinstance(value,UINT): 3652 self.__field_itemcount=value 3653 else: 3654 self.__field_itemcount=UINT(value,**{'sizeinbytes': 4}) 3655 3656 def __delfield_itemcount(self): del self.__field_itemcount 3657 3658 itemcount=property(__getfield_itemcount, __setfield_itemcount, __delfield_itemcount, None) 3659 3660 def __getfield_items(self): 3661 try: self.__field_items 3662 except: 3663 self.__field_items=LIST(**{ 'elementclass': textmemo }) 3664 return self.__field_items.getvalue() 3665 3666 def __setfield_items(self, value): 3667 if isinstance(value,LIST): 3668 self.__field_items=value 3669 else: 3670 self.__field_items=LIST(value,**{ 'elementclass': textmemo }) 3671 3672 def __delfield_items(self): del self.__field_items 3673 3674 items=property(__getfield_items, __setfield_items, __delfield_items, None) 3675 3676 def iscontainer(self): 3677 return True 3678 3679 def containerelements(self): 3680 yield ('itemcount', self.__field_itemcount, None) 3681 yield ('items', self.__field_items, None) 3682 3683 3684 3685 3686 class recipient_record(BaseProtogenClass): 3687 __fields=['unknown1', 'name', 'number', 'unknown2', 'status', 'unknown3', 'time', 'unknown2'] 3688 3689 def __init__(self, *args, **kwargs): 3690 dict={} 3691 # What was supplied to this function 3692 dict.update(kwargs) 3693 # Parent constructor 3694 super(recipient_record,self).__init__(**dict) 3695 if self.__class__ is recipient_record: 3696 self._update(args,dict) 3697 3698 3699 def getfields(self): 3700 return self.__fields 3701 3702 3703 def _update(self, args, kwargs): 3704 super(recipient_record,self)._update(args,kwargs) 3705 keys=kwargs.keys() 3706 for key in keys: 3707 if key in self.__fields: 3708 setattr(self, key, kwargs[key]) 3709 del kwargs[key] 3710 # Were any unrecognized kwargs passed in? 3711 if __debug__: 3712 self._complainaboutunusedargs(recipient_record,kwargs) 3713 if len(args): raise TypeError('Unexpected arguments supplied: '+`args`) 3714 # Make all P fields that haven't already been constructed 3715 3716 3717 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 3718 'Writes this packet to the supplied buffer' 3719 self._bufferstartoffset=buf.getcurrentoffset() 3720 self.__field_unknown1.writetobuffer(buf) 3721 self.__field_name.writetobuffer(buf) 3722 self.__field_number.writetobuffer(buf) 3723 self.__field_unknown2.writetobuffer(buf) 3724 self.__field_status.writetobuffer(buf) 3725 self.__field_unknown3.writetobuffer(buf) 3726 self.__field_time.writetobuffer(buf) 3727 self.__field_unknown2.writetobuffer(buf) 3728 self._bufferendoffset=buf.getcurrentoffset() 3729 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 3730 3731 3732 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 3733 'Reads this packet from the supplied buffer' 3734 self._bufferstartoffset=buf.getcurrentoffset() 3735 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 3736 self.__field_unknown1=UINT(**{'sizeinbytes': 8}) 3737 self.__field_unknown1.readfrombuffer(buf) 3738 self.__field_name=USTRING(**{'sizeinbytes': 33, 'raiseonunterminatedread': False}) 3739 self.__field_name.readfrombuffer(buf) 3740 self.__field_number=USTRING(**{'sizeinbytes': 49}) 3741 self.__field_number.readfrombuffer(buf) 3742 self.__field_unknown2=UINT(**{'sizeinbytes': 24}) 3743 self.__field_unknown2.readfrombuffer(buf) 3744 self.__field_status=UINT(**{'sizeinbytes': 1}) 3745 self.__field_status.readfrombuffer(buf) 3746 self.__field_unknown3=UINT(**{'sizeinbytes': 1}) 3747 self.__field_unknown3.readfrombuffer(buf) 3748 self.__field_time=LGCALDATE(**{'sizeinbytes': 4}) 3749 self.__field_time.readfrombuffer(buf) 3750 self.__field_unknown2=DATA(**{'sizeinbytes': 12}) 3751 self.__field_unknown2.readfrombuffer(buf) 3752 self._bufferendoffset=buf.getcurrentoffset() 3753 3754 3755 def __getfield_unknown1(self): 3756 return self.__field_unknown1.getvalue() 3757 3758 def __setfield_unknown1(self, value): 3759 if isinstance(value,UINT): 3760 self.__field_unknown1=value 3761 else: 3762 self.__field_unknown1=UINT(value,**{'sizeinbytes': 8}) 3763 3764 def __delfield_unknown1(self): del self.__field_unknown1 3765 3766 unknown1=property(__getfield_unknown1, __setfield_unknown1, __delfield_unknown1, None) 3767 3768 def __getfield_name(self): 3769 return self.__field_name.getvalue() 3770 3771 def __setfield_name(self, value): 3772 if isinstance(value,USTRING): 3773 self.__field_name=value 3774 else: 3775 self.__field_name=USTRING(value,**{'sizeinbytes': 33, 'raiseonunterminatedread': False}) 3776 3777 def __delfield_name(self): del self.__field_name 3778 3779 name=property(__getfield_name, __setfield_name, __delfield_name, None) 3780 3781 def __getfield_number(self): 3782 return self.__field_number.getvalue() 3783 3784 def __setfield_number(self, value): 3785 if isinstance(value,USTRING): 3786 self.__field_number=value 3787 else: 3788 self.__field_number=USTRING(value,**{'sizeinbytes': 49}) 3789 3790 def __delfield_number(self): del self.__field_number 3791 3792 number=property(__getfield_number, __setfield_number, __delfield_number, None) 3793 3794 def __getfield_unknown2(self): 3795 return self.__field_unknown2.getvalue() 3796 3797 def __setfield_unknown2(self, value): 3798 if isinstance(value,UINT): 3799 self.__field_unknown2=value 3800 else: 3801 self.__field_unknown2=UINT(value,**{'sizeinbytes': 24}) 3802 3803 def __delfield_unknown2(self): del self.__field_unknown2 3804 3805 unknown2=property(__getfield_unknown2, __setfield_unknown2, __delfield_unknown2, None) 3806 3807 def __getfield_status(self): 3808 return self.__field_status.getvalue() 3809 3810 def __setfield_status(self, value): 3811 if isinstance(value,UINT): 3812 self.__field_status=value 3813 else: 3814 self.__field_status=UINT(value,**{'sizeinbytes': 1}) 3815 3816 def __delfield_status(self): del self.__field_status 3817 3818 status=property(__getfield_status, __setfield_status, __delfield_status, None) 3819 3820 def __getfield_unknown3(self): 3821 return self.__field_unknown3.getvalue() 3822 3823 def __setfield_unknown3(self, value): 3824 if isinstance(value,UINT): 3825 self.__field_unknown3=value 3826 else: 3827 self.__field_unknown3=UINT(value,**{'sizeinbytes': 1}) 3828 3829 def __delfield_unknown3(self): del self.__field_unknown3 3830 3831 unknown3=property(__getfield_unknown3, __setfield_unknown3, __delfield_unknown3, None) 3832 3833 def __getfield_time(self): 3834 return self.__field_time.getvalue() 3835 3836 def __setfield_time(self, value): 3837 if isinstance(value,LGCALDATE): 3838 self.__field_time=value 3839 else: 3840 self.__field_time=LGCALDATE(value,**{'sizeinbytes': 4}) 3841 3842 def __delfield_time(self): del self.__field_time 3843 3844 time=property(__getfield_time, __setfield_time, __delfield_time, None) 3845 3846 def __getfield_unknown2(self): 3847 return self.__field_unknown2.getvalue() 3848 3849 def __setfield_unknown2(self, value): 3850 if isinstance(value,DATA): 3851 self.__field_unknown2=value 3852 else: 3853 self.__field_unknown2=DATA(value,**{'sizeinbytes': 12}) 3854 3855 def __delfield_unknown2(self): del self.__field_unknown2 3856 3857 unknown2=property(__getfield_unknown2, __setfield_unknown2, __delfield_unknown2, None) 3858 3859 def iscontainer(self): 3860 return True 3861 3862 def containerelements(self): 3863 yield ('unknown1', self.__field_unknown1, None) 3864 yield ('name', self.__field_name, None) 3865 yield ('number', self.__field_number, None) 3866 yield ('unknown2', self.__field_unknown2, None) 3867 yield ('status', self.__field_status, None) 3868 yield ('unknown3', self.__field_unknown3, None) 3869 yield ('time', self.__field_time, None) 3870 yield ('unknown2', self.__field_unknown2, None) 3871 3872 3873 3874 3875 class sms_out(BaseProtogenClass): 3876 __fields=['index', 'locked', 'unknown1', 'timesent', 'saved', 'msg', 'unknown3', 'callback', 'recipients'] 3877 3878 def __init__(self, *args, **kwargs): 3879 dict={} 3880 # What was supplied to this function 3881 dict.update(kwargs) 3882 # Parent constructor 3883 super(sms_out,self).__init__(**dict) 3884 if self.__class__ is sms_out: 3885 self._update(args,dict) 3886 3887 3888 def getfields(self): 3889 return self.__fields 3890 3891 3892 def _update(self, args, kwargs): 3893 super(sms_out,self)._update(args,kwargs) 3894 keys=kwargs.keys() 3895 for key in keys: 3896 if key in self.__fields: 3897 setattr(self, key, kwargs[key]) 3898 del kwargs[key] 3899 # Were any unrecognized kwargs passed in? 3900 if __debug__: 3901 self._complainaboutunusedargs(sms_out,kwargs) 3902 if len(args): raise TypeError('Unexpected arguments supplied: '+`args`) 3903 # Make all P fields that haven't already been constructed 3904 3905 3906 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 3907 'Writes this packet to the supplied buffer' 3908 self._bufferstartoffset=buf.getcurrentoffset() 3909 self.__field_index.writetobuffer(buf) 3910 self.__field_locked.writetobuffer(buf) 3911 self.__field_unknown1.writetobuffer(buf) 3912 self.__field_timesent.writetobuffer(buf) 3913 self.__field_saved.writetobuffer(buf) 3914 self.__field_msg.writetobuffer(buf) 3915 self.__field_unknown3.writetobuffer(buf) 3916 self.__field_callback.writetobuffer(buf) 3917 try: self.__field_recipients 3918 except: 3919 self.__field_recipients=LIST(**{'elementclass': recipient_record, 'length': 10}) 3920 self.__field_recipients.writetobuffer(buf) 3921 self._bufferendoffset=buf.getcurrentoffset() 3922 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 3923 3924 3925 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 3926 'Reads this packet from the supplied buffer' 3927 self._bufferstartoffset=buf.getcurrentoffset() 3928 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 3929 self.__field_index=UINT(**{'sizeinbytes': 4}) 3930 self.__field_index.readfrombuffer(buf) 3931 self.__field_locked=UINT(**{'sizeinbytes': 1}) 3932 self.__field_locked.readfrombuffer(buf) 3933 self.__field_unknown1=UINT(**{'sizeinbytes': 3}) 3934 self.__field_unknown1.readfrombuffer(buf) 3935 self.__field_timesent=LGCALDATE(**{'sizeinbytes': 4}) 3936 self.__field_timesent.readfrombuffer(buf) 3937 self.__field_saved=UINT(**{'sizeinbytes': 1}) 3938 self.__field_saved.readfrombuffer(buf) 3939 self.__field_msg=USTRING(**{'sizeinbytes': 178, 'encoding': PHONE_ENCODING}) 3940 self.__field_msg.readfrombuffer(buf) 3941 self.__field_unknown3=UINT(**{'sizeinbytes': 1}) 3942 self.__field_unknown3.readfrombuffer(buf) 3943 self.__field_callback=USTRING(**{'sizeinbytes': 16}) 3944 self.__field_callback.readfrombuffer(buf) 3945 self.__field_recipients=LIST(**{'elementclass': recipient_record, 'length': 10}) 3946 self.__field_recipients.readfrombuffer(buf) 3947 self._bufferendoffset=buf.getcurrentoffset() 3948 3949 3950 def __getfield_index(self): 3951 return self.__field_index.getvalue() 3952 3953 def __setfield_index(self, value): 3954 if isinstance(value,UINT): 3955 self.__field_index=value 3956 else: 3957 self.__field_index=UINT(value,**{'sizeinbytes': 4}) 3958 3959 def __delfield_index(self): del self.__field_index 3960 3961 index=property(__getfield_index, __setfield_index, __delfield_index, None) 3962 3963 def __getfield_locked(self): 3964 return self.__field_locked.getvalue() 3965 3966 def __setfield_locked(self, value): 3967 if isinstance(value,UINT): 3968 self.__field_locked=value 3969 else: 3970 self.__field_locked=UINT(value,**{'sizeinbytes': 1}) 3971 3972 def __delfield_locked(self): del self.__field_locked 3973 3974 locked=property(__getfield_locked, __setfield_locked, __delfield_locked, None) 3975 3976 def __getfield_unknown1(self): 3977 return self.__field_unknown1.getvalue() 3978 3979 def __setfield_unknown1(self, value): 3980 if isinstance(value,UINT): 3981 self.__field_unknown1=value 3982 else: 3983 self.__field_unknown1=UINT(value,**{'sizeinbytes': 3}) 3984 3985 def __delfield_unknown1(self): del self.__field_unknown1 3986 3987 unknown1=property(__getfield_unknown1, __setfield_unknown1, __delfield_unknown1, None) 3988 3989 def __getfield_timesent(self): 3990 return self.__field_timesent.getvalue() 3991 3992 def __setfield_timesent(self, value): 3993 if isinstance(value,LGCALDATE): 3994 self.__field_timesent=value 3995 else: 3996 self.__field_timesent=LGCALDATE(value,**{'sizeinbytes': 4}) 3997 3998 def __delfield_timesent(self): del self.__field_timesent 3999 4000 timesent=property(__getfield_timesent, __setfield_timesent, __delfield_timesent, None) 4001 4002 def __getfield_saved(self): 4003 return self.__field_saved.getvalue() 4004 4005 def __setfield_saved(self, value): 4006 if isinstance(value,UINT): 4007 self.__field_saved=value 4008 else: 4009 self.__field_saved=UINT(value,**{'sizeinbytes': 1}) 4010 4011 def __delfield_saved(self): del self.__field_saved 4012 4013 saved=property(__getfield_saved, __setfield_saved, __delfield_saved, None) 4014 4015 def __getfield_msg(self): 4016 return self.__field_msg.getvalue() 4017 4018 def __setfield_msg(self, value): 4019 if isinstance(value,USTRING): 4020 self.__field_msg=value 4021 else: 4022 self.__field_msg=USTRING(value,**{'sizeinbytes': 178, 'encoding': PHONE_ENCODING}) 4023 4024 def __delfield_msg(self): del self.__field_msg 4025 4026 msg=property(__getfield_msg, __setfield_msg, __delfield_msg, None) 4027 4028 def __getfield_unknown3(self): 4029 return self.__field_unknown3.getvalue() 4030 4031 def __setfield_unknown3(self, value): 4032 if isinstance(value,UINT): 4033 self.__field_unknown3=value 4034 else: 4035 self.__field_unknown3=UINT(value,**{'sizeinbytes': 1}) 4036 4037 def __delfield_unknown3(self): del self.__field_unknown3 4038 4039 unknown3=property(__getfield_unknown3, __setfield_unknown3, __delfield_unknown3, None) 4040 4041 def __getfield_callback(self): 4042 return self.__field_callback.getvalue() 4043 4044 def __setfield_callback(self, value): 4045 if isinstance(value,USTRING): 4046 self.__field_callback=value 4047 else: 4048 self.__field_callback=USTRING(value,**{'sizeinbytes': 16}) 4049 4050 def __delfield_callback(self): del self.__field_callback 4051 4052 callback=property(__getfield_callback, __setfield_callback, __delfield_callback, None) 4053 4054 def __getfield_recipients(self): 4055 try: self.__field_recipients 4056 except: 4057 self.__field_recipients=LIST(**{'elementclass': recipient_record, 'length': 10}) 4058 return self.__field_recipients.getvalue() 4059 4060 def __setfield_recipients(self, value): 4061 if isinstance(value,LIST): 4062 self.__field_recipients=value 4063 else: 4064 self.__field_recipients=LIST(value,**{'elementclass': recipient_record, 'length': 10}) 4065 4066 def __delfield_recipients(self): del self.__field_recipients 4067 4068 recipients=property(__getfield_recipients, __setfield_recipients, __delfield_recipients, None) 4069 4070 def iscontainer(self): 4071 return True 4072 4073 def containerelements(self): 4074 yield ('index', self.__field_index, None) 4075 yield ('locked', self.__field_locked, None) 4076 yield ('unknown1', self.__field_unknown1, None) 4077 yield ('timesent', self.__field_timesent, None) 4078 yield ('saved', self.__field_saved, None) 4079 yield ('msg', self.__field_msg, None) 4080 yield ('unknown3', self.__field_unknown3, None) 4081 yield ('callback', self.__field_callback, None) 4082 yield ('recipients', self.__field_recipients, None) 4083 4084 4085 4086 4087 class SMSINBOXMSGFRAGMENT(BaseProtogenClass): 4088 __fields=['msg'] 4089 4090 def __init__(self, *args, **kwargs): 4091 dict={} 4092 # What was supplied to this function 4093 dict.update(kwargs) 4094 # Parent constructor 4095 super(SMSINBOXMSGFRAGMENT,self).__init__(**dict) 4096 if self.__class__ is SMSINBOXMSGFRAGMENT: 4097 self._update(args,dict) 4098 4099 4100 def getfields(self): 4101 return self.__fields 4102 4103 4104 def _update(self, args, kwargs): 4105 super(SMSINBOXMSGFRAGMENT,self)._update(args,kwargs) 4106 keys=kwargs.keys() 4107 for key in keys: 4108 if key in self.__fields: 4109 setattr(self, key, kwargs[key]) 4110 del kwargs[key] 4111 # Were any unrecognized kwargs passed in? 4112 if __debug__: 4113 self._complainaboutunusedargs(SMSINBOXMSGFRAGMENT,kwargs) 4114 if len(args): 4115 dict2={'elementclass': _gen_p_lgpm325_349, 'length': 181} 4116 dict2.update(kwargs) 4117 kwargs=dict2 4118 self.__field_msg=LIST(*args,**dict2) 4119 # Make all P fields that haven't already been constructed 4120 4121 4122 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 4123 'Writes this packet to the supplied buffer' 4124 self._bufferstartoffset=buf.getcurrentoffset() 4125 try: self.__field_msg 4126 except: 4127 self.__field_msg=LIST(**{'elementclass': _gen_p_lgpm325_349, 'length': 181}) 4128 self.__field_msg.writetobuffer(buf) 4129 self._bufferendoffset=buf.getcurrentoffset() 4130 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 4131 4132 4133 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 4134 'Reads this packet from the supplied buffer' 4135 self._bufferstartoffset=buf.getcurrentoffset() 4136 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 4137 self.__field_msg=LIST(**{'elementclass': _gen_p_lgpm325_349, 'length': 181}) 4138 self.__field_msg.readfrombuffer(buf) 4139 self._bufferendoffset=buf.getcurrentoffset() 4140 4141 4142 def __getfield_msg(self): 4143 try: self.__field_msg 4144 except: 4145 self.__field_msg=LIST(**{'elementclass': _gen_p_lgpm325_349, 'length': 181}) 4146 return self.__field_msg.getvalue() 4147 4148 def __setfield_msg(self, value): 4149 if isinstance(value,LIST): 4150 self.__field_msg=value 4151 else: 4152 self.__field_msg=LIST(value,**{'elementclass': _gen_p_lgpm325_349, 'length': 181}) 4153 4154 def __delfield_msg(self): del self.__field_msg 4155 4156 msg=property(__getfield_msg, __setfield_msg, __delfield_msg, None) 4157 4158 def iscontainer(self): 4159 return True 4160 4161 def containerelements(self): 4162 yield ('msg', self.__field_msg, None) 4163 4164 4165 4166 4167 class _gen_p_lgpm325_349(BaseProtogenClass): 4168 'Anonymous inner class' 4169 __fields=['byte'] 4170 4171 def __init__(self, *args, **kwargs): 4172 dict={} 4173 # What was supplied to this function 4174 dict.update(kwargs) 4175 # Parent constructor 4176 super(_gen_p_lgpm325_349,self).__init__(**dict) 4177 if self.__class__ is _gen_p_lgpm325_349: 4178 self._update(args,dict) 4179 4180 4181 def getfields(self): 4182 return self.__fields 4183 4184 4185 def _update(self, args, kwargs): 4186 super(_gen_p_lgpm325_349,self)._update(args,kwargs) 4187 keys=kwargs.keys() 4188 for key in keys: 4189 if key in self.__fields: 4190 setattr(self, key, kwargs[key]) 4191 del kwargs[key] 4192 # Were any unrecognized kwargs passed in? 4193 if __debug__: 4194 self._complainaboutunusedargs(_gen_p_lgpm325_349,kwargs) 4195 if len(args): 4196 dict2={'sizeinbytes': 1} 4197 dict2.update(kwargs) 4198 kwargs=dict2 4199 self.__field_byte=UINT(*args,**dict2) 4200 # Make all P fields that haven't already been constructed 4201 4202 4203 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 4204 'Writes this packet to the supplied buffer' 4205 self._bufferstartoffset=buf.getcurrentoffset() 4206 self.__field_byte.writetobuffer(buf) 4207 self._bufferendoffset=buf.getcurrentoffset() 4208 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 4209 4210 4211 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 4212 'Reads this packet from the supplied buffer' 4213 self._bufferstartoffset=buf.getcurrentoffset() 4214 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 4215 self.__field_byte=UINT(**{'sizeinbytes': 1}) 4216 self.__field_byte.readfrombuffer(buf) 4217 self._bufferendoffset=buf.getcurrentoffset() 4218 4219 4220 def __getfield_byte(self): 4221 return self.__field_byte.getvalue() 4222 4223 def __setfield_byte(self, value): 4224 if isinstance(value,UINT): 4225 self.__field_byte=value 4226 else: 4227 self.__field_byte=UINT(value,**{'sizeinbytes': 1}) 4228 4229 def __delfield_byte(self): del self.__field_byte 4230 4231 byte=property(__getfield_byte, __setfield_byte, __delfield_byte, "individual byte of message") 4232 4233 def iscontainer(self): 4234 return True 4235 4236 def containerelements(self): 4237 yield ('byte', self.__field_byte, "individual byte of message") 4238 4239 4240 4241 4242 class sms_in(BaseProtogenClass): 4243 __fields=['unknown1', 'msg_index2', 'unknown2', 'timesent', 'unknown', 'callback_length', 'callback', 'sender_length', 'sender', 'unknown4', 'lg_time', 'GPStime', 'read', 'locked', 'unknown5', 'subject', 'msglength', 'msg', 'unknown8'] 4244 4245 def __init__(self, *args, **kwargs): 4246 dict={} 4247 # What was supplied to this function 4248 dict.update(kwargs) 4249 # Parent constructor 4250 super(sms_in,self).__init__(**dict) 4251 if self.__class__ is sms_in: 4252 self._update(args,dict) 4253 4254 4255 def getfields(self): 4256 return self.__fields 4257 4258 4259 def _update(self, args, kwargs): 4260 super(sms_in,self)._update(args,kwargs) 4261 keys=kwargs.keys() 4262 for key in keys: 4263 if key in self.__fields: 4264 setattr(self, key, kwargs[key]) 4265 del kwargs[key] 4266 # Were any unrecognized kwargs passed in? 4267 if __debug__: 4268 self._complainaboutunusedargs(sms_in,kwargs) 4269 if len(args): raise TypeError('Unexpected arguments supplied: '+`args`) 4270 # Make all P fields that haven't already been constructed 4271 4272 4273 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 4274 'Writes this packet to the supplied buffer' 4275 self._bufferstartoffset=buf.getcurrentoffset() 4276 self.__field_unknown1.writetobuffer(buf) 4277 self.__field_msg_index2.writetobuffer(buf) 4278 self.__field_unknown2.writetobuffer(buf) 4279 self.__field_timesent.writetobuffer(buf) 4280 self.__field_unknown.writetobuffer(buf) 4281 self.__field_callback_length.writetobuffer(buf) 4282 self.__field_callback.writetobuffer(buf) 4283 self.__field_sender_length.writetobuffer(buf) 4284 try: self.__field_sender 4285 except: 4286 self.__field_sender=LIST(**{'elementclass': _gen_p_lgpm325_361, 'length': 38}) 4287 self.__field_sender.writetobuffer(buf) 4288 self.__field_unknown4.writetobuffer(buf) 4289 self.__field_lg_time.writetobuffer(buf) 4290 self.__field_GPStime.writetobuffer(buf) 4291 self.__field_read.writetobuffer(buf) 4292 self.__field_locked.writetobuffer(buf) 4293 self.__field_unknown5.writetobuffer(buf) 4294 self.__field_subject.writetobuffer(buf) 4295 self.__field_msglength.writetobuffer(buf) 4296 self.__field_msg.writetobuffer(buf) 4297 self.__field_unknown8.writetobuffer(buf) 4298 self._bufferendoffset=buf.getcurrentoffset() 4299 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 4300 4301 4302 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 4303 'Reads this packet from the supplied buffer' 4304 self._bufferstartoffset=buf.getcurrentoffset() 4305 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 4306 self.__field_unknown1=UINT(**{'sizeinbytes': 4}) 4307 self.__field_unknown1.readfrombuffer(buf) 4308 self.__field_msg_index2=UINT(**{'sizeinbytes': 4}) 4309 self.__field_msg_index2.readfrombuffer(buf) 4310 self.__field_unknown2=UINT(**{'sizeinbytes': 2}) 4311 self.__field_unknown2.readfrombuffer(buf) 4312 self.__field_timesent=SMSDATE(**{'sizeinbytes': 6}) 4313 self.__field_timesent.readfrombuffer(buf) 4314 self.__field_unknown=UINT(**{'sizeinbytes': 3}) 4315 self.__field_unknown.readfrombuffer(buf) 4316 self.__field_callback_length=UINT(**{'sizeinbytes': 1}) 4317 self.__field_callback_length.readfrombuffer(buf) 4318 self.__field_callback=USTRING(**{'sizeinbytes': 38}) 4319 self.__field_callback.readfrombuffer(buf) 4320 self.__field_sender_length=UINT(**{'sizeinbytes': 1}) 4321 self.__field_sender_length.readfrombuffer(buf) 4322 self.__field_sender=LIST(**{'elementclass': _gen_p_lgpm325_361, 'length': 38}) 4323 self.__field_sender.readfrombuffer(buf) 4324 self.__field_unknown4=DATA(**{'sizeinbytes': 15}) 4325 self.__field_unknown4.readfrombuffer(buf) 4326 self.__field_lg_time=LGCALDATE(**{'sizeinbytes': 4}) 4327 self.__field_lg_time.readfrombuffer(buf) 4328 self.__field_GPStime=GPSDATE(**{'sizeinbytes': 4}) 4329 self.__field_GPStime.readfrombuffer(buf) 4330 self.__field_read=UINT(**{'sizeinbytes': 2}) 4331 self.__field_read.readfrombuffer(buf) 4332 self.__field_locked=UINT(**{'sizeinbytes': 1}) 4333 self.__field_locked.readfrombuffer(buf) 4334 self.__field_unknown5=UINT(**{'sizeinbytes': 8}) 4335 self.__field_unknown5.readfrombuffer(buf) 4336 self.__field_subject=USTRING(**{'sizeinbytes': 73, 'encoding': PHONE_ENCODING}) 4337 self.__field_subject.readfrombuffer(buf) 4338 self.__field_msglength=UINT(**{'sizeinbytes': 2}) 4339 self.__field_msglength.readfrombuffer(buf) 4340 self.__field_msg=USTRING(**{'sizeinbytes': 200, 'encoding': PHONE_ENCODING}) 4341 self.__field_msg.readfrombuffer(buf) 4342 self.__field_unknown8=DATA() 4343 self.__field_unknown8.readfrombuffer(buf) 4344 self._bufferendoffset=buf.getcurrentoffset() 4345 4346 4347 def __getfield_unknown1(self): 4348 return self.__field_unknown1.getvalue() 4349 4350 def __setfield_unknown1(self, value): 4351 if isinstance(value,UINT): 4352 self.__field_unknown1=value 4353 else: 4354 self.__field_unknown1=UINT(value,**{'sizeinbytes': 4}) 4355 4356 def __delfield_unknown1(self): del self.__field_unknown1 4357 4358 unknown1=property(__getfield_unknown1, __setfield_unknown1, __delfield_unknown1, None) 4359 4360 def __getfield_msg_index2(self): 4361 return self.__field_msg_index2.getvalue() 4362 4363 def __setfield_msg_index2(self, value): 4364 if isinstance(value,UINT): 4365 self.__field_msg_index2=value 4366 else: 4367 self.__field_msg_index2=UINT(value,**{'sizeinbytes': 4}) 4368 4369 def __delfield_msg_index2(self): del self.__field_msg_index2 4370 4371 msg_index2=property(__getfield_msg_index2, __setfield_msg_index2, __delfield_msg_index2, None) 4372 4373 def __getfield_unknown2(self): 4374 return self.__field_unknown2.getvalue() 4375 4376 def __setfield_unknown2(self, value): 4377 if isinstance(value,UINT): 4378 self.__field_unknown2=value 4379 else: 4380 self.__field_unknown2=UINT(value,**{'sizeinbytes': 2}) 4381 4382 def __delfield_unknown2(self): del self.__field_unknown2 4383 4384 unknown2=property(__getfield_unknown2, __setfield_unknown2, __delfield_unknown2, None) 4385 4386 def __getfield_timesent(self): 4387 return self.__field_timesent.getvalue() 4388 4389 def __setfield_timesent(self, value): 4390 if isinstance(value,SMSDATE): 4391 self.__field_timesent=value 4392 else: 4393 self.__field_timesent=SMSDATE(value,**{'sizeinbytes': 6}) 4394 4395 def __delfield_timesent(self): del self.__field_timesent 4396 4397 timesent=property(__getfield_timesent, __setfield_timesent, __delfield_timesent, None) 4398 4399 def __getfield_unknown(self): 4400 return self.__field_unknown.getvalue() 4401 4402 def __setfield_unknown(self, value): 4403 if isinstance(value,UINT): 4404 self.__field_unknown=value 4405 else: 4406 self.__field_unknown=UINT(value,**{'sizeinbytes': 3}) 4407 4408 def __delfield_unknown(self): del self.__field_unknown 4409 4410 unknown=property(__getfield_unknown, __setfield_unknown, __delfield_unknown, None) 4411 4412 def __getfield_callback_length(self): 4413 return self.__field_callback_length.getvalue() 4414 4415 def __setfield_callback_length(self, value): 4416 if isinstance(value,UINT): 4417 self.__field_callback_length=value 4418 else: 4419 self.__field_callback_length=UINT(value,**{'sizeinbytes': 1}) 4420 4421 def __delfield_callback_length(self): del self.__field_callback_length 4422 4423 callback_length=property(__getfield_callback_length, __setfield_callback_length, __delfield_callback_length, None) 4424 4425 def __getfield_callback(self): 4426 return self.__field_callback.getvalue() 4427 4428 def __setfield_callback(self, value): 4429 if isinstance(value,USTRING): 4430 self.__field_callback=value 4431 else: 4432 self.__field_callback=USTRING(value,**{'sizeinbytes': 38}) 4433 4434 def __delfield_callback(self): del self.__field_callback 4435 4436 callback=property(__getfield_callback, __setfield_callback, __delfield_callback, None) 4437 4438 def __getfield_sender_length(self): 4439 return self.__field_sender_length.getvalue() 4440 4441 def __setfield_sender_length(self, value): 4442 if isinstance(value,UINT): 4443 self.__field_sender_length=value 4444 else: 4445 self.__field_sender_length=UINT(value,**{'sizeinbytes': 1}) 4446 4447 def __delfield_sender_length(self): del self.__field_sender_length 4448 4449 sender_length=property(__getfield_sender_length, __setfield_sender_length, __delfield_sender_length, None) 4450 4451 def __getfield_sender(self): 4452 try: self.__field_sender 4453 except: 4454 self.__field_sender=LIST(**{'elementclass': _gen_p_lgpm325_361, 'length': 38}) 4455 return self.__field_sender.getvalue() 4456 4457 def __setfield_sender(self, value): 4458 if isinstance(value,LIST): 4459 self.__field_sender=value 4460 else: 4461 self.__field_sender=LIST(value,**{'elementclass': _gen_p_lgpm325_361, 'length': 38}) 4462 4463 def __delfield_sender(self): del self.__field_sender 4464 4465 sender=property(__getfield_sender, __setfield_sender, __delfield_sender, None) 4466 4467 def __getfield_unknown4(self): 4468 return self.__field_unknown4.getvalue() 4469 4470 def __setfield_unknown4(self, value): 4471 if isinstance(value,DATA): 4472 self.__field_unknown4=value 4473 else: 4474 self.__field_unknown4=DATA(value,**{'sizeinbytes': 15}) 4475 4476 def __delfield_unknown4(self): del self.__field_unknown4 4477 4478 unknown4=property(__getfield_unknown4, __setfield_unknown4, __delfield_unknown4, None) 4479 4480 def __getfield_lg_time(self): 4481 return self.__field_lg_time.getvalue() 4482 4483 def __setfield_lg_time(self, value): 4484 if isinstance(value,LGCALDATE): 4485 self.__field_lg_time=value 4486 else: 4487 self.__field_lg_time=LGCALDATE(value,**{'sizeinbytes': 4}) 4488 4489 def __delfield_lg_time(self): del self.__field_lg_time 4490 4491 lg_time=property(__getfield_lg_time, __setfield_lg_time, __delfield_lg_time, None) 4492 4493 def __getfield_GPStime(self): 4494 return self.__field_GPStime.getvalue() 4495 4496 def __setfield_GPStime(self, value): 4497 if isinstance(value,GPSDATE): 4498 self.__field_GPStime=value 4499 else: 4500 self.__field_GPStime=GPSDATE(value,**{'sizeinbytes': 4}) 4501 4502 def __delfield_GPStime(self): del self.__field_GPStime 4503 4504 GPStime=property(__getfield_GPStime, __setfield_GPStime, __delfield_GPStime, None) 4505 4506 def __getfield_read(self): 4507 return self.__field_read.getvalue() 4508 4509 def __setfield_read(self, value): 4510 if isinstance(value,UINT): 4511 self.__field_read=value 4512 else: 4513 self.__field_read=UINT(value,**{'sizeinbytes': 2}) 4514 4515 def __delfield_read(self): del self.__field_read 4516 4517 read=property(__getfield_read, __setfield_read, __delfield_read, None) 4518 4519 def __getfield_locked(self): 4520 return self.__field_locked.getvalue() 4521 4522 def __setfield_locked(self, value): 4523 if isinstance(value,UINT): 4524 self.__field_locked=value 4525 else: 4526 self.__field_locked=UINT(value,**{'sizeinbytes': 1}) 4527 4528 def __delfield_locked(self): del self.__field_locked 4529 4530 locked=property(__getfield_locked, __setfield_locked, __delfield_locked, None) 4531 4532 def __getfield_unknown5(self): 4533 return self.__field_unknown5.getvalue() 4534 4535 def __setfield_unknown5(self, value): 4536 if isinstance(value,UINT): 4537 self.__field_unknown5=value 4538 else: 4539 self.__field_unknown5=UINT(value,**{'sizeinbytes': 8}) 4540 4541 def __delfield_unknown5(self): del self.__field_unknown5 4542 4543 unknown5=property(__getfield_unknown5, __setfield_unknown5, __delfield_unknown5, None) 4544 4545 def __getfield_subject(self): 4546 return self.__field_subject.getvalue() 4547 4548 def __setfield_subject(self, value): 4549 if isinstance(value,USTRING): 4550 self.__field_subject=value 4551 else: 4552 self.__field_subject=USTRING(value,**{'sizeinbytes': 73, 'encoding': PHONE_ENCODING}) 4553 4554 def __delfield_subject(self): del self.__field_subject 4555 4556 subject=property(__getfield_subject, __setfield_subject, __delfield_subject, None) 4557 4558 def __getfield_msglength(self): 4559 return self.__field_msglength.getvalue() 4560 4561 def __setfield_msglength(self, value): 4562 if isinstance(value,UINT): 4563 self.__field_msglength=value 4564 else: 4565 self.__field_msglength=UINT(value,**{'sizeinbytes': 2}) 4566 4567 def __delfield_msglength(self): del self.__field_msglength 4568 4569 msglength=property(__getfield_msglength, __setfield_msglength, __delfield_msglength, None) 4570 4571 def __getfield_msg(self): 4572 return self.__field_msg.getvalue() 4573 4574 def __setfield_msg(self, value): 4575 if isinstance(value,USTRING): 4576 self.__field_msg=value 4577 else: 4578 self.__field_msg=USTRING(value,**{'sizeinbytes': 200, 'encoding': PHONE_ENCODING}) 4579 4580 def __delfield_msg(self): del self.__field_msg 4581 4582 msg=property(__getfield_msg, __setfield_msg, __delfield_msg, None) 4583 4584 def __getfield_unknown8(self): 4585 return self.__field_unknown8.getvalue() 4586 4587 def __setfield_unknown8(self, value): 4588 if isinstance(value,DATA): 4589 self.__field_unknown8=value 4590 else: 4591 self.__field_unknown8=DATA(value,) 4592 4593 def __delfield_unknown8(self): del self.__field_unknown8 4594 4595 unknown8=property(__getfield_unknown8, __setfield_unknown8, __delfield_unknown8, None) 4596 4597 def iscontainer(self): 4598 return True 4599 4600 def containerelements(self): 4601 yield ('unknown1', self.__field_unknown1, None) 4602 yield ('msg_index2', self.__field_msg_index2, None) 4603 yield ('unknown2', self.__field_unknown2, None) 4604 yield ('timesent', self.__field_timesent, None) 4605 yield ('unknown', self.__field_unknown, None) 4606 yield ('callback_length', self.__field_callback_length, None) 4607 yield ('callback', self.__field_callback, None) 4608 yield ('sender_length', self.__field_sender_length, None) 4609 yield ('sender', self.__field_sender, None) 4610 yield ('unknown4', self.__field_unknown4, None) 4611 yield ('lg_time', self.__field_lg_time, None) 4612 yield ('GPStime', self.__field_GPStime, None) 4613 yield ('read', self.__field_read, None) 4614 yield ('locked', self.__field_locked, None) 4615 yield ('unknown5', self.__field_unknown5, None) 4616 yield ('subject', self.__field_subject, None) 4617 yield ('msglength', self.__field_msglength, None) 4618 yield ('msg', self.__field_msg, None) 4619 yield ('unknown8', self.__field_unknown8, None) 4620 4621 4622 4623 4624 class _gen_p_lgpm325_361(BaseProtogenClass): 4625 'Anonymous inner class' 4626 __fields=['byte'] 4627 4628 def __init__(self, *args, **kwargs): 4629 dict={} 4630 # What was supplied to this function 4631 dict.update(kwargs) 4632 # Parent constructor 4633 super(_gen_p_lgpm325_361,self).__init__(**dict) 4634 if self.__class__ is _gen_p_lgpm325_361: 4635 self._update(args,dict) 4636 4637 4638 def getfields(self): 4639 return self.__fields 4640 4641 4642 def _update(self, args, kwargs): 4643 super(_gen_p_lgpm325_361,self)._update(args,kwargs) 4644 keys=kwargs.keys() 4645 for key in keys: 4646 if key in self.__fields: 4647 setattr(self, key, kwargs[key]) 4648 del kwargs[key] 4649 # Were any unrecognized kwargs passed in? 4650 if __debug__: 4651 self._complainaboutunusedargs(_gen_p_lgpm325_361,kwargs) 4652 if len(args): 4653 dict2={'sizeinbytes': 1} 4654 dict2.update(kwargs) 4655 kwargs=dict2 4656 self.__field_byte=UINT(*args,**dict2) 4657 # Make all P fields that haven't already been constructed 4658 4659 4660 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 4661 'Writes this packet to the supplied buffer' 4662 self._bufferstartoffset=buf.getcurrentoffset() 4663 self.__field_byte.writetobuffer(buf) 4664 self._bufferendoffset=buf.getcurrentoffset() 4665 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 4666 4667 4668 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 4669 'Reads this packet from the supplied buffer' 4670 self._bufferstartoffset=buf.getcurrentoffset() 4671 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 4672 self.__field_byte=UINT(**{'sizeinbytes': 1}) 4673 self.__field_byte.readfrombuffer(buf) 4674 self._bufferendoffset=buf.getcurrentoffset() 4675 4676 4677 def __getfield_byte(self): 4678 return self.__field_byte.getvalue() 4679 4680 def __setfield_byte(self, value): 4681 if isinstance(value,UINT): 4682 self.__field_byte=value 4683 else: 4684 self.__field_byte=UINT(value,**{'sizeinbytes': 1}) 4685 4686 def __delfield_byte(self): del self.__field_byte 4687 4688 byte=property(__getfield_byte, __setfield_byte, __delfield_byte, "individual byte of senders phone number") 4689 4690 def iscontainer(self): 4691 return True 4692 4693 def containerelements(self): 4694 yield ('byte', self.__field_byte, "individual byte of senders phone number") 4695 4696 4697 4698 4699 class sms_quick_text(BaseProtogenClass): 4700 __fields=['dunno', 'msg'] 4701 4702 def __init__(self, *args, **kwargs): 4703 dict={} 4704 # What was supplied to this function 4705 dict.update(kwargs) 4706 # Parent constructor 4707 super(sms_quick_text,self).__init__(**dict) 4708 if self.__class__ is sms_quick_text: 4709 self._update(args,dict) 4710 4711 4712 def getfields(self): 4713 return self.__fields 4714 4715 4716 def _update(self, args, kwargs): 4717 super(sms_quick_text,self)._update(args,kwargs) 4718 keys=kwargs.keys() 4719 for key in keys: 4720 if key in self.__fields: 4721 setattr(self, key, kwargs[key]) 4722 del kwargs[key] 4723 # Were any unrecognized kwargs passed in? 4724 if __debug__: 4725 self._complainaboutunusedargs(sms_quick_text,kwargs) 4726 if len(args): raise TypeError('Unexpected arguments supplied: '+`args`) 4727 # Make all P fields that haven't already been constructed 4728 4729 4730 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 4731 'Writes this packet to the supplied buffer' 4732 self._bufferstartoffset=buf.getcurrentoffset() 4733 try: self.__field_dunno 4734 except: 4735 self.__field_dunno=UINT(**{'sizeinbytes': 4, 'default': 0}) 4736 self.__field_dunno.writetobuffer(buf) 4737 try: self.__field_msg 4738 except: 4739 self.__field_msg=USTRING(**{'sizeinbytes': 104, 'encoding': PHONE_ENCODING, 'default': ""}) 4740 self.__field_msg.writetobuffer(buf) 4741 self._bufferendoffset=buf.getcurrentoffset() 4742 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 4743 4744 4745 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 4746 'Reads this packet from the supplied buffer' 4747 self._bufferstartoffset=buf.getcurrentoffset() 4748 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 4749 self.__field_dunno=UINT(**{'sizeinbytes': 4, 'default': 0}) 4750 self.__field_dunno.readfrombuffer(buf) 4751 self.__field_msg=USTRING(**{'sizeinbytes': 104, 'encoding': PHONE_ENCODING, 'default': ""}) 4752 self.__field_msg.readfrombuffer(buf) 4753 self._bufferendoffset=buf.getcurrentoffset() 4754 4755 4756 def __getfield_dunno(self): 4757 try: self.__field_dunno 4758 except: 4759 self.__field_dunno=UINT(**{'sizeinbytes': 4, 'default': 0}) 4760 return self.__field_dunno.getvalue() 4761 4762 def __setfield_dunno(self, value): 4763 if isinstance(value,UINT): 4764 self.__field_dunno=value 4765 else: 4766 self.__field_dunno=UINT(value,**{'sizeinbytes': 4, 'default': 0}) 4767 4768 def __delfield_dunno(self): del self.__field_dunno 4769 4770 dunno=property(__getfield_dunno, __setfield_dunno, __delfield_dunno, None) 4771 4772 def __getfield_msg(self): 4773 try: self.__field_msg 4774 except: 4775 self.__field_msg=USTRING(**{'sizeinbytes': 104, 'encoding': PHONE_ENCODING, 'default': ""}) 4776 return self.__field_msg.getvalue() 4777 4778 def __setfield_msg(self, value): 4779 if isinstance(value,USTRING): 4780 self.__field_msg=value 4781 else: 4782 self.__field_msg=USTRING(value,**{'sizeinbytes': 104, 'encoding': PHONE_ENCODING, 'default': ""}) 4783 4784 def __delfield_msg(self): del self.__field_msg 4785 4786 msg=property(__getfield_msg, __setfield_msg, __delfield_msg, None) 4787 4788 def iscontainer(self): 4789 return True 4790 4791 def containerelements(self): 4792 yield ('dunno', self.__field_dunno, None) 4793 yield ('msg', self.__field_msg, None) 4794 4795 4796 4797 4798 class sms_canned_file(BaseProtogenClass): 4799 __fields=['num_active', 'msgs'] 4800 4801 def __init__(self, *args, **kwargs): 4802 dict={} 4803 # What was supplied to this function 4804 dict.update(kwargs) 4805 # Parent constructor 4806 super(sms_canned_file,self).__init__(**dict) 4807 if self.__class__ is sms_canned_file: 4808 self._update(args,dict) 4809 4810 4811 def getfields(self): 4812 return self.__fields 4813 4814 4815 def _update(self, args, kwargs): 4816 super(sms_canned_file,self)._update(args,kwargs) 4817 keys=kwargs.keys() 4818 for key in keys: 4819 if key in self.__fields: 4820 setattr(self, key, kwargs[key]) 4821 del kwargs[key] 4822 # Were any unrecognized kwargs passed in? 4823 if __debug__: 4824 self._complainaboutunusedargs(sms_canned_file,kwargs) 4825 if len(args): raise TypeError('Unexpected arguments supplied: '+`args`) 4826 # Make all P fields that haven't already been constructed 4827 4828 4829 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 4830 'Writes this packet to the supplied buffer' 4831 self._bufferstartoffset=buf.getcurrentoffset() 4832 self.__field_num_active.writetobuffer(buf) 4833 try: self.__field_msgs 4834 except: 4835 self.__field_msgs=LIST(**{'length': SMS_CANNED_MAX_ITEMS, 'createdefault': True, 'elementclass': sms_quick_text}) 4836 self.__field_msgs.writetobuffer(buf) 4837 self._bufferendoffset=buf.getcurrentoffset() 4838 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 4839 4840 4841 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 4842 'Reads this packet from the supplied buffer' 4843 self._bufferstartoffset=buf.getcurrentoffset() 4844 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 4845 self.__field_num_active=UINT(**{'sizeinbytes': 4}) 4846 self.__field_num_active.readfrombuffer(buf) 4847 self.__field_msgs=LIST(**{'length': SMS_CANNED_MAX_ITEMS, 'createdefault': True, 'elementclass': sms_quick_text}) 4848 self.__field_msgs.readfrombuffer(buf) 4849 self._bufferendoffset=buf.getcurrentoffset() 4850 4851 4852 def __getfield_num_active(self): 4853 return self.__field_num_active.getvalue() 4854 4855 def __setfield_num_active(self, value): 4856 if isinstance(value,UINT): 4857 self.__field_num_active=value 4858 else: 4859 self.__field_num_active=UINT(value,**{'sizeinbytes': 4}) 4860 4861 def __delfield_num_active(self): del self.__field_num_active 4862 4863 num_active=property(__getfield_num_active, __setfield_num_active, __delfield_num_active, None) 4864 4865 def __getfield_msgs(self): 4866 try: self.__field_msgs 4867 except: 4868 self.__field_msgs=LIST(**{'length': SMS_CANNED_MAX_ITEMS, 'createdefault': True, 'elementclass': sms_quick_text}) 4869 return self.__field_msgs.getvalue() 4870 4871 def __setfield_msgs(self, value): 4872 if isinstance(value,LIST): 4873 self.__field_msgs=value 4874 else: 4875 self.__field_msgs=LIST(value,**{'length': SMS_CANNED_MAX_ITEMS, 'createdefault': True, 'elementclass': sms_quick_text}) 4876 4877 def __delfield_msgs(self): del self.__field_msgs 4878 4879 msgs=property(__getfield_msgs, __setfield_msgs, __delfield_msgs, None) 4880 4881 def iscontainer(self): 4882 return True 4883 4884 def containerelements(self): 4885 yield ('num_active', self.__field_num_active, None) 4886 yield ('msgs', self.__field_msgs, None) 4887 4888 4889 4890 4891
Generated by PyXR 0.9.4