0001 # THIS FILE IS AUTOMATICALLY GENERATED. EDIT THE SOURCE FILE NOT THIS ONE 0002 0003 """Various descriptions of data specific to LG VX9400""" 0004 0005 from prototypes import * 0006 from prototypeslg import * 0007 0008 # Make all lg stuff available in this module as well 0009 from p_lg import * 0010 0011 # we are the same as lgvx9900 except as noted 0012 # below 0013 from p_lgvx9900 import * 0014 0015 BREW_FILE_SYSTEM = 2 0016 BREW_READ_SIZE = 0x400 0017 BREW_WRITE_SIZE = 0x1F00 0018 0019 # We use LSB for all integer like fields 0020 UINT=UINTlsb 0021 BOOL=BOOLlsb 0022 0023 CALENDAR_HAS_SEPARATE_END_TIME_AND_DATE=1 0024 0025 # Phonebook stuff 0026 RTPathIndexFile='pim/pbRingIdSetAsPath.dat' 0027 WPPathIndexFile='pim/pbPictureIdSetAsPath.dat' 0028 pb_file_name='pim/pbentry.dat' 0029 0030 class scheduleevent(BaseProtogenClass): 0031 __fields=['pos', 'description', 'cdate', 'mdate', 'start', 'end_time', 'end_date', 'repeat', 'alarmindex_vibrate', 'ringtone', 'unknown1', 'alarmminutes', 'alarmhours', 'unknown2', 'unknown3', 'unknown4', 'serial_number'] 0032 0033 def __init__(self, *args, **kwargs): 0034 dict={} 0035 # What was supplied to this function 0036 dict.update(kwargs) 0037 # Parent constructor 0038 super(scheduleevent,self).__init__(**dict) 0039 if self.__class__ is scheduleevent: 0040 self._update(args,dict) 0041 0042 0043 def getfields(self): 0044 return self.__fields 0045 0046 0047 def _update(self, args, kwargs): 0048 super(scheduleevent,self)._update(args,kwargs) 0049 keys=kwargs.keys() 0050 for key in keys: 0051 if key in self.__fields: 0052 setattr(self, key, kwargs[key]) 0053 del kwargs[key] 0054 # Were any unrecognized kwargs passed in? 0055 if __debug__: 0056 self._complainaboutunusedargs(scheduleevent,kwargs) 0057 if len(args): raise TypeError('Unexpected arguments supplied: '+`args`) 0058 # Make all P fields that haven't already been constructed 0059 0060 0061 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 0062 'Writes this packet to the supplied buffer' 0063 self._bufferstartoffset=buf.getcurrentoffset() 0064 self.__field_pos.writetobuffer(buf) 0065 self.__field_description.writetobuffer(buf) 0066 try: self.__field_cdate 0067 except: 0068 self.__field_cdate=GPSDATE(**{'sizeinbytes': 4, 'default': GPSDATE.now() }) 0069 self.__field_cdate.writetobuffer(buf) 0070 try: self.__field_mdate 0071 except: 0072 self.__field_mdate=GPSDATE(**{'sizeinbytes': 4, 'default': GPSDATE.now() }) 0073 self.__field_mdate.writetobuffer(buf) 0074 self.__field_start.writetobuffer(buf) 0075 self.__field_end_time.writetobuffer(buf) 0076 self.__field_end_date.writetobuffer(buf) 0077 self.__field_repeat.writetobuffer(buf) 0078 self.__field_alarmindex_vibrate.writetobuffer(buf) 0079 self.__field_ringtone.writetobuffer(buf) 0080 self.__field_unknown1.writetobuffer(buf) 0081 self.__field_alarmminutes.writetobuffer(buf) 0082 self.__field_alarmhours.writetobuffer(buf) 0083 try: self.__field_unknown2 0084 except: 0085 self.__field_unknown2=UINT(**{'sizeinbytes': 1, 'default': 0 }) 0086 self.__field_unknown2.writetobuffer(buf) 0087 try: self.__field_unknown3 0088 except: 0089 self.__field_unknown3=UINT(**{'sizeinbytes': 2, 'default': 0 }) 0090 self.__field_unknown3.writetobuffer(buf) 0091 try: self.__field_unknown4 0092 except: 0093 self.__field_unknown4=USTRING(**{'sizeinbytes': 256, 'default': '', 'encoding': PHONE_ENCODING, 'raiseonunterminatedread': False, 'raiseontruncate': False }) 0094 self.__field_unknown4.writetobuffer(buf) 0095 try: self.__field_serial_number 0096 except: 0097 self.__field_serial_number=USTRING(**{'sizeinbytes': 64, 'default': '000000c9-00000000-00000000-T9MVZV02', 'encoding': PHONE_ENCODING, 'raiseonunterminatedread': False, 'raiseontruncate': False }) 0098 self.__field_serial_number.writetobuffer(buf) 0099 self._bufferendoffset=buf.getcurrentoffset() 0100 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 0101 0102 0103 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 0104 'Reads this packet from the supplied buffer' 0105 self._bufferstartoffset=buf.getcurrentoffset() 0106 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 0107 self.__field_pos=UINT(**{'sizeinbytes': 4}) 0108 self.__field_pos.readfrombuffer(buf) 0109 self.__field_description=USTRING(**{'sizeinbytes': 33, 'encoding': PHONE_ENCODING, 'raiseonunterminatedread': False, 'raiseontruncate': False }) 0110 self.__field_description.readfrombuffer(buf) 0111 self.__field_cdate=GPSDATE(**{'sizeinbytes': 4, 'default': GPSDATE.now() }) 0112 self.__field_cdate.readfrombuffer(buf) 0113 self.__field_mdate=GPSDATE(**{'sizeinbytes': 4, 'default': GPSDATE.now() }) 0114 self.__field_mdate.readfrombuffer(buf) 0115 self.__field_start=LGCALDATE(**{'sizeinbytes': 4}) 0116 self.__field_start.readfrombuffer(buf) 0117 self.__field_end_time=LGCALDATE(**{'sizeinbytes': 4}) 0118 self.__field_end_time.readfrombuffer(buf) 0119 self.__field_end_date=LGCALDATE(**{'sizeinbytes': 4}) 0120 self.__field_end_date.readfrombuffer(buf) 0121 self.__field_repeat=LGCALREPEAT(**{'sizeinbytes': 4}) 0122 self.__field_repeat.readfrombuffer(buf) 0123 self.__field_alarmindex_vibrate=UINT(**{'sizeinbytes': 1}) 0124 self.__field_alarmindex_vibrate.readfrombuffer(buf) 0125 self.__field_ringtone=UINT(**{'sizeinbytes': 1}) 0126 self.__field_ringtone.readfrombuffer(buf) 0127 self.__field_unknown1=UINT(**{'sizeinbytes': 1}) 0128 self.__field_unknown1.readfrombuffer(buf) 0129 self.__field_alarmminutes=UINT(**{'sizeinbytes': 1}) 0130 self.__field_alarmminutes.readfrombuffer(buf) 0131 self.__field_alarmhours=UINT(**{'sizeinbytes': 1}) 0132 self.__field_alarmhours.readfrombuffer(buf) 0133 self.__field_unknown2=UINT(**{'sizeinbytes': 1, 'default': 0 }) 0134 self.__field_unknown2.readfrombuffer(buf) 0135 self.__field_unknown3=UINT(**{'sizeinbytes': 2, 'default': 0 }) 0136 self.__field_unknown3.readfrombuffer(buf) 0137 self.__field_unknown4=USTRING(**{'sizeinbytes': 256, 'default': '', 'encoding': PHONE_ENCODING, 'raiseonunterminatedread': False, 'raiseontruncate': False }) 0138 self.__field_unknown4.readfrombuffer(buf) 0139 self.__field_serial_number=USTRING(**{'sizeinbytes': 64, 'default': '000000c9-00000000-00000000-T9MVZV02', 'encoding': PHONE_ENCODING, 'raiseonunterminatedread': False, 'raiseontruncate': False }) 0140 self.__field_serial_number.readfrombuffer(buf) 0141 self._bufferendoffset=buf.getcurrentoffset() 0142 0143 0144 def __getfield_pos(self): 0145 return self.__field_pos.getvalue() 0146 0147 def __setfield_pos(self, value): 0148 if isinstance(value,UINT): 0149 self.__field_pos=value 0150 else: 0151 self.__field_pos=UINT(value,**{'sizeinbytes': 4}) 0152 0153 def __delfield_pos(self): del self.__field_pos 0154 0155 pos=property(__getfield_pos, __setfield_pos, __delfield_pos, "position within file, used as an event id") 0156 0157 def __getfield_description(self): 0158 return self.__field_description.getvalue() 0159 0160 def __setfield_description(self, value): 0161 if isinstance(value,USTRING): 0162 self.__field_description=value 0163 else: 0164 self.__field_description=USTRING(value,**{'sizeinbytes': 33, 'encoding': PHONE_ENCODING, 'raiseonunterminatedread': False, 'raiseontruncate': False }) 0165 0166 def __delfield_description(self): del self.__field_description 0167 0168 description=property(__getfield_description, __setfield_description, __delfield_description, None) 0169 0170 def __getfield_cdate(self): 0171 try: self.__field_cdate 0172 except: 0173 self.__field_cdate=GPSDATE(**{'sizeinbytes': 4, 'default': GPSDATE.now() }) 0174 return self.__field_cdate.getvalue() 0175 0176 def __setfield_cdate(self, value): 0177 if isinstance(value,GPSDATE): 0178 self.__field_cdate=value 0179 else: 0180 self.__field_cdate=GPSDATE(value,**{'sizeinbytes': 4, 'default': GPSDATE.now() }) 0181 0182 def __delfield_cdate(self): del self.__field_cdate 0183 0184 cdate=property(__getfield_cdate, __setfield_cdate, __delfield_cdate, None) 0185 0186 def __getfield_mdate(self): 0187 try: self.__field_mdate 0188 except: 0189 self.__field_mdate=GPSDATE(**{'sizeinbytes': 4, 'default': GPSDATE.now() }) 0190 return self.__field_mdate.getvalue() 0191 0192 def __setfield_mdate(self, value): 0193 if isinstance(value,GPSDATE): 0194 self.__field_mdate=value 0195 else: 0196 self.__field_mdate=GPSDATE(value,**{'sizeinbytes': 4, 'default': GPSDATE.now() }) 0197 0198 def __delfield_mdate(self): del self.__field_mdate 0199 0200 mdate=property(__getfield_mdate, __setfield_mdate, __delfield_mdate, None) 0201 0202 def __getfield_start(self): 0203 return self.__field_start.getvalue() 0204 0205 def __setfield_start(self, value): 0206 if isinstance(value,LGCALDATE): 0207 self.__field_start=value 0208 else: 0209 self.__field_start=LGCALDATE(value,**{'sizeinbytes': 4}) 0210 0211 def __delfield_start(self): del self.__field_start 0212 0213 start=property(__getfield_start, __setfield_start, __delfield_start, None) 0214 0215 def __getfield_end_time(self): 0216 return self.__field_end_time.getvalue() 0217 0218 def __setfield_end_time(self, value): 0219 if isinstance(value,LGCALDATE): 0220 self.__field_end_time=value 0221 else: 0222 self.__field_end_time=LGCALDATE(value,**{'sizeinbytes': 4}) 0223 0224 def __delfield_end_time(self): del self.__field_end_time 0225 0226 end_time=property(__getfield_end_time, __setfield_end_time, __delfield_end_time, None) 0227 0228 def __getfield_end_date(self): 0229 return self.__field_end_date.getvalue() 0230 0231 def __setfield_end_date(self, value): 0232 if isinstance(value,LGCALDATE): 0233 self.__field_end_date=value 0234 else: 0235 self.__field_end_date=LGCALDATE(value,**{'sizeinbytes': 4}) 0236 0237 def __delfield_end_date(self): del self.__field_end_date 0238 0239 end_date=property(__getfield_end_date, __setfield_end_date, __delfield_end_date, None) 0240 0241 def __getfield_repeat(self): 0242 return self.__field_repeat.getvalue() 0243 0244 def __setfield_repeat(self, value): 0245 if isinstance(value,LGCALREPEAT): 0246 self.__field_repeat=value 0247 else: 0248 self.__field_repeat=LGCALREPEAT(value,**{'sizeinbytes': 4}) 0249 0250 def __delfield_repeat(self): del self.__field_repeat 0251 0252 repeat=property(__getfield_repeat, __setfield_repeat, __delfield_repeat, None) 0253 0254 def __getfield_alarmindex_vibrate(self): 0255 return self.__field_alarmindex_vibrate.getvalue() 0256 0257 def __setfield_alarmindex_vibrate(self, value): 0258 if isinstance(value,UINT): 0259 self.__field_alarmindex_vibrate=value 0260 else: 0261 self.__field_alarmindex_vibrate=UINT(value,**{'sizeinbytes': 1}) 0262 0263 def __delfield_alarmindex_vibrate(self): del self.__field_alarmindex_vibrate 0264 0265 alarmindex_vibrate=property(__getfield_alarmindex_vibrate, __setfield_alarmindex_vibrate, __delfield_alarmindex_vibrate, None) 0266 0267 def __getfield_ringtone(self): 0268 return self.__field_ringtone.getvalue() 0269 0270 def __setfield_ringtone(self, value): 0271 if isinstance(value,UINT): 0272 self.__field_ringtone=value 0273 else: 0274 self.__field_ringtone=UINT(value,**{'sizeinbytes': 1}) 0275 0276 def __delfield_ringtone(self): del self.__field_ringtone 0277 0278 ringtone=property(__getfield_ringtone, __setfield_ringtone, __delfield_ringtone, None) 0279 0280 def __getfield_unknown1(self): 0281 return self.__field_unknown1.getvalue() 0282 0283 def __setfield_unknown1(self, value): 0284 if isinstance(value,UINT): 0285 self.__field_unknown1=value 0286 else: 0287 self.__field_unknown1=UINT(value,**{'sizeinbytes': 1}) 0288 0289 def __delfield_unknown1(self): del self.__field_unknown1 0290 0291 unknown1=property(__getfield_unknown1, __setfield_unknown1, __delfield_unknown1, None) 0292 0293 def __getfield_alarmminutes(self): 0294 return self.__field_alarmminutes.getvalue() 0295 0296 def __setfield_alarmminutes(self, value): 0297 if isinstance(value,UINT): 0298 self.__field_alarmminutes=value 0299 else: 0300 self.__field_alarmminutes=UINT(value,**{'sizeinbytes': 1}) 0301 0302 def __delfield_alarmminutes(self): del self.__field_alarmminutes 0303 0304 alarmminutes=property(__getfield_alarmminutes, __setfield_alarmminutes, __delfield_alarmminutes, "a value of 0xFF indicates not set") 0305 0306 def __getfield_alarmhours(self): 0307 return self.__field_alarmhours.getvalue() 0308 0309 def __setfield_alarmhours(self, value): 0310 if isinstance(value,UINT): 0311 self.__field_alarmhours=value 0312 else: 0313 self.__field_alarmhours=UINT(value,**{'sizeinbytes': 1}) 0314 0315 def __delfield_alarmhours(self): del self.__field_alarmhours 0316 0317 alarmhours=property(__getfield_alarmhours, __setfield_alarmhours, __delfield_alarmhours, "a value of 0xFF indicates not set") 0318 0319 def __getfield_unknown2(self): 0320 try: self.__field_unknown2 0321 except: 0322 self.__field_unknown2=UINT(**{'sizeinbytes': 1, 'default': 0 }) 0323 return self.__field_unknown2.getvalue() 0324 0325 def __setfield_unknown2(self, value): 0326 if isinstance(value,UINT): 0327 self.__field_unknown2=value 0328 else: 0329 self.__field_unknown2=UINT(value,**{'sizeinbytes': 1, 'default': 0 }) 0330 0331 def __delfield_unknown2(self): del self.__field_unknown2 0332 0333 unknown2=property(__getfield_unknown2, __setfield_unknown2, __delfield_unknown2, None) 0334 0335 def __getfield_unknown3(self): 0336 try: self.__field_unknown3 0337 except: 0338 self.__field_unknown3=UINT(**{'sizeinbytes': 2, 'default': 0 }) 0339 return self.__field_unknown3.getvalue() 0340 0341 def __setfield_unknown3(self, value): 0342 if isinstance(value,UINT): 0343 self.__field_unknown3=value 0344 else: 0345 self.__field_unknown3=UINT(value,**{'sizeinbytes': 2, 'default': 0 }) 0346 0347 def __delfield_unknown3(self): del self.__field_unknown3 0348 0349 unknown3=property(__getfield_unknown3, __setfield_unknown3, __delfield_unknown3, None) 0350 0351 def __getfield_unknown4(self): 0352 try: self.__field_unknown4 0353 except: 0354 self.__field_unknown4=USTRING(**{'sizeinbytes': 256, 'default': '', 'encoding': PHONE_ENCODING, 'raiseonunterminatedread': False, 'raiseontruncate': False }) 0355 return self.__field_unknown4.getvalue() 0356 0357 def __setfield_unknown4(self, value): 0358 if isinstance(value,USTRING): 0359 self.__field_unknown4=value 0360 else: 0361 self.__field_unknown4=USTRING(value,**{'sizeinbytes': 256, 'default': '', 'encoding': PHONE_ENCODING, 'raiseonunterminatedread': False, 'raiseontruncate': False }) 0362 0363 def __delfield_unknown4(self): del self.__field_unknown4 0364 0365 unknown4=property(__getfield_unknown4, __setfield_unknown4, __delfield_unknown4, None) 0366 0367 def __getfield_serial_number(self): 0368 try: self.__field_serial_number 0369 except: 0370 self.__field_serial_number=USTRING(**{'sizeinbytes': 64, 'default': '000000c9-00000000-00000000-T9MVZV02', 'encoding': PHONE_ENCODING, 'raiseonunterminatedread': False, 'raiseontruncate': False }) 0371 return self.__field_serial_number.getvalue() 0372 0373 def __setfield_serial_number(self, value): 0374 if isinstance(value,USTRING): 0375 self.__field_serial_number=value 0376 else: 0377 self.__field_serial_number=USTRING(value,**{'sizeinbytes': 64, 'default': '000000c9-00000000-00000000-T9MVZV02', 'encoding': PHONE_ENCODING, 'raiseonunterminatedread': False, 'raiseontruncate': False }) 0378 0379 def __delfield_serial_number(self): del self.__field_serial_number 0380 0381 serial_number=property(__getfield_serial_number, __setfield_serial_number, __delfield_serial_number, None) 0382 0383 def iscontainer(self): 0384 return True 0385 0386 def containerelements(self): 0387 yield ('pos', self.__field_pos, "position within file, used as an event id") 0388 yield ('description', self.__field_description, None) 0389 yield ('cdate', self.__field_cdate, None) 0390 yield ('mdate', self.__field_mdate, None) 0391 yield ('start', self.__field_start, None) 0392 yield ('end_time', self.__field_end_time, None) 0393 yield ('end_date', self.__field_end_date, None) 0394 yield ('repeat', self.__field_repeat, None) 0395 yield ('alarmindex_vibrate', self.__field_alarmindex_vibrate, None) 0396 yield ('ringtone', self.__field_ringtone, None) 0397 yield ('unknown1', self.__field_unknown1, None) 0398 yield ('alarmminutes', self.__field_alarmminutes, "a value of 0xFF indicates not set") 0399 yield ('alarmhours', self.__field_alarmhours, "a value of 0xFF indicates not set") 0400 yield ('unknown2', self.__field_unknown2, None) 0401 yield ('unknown3', self.__field_unknown3, None) 0402 yield ('unknown4', self.__field_unknown4, None) 0403 yield ('serial_number', self.__field_serial_number, None) 0404 0405 0406 0407 0408 class schedulefile(BaseProtogenClass): 0409 __fields=['numactiveitems', 'events'] 0410 0411 def __init__(self, *args, **kwargs): 0412 dict={} 0413 # What was supplied to this function 0414 dict.update(kwargs) 0415 # Parent constructor 0416 super(schedulefile,self).__init__(**dict) 0417 if self.__class__ is schedulefile: 0418 self._update(args,dict) 0419 0420 0421 def getfields(self): 0422 return self.__fields 0423 0424 0425 def _update(self, args, kwargs): 0426 super(schedulefile,self)._update(args,kwargs) 0427 keys=kwargs.keys() 0428 for key in keys: 0429 if key in self.__fields: 0430 setattr(self, key, kwargs[key]) 0431 del kwargs[key] 0432 # Were any unrecognized kwargs passed in? 0433 if __debug__: 0434 self._complainaboutunusedargs(schedulefile,kwargs) 0435 if len(args): raise TypeError('Unexpected arguments supplied: '+`args`) 0436 # Make all P fields that haven't already been constructed 0437 0438 0439 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 0440 'Writes this packet to the supplied buffer' 0441 self._bufferstartoffset=buf.getcurrentoffset() 0442 self.__field_numactiveitems.writetobuffer(buf) 0443 try: self.__field_events 0444 except: 0445 self.__field_events=LIST(**{'elementclass': scheduleevent}) 0446 self.__field_events.writetobuffer(buf) 0447 self._bufferendoffset=buf.getcurrentoffset() 0448 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 0449 0450 0451 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 0452 'Reads this packet from the supplied buffer' 0453 self._bufferstartoffset=buf.getcurrentoffset() 0454 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 0455 self.__field_numactiveitems=UINT(**{'sizeinbytes': 2}) 0456 self.__field_numactiveitems.readfrombuffer(buf) 0457 self.__field_events=LIST(**{'elementclass': scheduleevent}) 0458 self.__field_events.readfrombuffer(buf) 0459 self._bufferendoffset=buf.getcurrentoffset() 0460 0461 0462 def __getfield_numactiveitems(self): 0463 return self.__field_numactiveitems.getvalue() 0464 0465 def __setfield_numactiveitems(self, value): 0466 if isinstance(value,UINT): 0467 self.__field_numactiveitems=value 0468 else: 0469 self.__field_numactiveitems=UINT(value,**{'sizeinbytes': 2}) 0470 0471 def __delfield_numactiveitems(self): del self.__field_numactiveitems 0472 0473 numactiveitems=property(__getfield_numactiveitems, __setfield_numactiveitems, __delfield_numactiveitems, None) 0474 0475 def __getfield_events(self): 0476 try: self.__field_events 0477 except: 0478 self.__field_events=LIST(**{'elementclass': scheduleevent}) 0479 return self.__field_events.getvalue() 0480 0481 def __setfield_events(self, value): 0482 if isinstance(value,LIST): 0483 self.__field_events=value 0484 else: 0485 self.__field_events=LIST(value,**{'elementclass': scheduleevent}) 0486 0487 def __delfield_events(self): del self.__field_events 0488 0489 events=property(__getfield_events, __setfield_events, __delfield_events, None) 0490 0491 def iscontainer(self): 0492 return True 0493 0494 def containerelements(self): 0495 yield ('numactiveitems', self.__field_numactiveitems, None) 0496 yield ('events', self.__field_events, None) 0497 0498 0499 0500 0501 class pbfileentry(BaseProtogenClass): 0502 __fields=['serial1', 'entrynumber', 'data1', 'ringtone', 'wallpaper', 'data2'] 0503 0504 def __init__(self, *args, **kwargs): 0505 dict={} 0506 # What was supplied to this function 0507 dict.update(kwargs) 0508 # Parent constructor 0509 super(pbfileentry,self).__init__(**dict) 0510 if self.__class__ is pbfileentry: 0511 self._update(args,dict) 0512 0513 0514 def getfields(self): 0515 return self.__fields 0516 0517 0518 def _update(self, args, kwargs): 0519 super(pbfileentry,self)._update(args,kwargs) 0520 keys=kwargs.keys() 0521 for key in keys: 0522 if key in self.__fields: 0523 setattr(self, key, kwargs[key]) 0524 del kwargs[key] 0525 # Were any unrecognized kwargs passed in? 0526 if __debug__: 0527 self._complainaboutunusedargs(pbfileentry,kwargs) 0528 if len(args): raise TypeError('Unexpected arguments supplied: '+`args`) 0529 # Make all P fields that haven't already been constructed 0530 0531 0532 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 0533 'Writes this packet to the supplied buffer' 0534 self._bufferstartoffset=buf.getcurrentoffset() 0535 self.__field_serial1.writetobuffer(buf) 0536 self.__field_entrynumber.writetobuffer(buf) 0537 self.__field_data1.writetobuffer(buf) 0538 self.__field_ringtone.writetobuffer(buf) 0539 self.__field_wallpaper.writetobuffer(buf) 0540 self.__field_data2.writetobuffer(buf) 0541 self._bufferendoffset=buf.getcurrentoffset() 0542 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 0543 0544 0545 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 0546 'Reads this packet from the supplied buffer' 0547 self._bufferstartoffset=buf.getcurrentoffset() 0548 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 0549 self.__field_serial1=UINT(**{'sizeinbytes': 4}) 0550 self.__field_serial1.readfrombuffer(buf) 0551 self.__field_entrynumber=UINT(**{'sizeinbytes': 2}) 0552 self.__field_entrynumber.readfrombuffer(buf) 0553 self.__field_data1=UNKNOWN(**{'sizeinbytes': 127}) 0554 self.__field_data1.readfrombuffer(buf) 0555 self.__field_ringtone=UINT(**{'sizeinbytes': 2}) 0556 self.__field_ringtone.readfrombuffer(buf) 0557 self.__field_wallpaper=UINT(**{'sizeinbytes': 2}) 0558 self.__field_wallpaper.readfrombuffer(buf) 0559 self.__field_data2=UNKNOWN(**{'sizeinbytes': 248}) 0560 self.__field_data2.readfrombuffer(buf) 0561 self._bufferendoffset=buf.getcurrentoffset() 0562 0563 0564 def __getfield_serial1(self): 0565 return self.__field_serial1.getvalue() 0566 0567 def __setfield_serial1(self, value): 0568 if isinstance(value,UINT): 0569 self.__field_serial1=value 0570 else: 0571 self.__field_serial1=UINT(value,**{'sizeinbytes': 4}) 0572 0573 def __delfield_serial1(self): del self.__field_serial1 0574 0575 serial1=property(__getfield_serial1, __setfield_serial1, __delfield_serial1, None) 0576 0577 def __getfield_entrynumber(self): 0578 return self.__field_entrynumber.getvalue() 0579 0580 def __setfield_entrynumber(self, value): 0581 if isinstance(value,UINT): 0582 self.__field_entrynumber=value 0583 else: 0584 self.__field_entrynumber=UINT(value,**{'sizeinbytes': 2}) 0585 0586 def __delfield_entrynumber(self): del self.__field_entrynumber 0587 0588 entrynumber=property(__getfield_entrynumber, __setfield_entrynumber, __delfield_entrynumber, None) 0589 0590 def __getfield_data1(self): 0591 return self.__field_data1.getvalue() 0592 0593 def __setfield_data1(self, value): 0594 if isinstance(value,UNKNOWN): 0595 self.__field_data1=value 0596 else: 0597 self.__field_data1=UNKNOWN(value,**{'sizeinbytes': 127}) 0598 0599 def __delfield_data1(self): del self.__field_data1 0600 0601 data1=property(__getfield_data1, __setfield_data1, __delfield_data1, None) 0602 0603 def __getfield_ringtone(self): 0604 return self.__field_ringtone.getvalue() 0605 0606 def __setfield_ringtone(self, value): 0607 if isinstance(value,UINT): 0608 self.__field_ringtone=value 0609 else: 0610 self.__field_ringtone=UINT(value,**{'sizeinbytes': 2}) 0611 0612 def __delfield_ringtone(self): del self.__field_ringtone 0613 0614 ringtone=property(__getfield_ringtone, __setfield_ringtone, __delfield_ringtone, None) 0615 0616 def __getfield_wallpaper(self): 0617 return self.__field_wallpaper.getvalue() 0618 0619 def __setfield_wallpaper(self, value): 0620 if isinstance(value,UINT): 0621 self.__field_wallpaper=value 0622 else: 0623 self.__field_wallpaper=UINT(value,**{'sizeinbytes': 2}) 0624 0625 def __delfield_wallpaper(self): del self.__field_wallpaper 0626 0627 wallpaper=property(__getfield_wallpaper, __setfield_wallpaper, __delfield_wallpaper, None) 0628 0629 def __getfield_data2(self): 0630 return self.__field_data2.getvalue() 0631 0632 def __setfield_data2(self, value): 0633 if isinstance(value,UNKNOWN): 0634 self.__field_data2=value 0635 else: 0636 self.__field_data2=UNKNOWN(value,**{'sizeinbytes': 248}) 0637 0638 def __delfield_data2(self): del self.__field_data2 0639 0640 data2=property(__getfield_data2, __setfield_data2, __delfield_data2, None) 0641 0642 def iscontainer(self): 0643 return True 0644 0645 def containerelements(self): 0646 yield ('serial1', self.__field_serial1, None) 0647 yield ('entrynumber', self.__field_entrynumber, None) 0648 yield ('data1', self.__field_data1, None) 0649 yield ('ringtone', self.__field_ringtone, None) 0650 yield ('wallpaper', self.__field_wallpaper, None) 0651 yield ('data2', self.__field_data2, None) 0652 0653 0654 0655 0656 class pbfile(BaseProtogenClass): 0657 __fields=['items'] 0658 0659 def __init__(self, *args, **kwargs): 0660 dict={} 0661 # What was supplied to this function 0662 dict.update(kwargs) 0663 # Parent constructor 0664 super(pbfile,self).__init__(**dict) 0665 if self.__class__ is pbfile: 0666 self._update(args,dict) 0667 0668 0669 def getfields(self): 0670 return self.__fields 0671 0672 0673 def _update(self, args, kwargs): 0674 super(pbfile,self)._update(args,kwargs) 0675 keys=kwargs.keys() 0676 for key in keys: 0677 if key in self.__fields: 0678 setattr(self, key, kwargs[key]) 0679 del kwargs[key] 0680 # Were any unrecognized kwargs passed in? 0681 if __debug__: 0682 self._complainaboutunusedargs(pbfile,kwargs) 0683 if len(args): 0684 dict2={ 'elementclass': pbfileentry } 0685 dict2.update(kwargs) 0686 kwargs=dict2 0687 self.__field_items=LIST(*args,**dict2) 0688 # Make all P fields that haven't already been constructed 0689 0690 0691 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 0692 'Writes this packet to the supplied buffer' 0693 self._bufferstartoffset=buf.getcurrentoffset() 0694 self.__field_items.writetobuffer(buf) 0695 self._bufferendoffset=buf.getcurrentoffset() 0696 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 0697 0698 0699 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 0700 'Reads this packet from the supplied buffer' 0701 self._bufferstartoffset=buf.getcurrentoffset() 0702 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 0703 self.__field_items=LIST(**{ 'elementclass': pbfileentry }) 0704 self.__field_items.readfrombuffer(buf) 0705 self._bufferendoffset=buf.getcurrentoffset() 0706 0707 0708 def __getfield_items(self): 0709 return self.__field_items.getvalue() 0710 0711 def __setfield_items(self, value): 0712 if isinstance(value,LIST): 0713 self.__field_items=value 0714 else: 0715 self.__field_items=LIST(value,**{ 'elementclass': pbfileentry }) 0716 0717 def __delfield_items(self): del self.__field_items 0718 0719 items=property(__getfield_items, __setfield_items, __delfield_items, None) 0720 0721 def iscontainer(self): 0722 return True 0723 0724 def containerelements(self): 0725 yield ('items', self.__field_items, None) 0726 0727 0728 0729 0730 class PathIndexEntry(BaseProtogenClass): 0731 __fields=['pathname'] 0732 0733 def __init__(self, *args, **kwargs): 0734 dict={} 0735 # What was supplied to this function 0736 dict.update(kwargs) 0737 # Parent constructor 0738 super(PathIndexEntry,self).__init__(**dict) 0739 if self.__class__ is PathIndexEntry: 0740 self._update(args,dict) 0741 0742 0743 def getfields(self): 0744 return self.__fields 0745 0746 0747 def _update(self, args, kwargs): 0748 super(PathIndexEntry,self)._update(args,kwargs) 0749 keys=kwargs.keys() 0750 for key in keys: 0751 if key in self.__fields: 0752 setattr(self, key, kwargs[key]) 0753 del kwargs[key] 0754 # Were any unrecognized kwargs passed in? 0755 if __debug__: 0756 self._complainaboutunusedargs(PathIndexEntry,kwargs) 0757 if len(args): 0758 dict2={'sizeinbytes': 255, 'encoding': PHONE_ENCODING, 'default': '' } 0759 dict2.update(kwargs) 0760 kwargs=dict2 0761 self.__field_pathname=USTRING(*args,**dict2) 0762 # Make all P fields that haven't already been constructed 0763 0764 0765 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 0766 'Writes this packet to the supplied buffer' 0767 self._bufferstartoffset=buf.getcurrentoffset() 0768 try: self.__field_pathname 0769 except: 0770 self.__field_pathname=USTRING(**{'sizeinbytes': 255, 'encoding': PHONE_ENCODING, 'default': '' }) 0771 self.__field_pathname.writetobuffer(buf) 0772 self._bufferendoffset=buf.getcurrentoffset() 0773 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 0774 0775 0776 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 0777 'Reads this packet from the supplied buffer' 0778 self._bufferstartoffset=buf.getcurrentoffset() 0779 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 0780 self.__field_pathname=USTRING(**{'sizeinbytes': 255, 'encoding': PHONE_ENCODING, 'default': '' }) 0781 self.__field_pathname.readfrombuffer(buf) 0782 self._bufferendoffset=buf.getcurrentoffset() 0783 0784 0785 def __getfield_pathname(self): 0786 try: self.__field_pathname 0787 except: 0788 self.__field_pathname=USTRING(**{'sizeinbytes': 255, 'encoding': PHONE_ENCODING, 'default': '' }) 0789 return self.__field_pathname.getvalue() 0790 0791 def __setfield_pathname(self, value): 0792 if isinstance(value,USTRING): 0793 self.__field_pathname=value 0794 else: 0795 self.__field_pathname=USTRING(value,**{'sizeinbytes': 255, 'encoding': PHONE_ENCODING, 'default': '' }) 0796 0797 def __delfield_pathname(self): del self.__field_pathname 0798 0799 pathname=property(__getfield_pathname, __setfield_pathname, __delfield_pathname, None) 0800 0801 def iscontainer(self): 0802 return True 0803 0804 def containerelements(self): 0805 yield ('pathname', self.__field_pathname, None) 0806 0807 0808 0809 0810 class PathIndexFile(BaseProtogenClass): 0811 __fields=['items'] 0812 0813 def __init__(self, *args, **kwargs): 0814 dict={} 0815 # What was supplied to this function 0816 dict.update(kwargs) 0817 # Parent constructor 0818 super(PathIndexFile,self).__init__(**dict) 0819 if self.__class__ is PathIndexFile: 0820 self._update(args,dict) 0821 0822 0823 def getfields(self): 0824 return self.__fields 0825 0826 0827 def _update(self, args, kwargs): 0828 super(PathIndexFile,self)._update(args,kwargs) 0829 keys=kwargs.keys() 0830 for key in keys: 0831 if key in self.__fields: 0832 setattr(self, key, kwargs[key]) 0833 del kwargs[key] 0834 # Were any unrecognized kwargs passed in? 0835 if __debug__: 0836 self._complainaboutunusedargs(PathIndexFile,kwargs) 0837 if len(args): 0838 dict2={ 'elementclass': PathIndexEntry, 'createdefault': True, 'length': NUMPHONEBOOKENTRIES } 0839 dict2.update(kwargs) 0840 kwargs=dict2 0841 self.__field_items=LIST(*args,**dict2) 0842 # Make all P fields that haven't already been constructed 0843 0844 0845 def writetobuffer(self,buf,autolog=True,logtitle="<written data>"): 0846 'Writes this packet to the supplied buffer' 0847 self._bufferstartoffset=buf.getcurrentoffset() 0848 try: self.__field_items 0849 except: 0850 self.__field_items=LIST(**{ 'elementclass': PathIndexEntry, 'createdefault': True, 'length': NUMPHONEBOOKENTRIES }) 0851 self.__field_items.writetobuffer(buf) 0852 self._bufferendoffset=buf.getcurrentoffset() 0853 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle) 0854 0855 0856 def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"): 0857 'Reads this packet from the supplied buffer' 0858 self._bufferstartoffset=buf.getcurrentoffset() 0859 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle) 0860 self.__field_items=LIST(**{ 'elementclass': PathIndexEntry, 'createdefault': True, 'length': NUMPHONEBOOKENTRIES }) 0861 self.__field_items.readfrombuffer(buf) 0862 self._bufferendoffset=buf.getcurrentoffset() 0863 0864 0865 def __getfield_items(self): 0866 try: self.__field_items 0867 except: 0868 self.__field_items=LIST(**{ 'elementclass': PathIndexEntry, 'createdefault': True, 'length': NUMPHONEBOOKENTRIES }) 0869 return self.__field_items.getvalue() 0870 0871 def __setfield_items(self, value): 0872 if isinstance(value,LIST): 0873 self.__field_items=value 0874 else: 0875 self.__field_items=LIST(value,**{ 'elementclass': PathIndexEntry, 'createdefault': True, 'length': NUMPHONEBOOKENTRIES }) 0876 0877 def __delfield_items(self): del self.__field_items 0878 0879 items=property(__getfield_items, __setfield_items, __delfield_items, None) 0880 0881 def iscontainer(self): 0882 return True 0883 0884 def containerelements(self): 0885 yield ('items', self.__field_items, None) 0886 0887 0888 0889 0890
Generated by PyXR 0.9.4