Package phones ::
Module p_lgax8600
|
|
1
2
3
4 from p_lgvx9900 import *
5
6 from prototypes import *
7 from prototypeslg import *
8
9
10 from p_lg import *
11 from p_brew import *
12
13
14 UINT=UINTlsb
15 BOOL=BOOLlsb
16
17 BREW_FILE_SYSTEM=2
18 NOMSGRINGTONE=1
19 NUMSPEEDDIALS=100
20 FIRSTSPEEDDIAL=2
21 LASTSPEEDDIAL=99
22 NUMPHONEBOOKENTRIES=500
23 pb_file_name='pim/pbentry.dat'
24
25
26 PHONE_ENCODING='iso-8859-1'
27
28
29
30 MEDIA_TYPE_RINGTONE=0x0201
31 MEDIA_TYPE_IMAGE=0x400
32 MEDIA_TYPE_SOUND=0x0402
33 MEDIA_TYPE_SDIMAGE=0x0008
34 MEDIA_TYPE_SDSOUND=0x000C
35 MEDIA_TYPE_VIDEO=0x0304
36 MEDIA_RINGTONE_DEFAULT_ICON=1
37 MEDIA_IMAGE_DEFAULT_ICON=0
38 MEDIA_VIDEO_DEFAULT_ICON=0
39
40
41 broken_filelist_date=True
42
43 NUMCALENDARENTRIES=300
44
45 SPEEDDIALINDEX=1
46 MAXCALENDARDESCRIPTION=32
47
48 CALENDAR_HAS_SEPARATE_END_TIME_AND_DATE=0
50 __fields=['cmd', 'lock']
51
60
61
64
65
77
78
79
80 - def writetobuffer(self,buf,autolog=True,logtitle="<written data>"):
81 'Writes this packet to the supplied buffer'
82 self._bufferstartoffset=buf.getcurrentoffset()
83 try: self.__field_cmd
84 except:
85 self.__field_cmd=UINT(**{'sizeinbytes': 1, 'default': 0x21 })
86 self.__field_cmd.writetobuffer(buf)
87 try: self.__field_lock
88 except:
89 self.__field_lock=UINT(**{'sizeinbytes': 2, 'default': 0 })
90 self.__field_lock.writetobuffer(buf)
91 self._bufferendoffset=buf.getcurrentoffset()
92 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle)
93
94
96 'Reads this packet from the supplied buffer'
97 self._bufferstartoffset=buf.getcurrentoffset()
98 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle)
99 self.__field_cmd=UINT(**{'sizeinbytes': 1, 'default': 0x21 })
100 self.__field_cmd.readfrombuffer(buf)
101 self.__field_lock=UINT(**{'sizeinbytes': 2, 'default': 0 })
102 self.__field_lock.readfrombuffer(buf)
103 self._bufferendoffset=buf.getcurrentoffset()
104
105
107 try: self.__field_cmd
108 except:
109 self.__field_cmd=UINT(**{'sizeinbytes': 1, 'default': 0x21 })
110 return self.__field_cmd.getvalue()
111
113 if isinstance(value,UINT):
114 self.__field_cmd=value
115 else:
116 self.__field_cmd=UINT(value,**{'sizeinbytes': 1, 'default': 0x21 })
117
119
120 cmd=property(__getfield_cmd, __setfield_cmd, __delfield_cmd, None)
121
123 try: self.__field_lock
124 except:
125 self.__field_lock=UINT(**{'sizeinbytes': 2, 'default': 0 })
126 return self.__field_lock.getvalue()
127
129 if isinstance(value,UINT):
130 self.__field_lock=value
131 else:
132 self.__field_lock=UINT(value,**{'sizeinbytes': 2, 'default': 0 })
133
135
136 lock=property(__getfield_lock, __setfield_lock, __delfield_lock, "0=Lock, 1=Unlock")
137
140
142 yield ('cmd', self.__field_cmd, None)
143 yield ('lock', self.__field_lock, "0=Lock, 1=Unlock")
144
145
146
147
149 __fields=['cmd', 'hold', 'key']
150
159
160
163
164
176
177
178
179 - def writetobuffer(self,buf,autolog=True,logtitle="<written data>"):
180 'Writes this packet to the supplied buffer'
181 self._bufferstartoffset=buf.getcurrentoffset()
182 try: self.__field_cmd
183 except:
184 self.__field_cmd=UINT(**{'sizeinbytes': 1, 'default': 0x20 })
185 self.__field_cmd.writetobuffer(buf)
186 try: self.__field_hold
187 except:
188 self.__field_hold=UINT(**{'sizeinbytes': 1, 'default': 0 })
189 self.__field_hold.writetobuffer(buf)
190 self.__field_key.writetobuffer(buf)
191 self._bufferendoffset=buf.getcurrentoffset()
192 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle)
193
194
196 'Reads this packet from the supplied buffer'
197 self._bufferstartoffset=buf.getcurrentoffset()
198 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle)
199 self.__field_cmd=UINT(**{'sizeinbytes': 1, 'default': 0x20 })
200 self.__field_cmd.readfrombuffer(buf)
201 self.__field_hold=UINT(**{'sizeinbytes': 1, 'default': 0 })
202 self.__field_hold.readfrombuffer(buf)
203 self.__field_key=STRING(**{'sizeinbytes': 1, 'terminator': None, 'sizeinbytes': 1 })
204 self.__field_key.readfrombuffer(buf)
205 self._bufferendoffset=buf.getcurrentoffset()
206
207
209 try: self.__field_cmd
210 except:
211 self.__field_cmd=UINT(**{'sizeinbytes': 1, 'default': 0x20 })
212 return self.__field_cmd.getvalue()
213
215 if isinstance(value,UINT):
216 self.__field_cmd=value
217 else:
218 self.__field_cmd=UINT(value,**{'sizeinbytes': 1, 'default': 0x20 })
219
221
222 cmd=property(__getfield_cmd, __setfield_cmd, __delfield_cmd, None)
223
225 try: self.__field_hold
226 except:
227 self.__field_hold=UINT(**{'sizeinbytes': 1, 'default': 0 })
228 return self.__field_hold.getvalue()
229
231 if isinstance(value,UINT):
232 self.__field_hold=value
233 else:
234 self.__field_hold=UINT(value,**{'sizeinbytes': 1, 'default': 0 })
235
237
238 hold=property(__getfield_hold, __setfield_hold, __delfield_hold, None)
239
242
244 if isinstance(value,STRING):
245 self.__field_key=value
246 else:
247 self.__field_key=STRING(value,**{'sizeinbytes': 1, 'terminator': None, 'sizeinbytes': 1 })
248
250
251 key=property(__getfield_key, __setfield_key, __delfield_key, None)
252
255
257 yield ('cmd', self.__field_cmd, None)
258 yield ('hold', self.__field_hold, None)
259 yield ('key', self.__field_key, None)
260
261
262
263
264 -class indexentry(BaseProtogenClass):
265 __fields=['index', 'type', 'filename', 'icon', 'date', 'dunno', 'size', 'dunno1']
266
267 - def __init__(self, *args, **kwargs):
268 dict={}
269
270 dict.update(kwargs)
271
272 super(indexentry,self).__init__(**dict)
273 if self.__class__ is indexentry:
274 self._update(args,dict)
275
276
277 - def getfields(self):
279
280
281 - def _update(self, args, kwargs):
282 super(indexentry,self)._update(args,kwargs)
283 keys=kwargs.keys()
284 for key in keys:
285 if key in self.__fields:
286 setattr(self, key, kwargs[key])
287 del kwargs[key]
288
289 if __debug__:
290 self._complainaboutunusedargs(indexentry,kwargs)
291 if len(args): raise TypeError('Unexpected arguments supplied: '+`args`)
292
293
294
295 - def writetobuffer(self,buf,autolog=True,logtitle="<written data>"):
296 'Writes this packet to the supplied buffer'
297 self._bufferstartoffset=buf.getcurrentoffset()
298 self.__field_index.writetobuffer(buf)
299 self.__field_type.writetobuffer(buf)
300 self.__field_filename.writetobuffer(buf)
301 try: self.__field_icon
302 except:
303 self.__field_icon=UINT(**{'sizeinbytes': 4, 'default':0})
304 self.__field_icon.writetobuffer(buf)
305 try: self.__field_date
306 except:
307 self.__field_date=UINT(**{'sizeinbytes': 4, 'default': 0})
308 self.__field_date.writetobuffer(buf)
309 self.__field_dunno.writetobuffer(buf)
310 try: self.__field_size
311 except:
312 self.__field_size=UINT(**{'sizeinbytes': 4, 'default': 0})
313 self.__field_size.writetobuffer(buf)
314 self.__field_dunno1.writetobuffer(buf)
315 self._bufferendoffset=buf.getcurrentoffset()
316 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle)
317
318
319 - def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"):
320 'Reads this packet from the supplied buffer'
321 self._bufferstartoffset=buf.getcurrentoffset()
322 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle)
323 self.__field_index=UINT(**{'sizeinbytes': 2})
324 self.__field_index.readfrombuffer(buf)
325 self.__field_type=UINT(**{'sizeinbytes': 2})
326 self.__field_type.readfrombuffer(buf)
327 self.__field_filename=USTRING(**{'sizeinbytes': 256, 'encoding': PHONE_ENCODING, 'raiseonunterminatedread': False, 'raiseontruncate': False })
328 self.__field_filename.readfrombuffer(buf)
329 self.__field_icon=UINT(**{'sizeinbytes': 4, 'default':0})
330 self.__field_icon.readfrombuffer(buf)
331 self.__field_date=UINT(**{'sizeinbytes': 4, 'default': 0})
332 self.__field_date.readfrombuffer(buf)
333 self.__field_dunno=UINT(**{'sizeinbytes': 4})
334 self.__field_dunno.readfrombuffer(buf)
335 self.__field_size=UINT(**{'sizeinbytes': 4, 'default': 0})
336 self.__field_size.readfrombuffer(buf)
337 self.__field_dunno1=UINT(**{'sizeinbytes': 4})
338 self.__field_dunno1.readfrombuffer(buf)
339 self._bufferendoffset=buf.getcurrentoffset()
340
341
343 return self.__field_index.getvalue()
344
345 - def __setfield_index(self, value):
346 if isinstance(value,UINT):
347 self.__field_index=value
348 else:
349 self.__field_index=UINT(value,**{'sizeinbytes': 2})
350
351 - def __delfield_index(self): del self.__field_index
352
353 index=property(__getfield_index, __setfield_index, __delfield_index, None)
354
355 - def __getfield_type(self):
356 return self.__field_type.getvalue()
357
358 - def __setfield_type(self, value):
359 if isinstance(value,UINT):
360 self.__field_type=value
361 else:
362 self.__field_type=UINT(value,**{'sizeinbytes': 2})
363
364 - def __delfield_type(self): del self.__field_type
365
366 type=property(__getfield_type, __setfield_type, __delfield_type, None)
367
369 return self.__field_filename.getvalue()
370
371 - def __setfield_filename(self, value):
372 if isinstance(value,USTRING):
373 self.__field_filename=value
374 else:
375 self.__field_filename=USTRING(value,**{'sizeinbytes': 256, 'encoding': PHONE_ENCODING, 'raiseonunterminatedread': False, 'raiseontruncate': False })
376
377 - def __delfield_filename(self): del self.__field_filename
378
379 filename=property(__getfield_filename, __setfield_filename, __delfield_filename, "includes full pathname")
380
381 - def __getfield_icon(self):
382 try: self.__field_icon
383 except:
384 self.__field_icon=UINT(**{'sizeinbytes': 4, 'default':0})
385 return self.__field_icon.getvalue()
386
387 - def __setfield_icon(self, value):
388 if isinstance(value,UINT):
389 self.__field_icon=value
390 else:
391 self.__field_icon=UINT(value,**{'sizeinbytes': 4, 'default':0})
392
393 - def __delfield_icon(self): del self.__field_icon
394
395 icon=property(__getfield_icon, __setfield_icon, __delfield_icon, None)
396
397 - def __getfield_date(self):
398 try: self.__field_date
399 except:
400 self.__field_date=UINT(**{'sizeinbytes': 4, 'default': 0})
401 return self.__field_date.getvalue()
402
403 - def __setfield_date(self, value):
404 if isinstance(value,UINT):
405 self.__field_date=value
406 else:
407 self.__field_date=UINT(value,**{'sizeinbytes': 4, 'default': 0})
408
409 - def __delfield_date(self): del self.__field_date
410
411 date=property(__getfield_date, __setfield_date, __delfield_date, "i think this is bitfield of the date")
412
414 return self.__field_dunno.getvalue()
415
416 - def __setfield_dunno(self, value):
417 if isinstance(value,UINT):
418 self.__field_dunno=value
419 else:
420 self.__field_dunno=UINT(value,**{'sizeinbytes': 4})
421
422 - def __delfield_dunno(self): del self.__field_dunno
423
424 dunno=property(__getfield_dunno, __setfield_dunno, __delfield_dunno, None)
425
426 - def __getfield_size(self):
427 try: self.__field_size
428 except:
429 self.__field_size=UINT(**{'sizeinbytes': 4, 'default': 0})
430 return self.__field_size.getvalue()
431
432 - def __setfield_size(self, value):
433 if isinstance(value,UINT):
434 self.__field_size=value
435 else:
436 self.__field_size=UINT(value,**{'sizeinbytes': 4, 'default': 0})
437
438 - def __delfield_size(self): del self.__field_size
439
440 size=property(__getfield_size, __setfield_size, __delfield_size, "size of the file, can be set to zero")
441
443 return self.__field_dunno1.getvalue()
444
445 - def __setfield_dunno1(self, value):
446 if isinstance(value,UINT):
447 self.__field_dunno1=value
448 else:
449 self.__field_dunno1=UINT(value,**{'sizeinbytes': 4})
450
451 - def __delfield_dunno1(self): del self.__field_dunno1
452
453 dunno1=property(__getfield_dunno1, __setfield_dunno1, __delfield_dunno1, None)
454
455 - def iscontainer(self):
457
459 yield ('index', self.__field_index, None)
460 yield ('type', self.__field_type, None)
461 yield ('filename', self.__field_filename, "includes full pathname")
462 yield ('icon', self.__field_icon, None)
463 yield ('date', self.__field_date, "i think this is bitfield of the date")
464 yield ('dunno', self.__field_dunno, None)
465 yield ('size', self.__field_size, "size of the file, can be set to zero")
466 yield ('dunno1', self.__field_dunno1, None)
467
468
469
470
472 "Used for tracking wallpaper and ringtones"
473 __fields=['items']
474
483
484
487
488
504
505
506
507 - def writetobuffer(self,buf,autolog=True,logtitle="<written data>"):
508 'Writes this packet to the supplied buffer'
509 self._bufferstartoffset=buf.getcurrentoffset()
510 try: self.__field_items
511 except:
512 self.__field_items=LIST(**{'elementclass': indexentry, 'createdefault': True})
513 self.__field_items.writetobuffer(buf)
514 self._bufferendoffset=buf.getcurrentoffset()
515 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle)
516
517
519 'Reads this packet from the supplied buffer'
520 self._bufferstartoffset=buf.getcurrentoffset()
521 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle)
522 self.__field_items=LIST(**{'elementclass': indexentry, 'createdefault': True})
523 self.__field_items.readfrombuffer(buf)
524 self._bufferendoffset=buf.getcurrentoffset()
525
526
528 try: self.__field_items
529 except:
530 self.__field_items=LIST(**{'elementclass': indexentry, 'createdefault': True})
531 return self.__field_items.getvalue()
532
534 if isinstance(value,LIST):
535 self.__field_items=value
536 else:
537 self.__field_items=LIST(value,**{'elementclass': indexentry, 'createdefault': True})
538
540
541 items=property(__getfield_items, __setfield_items, __delfield_items, None)
542
545
547 yield ('items', self.__field_items, None)
548
549
550
551
553 __fields=['entry', 'number']
554
563
564
567
568
580
581
582
583 - def writetobuffer(self,buf,autolog=True,logtitle="<written data>"):
584 'Writes this packet to the supplied buffer'
585 self._bufferstartoffset=buf.getcurrentoffset()
586 try: self.__field_entry
587 except:
588 self.__field_entry=UINT(**{'sizeinbytes': 2, 'default': 0xffff})
589 self.__field_entry.writetobuffer(buf)
590 try: self.__field_number
591 except:
592 self.__field_number=UINT(**{'sizeinbytes': 1, 'default': 0xff})
593 self.__field_number.writetobuffer(buf)
594 self._bufferendoffset=buf.getcurrentoffset()
595 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle)
596
597
599 'Reads this packet from the supplied buffer'
600 self._bufferstartoffset=buf.getcurrentoffset()
601 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle)
602 self.__field_entry=UINT(**{'sizeinbytes': 2, 'default': 0xffff})
603 self.__field_entry.readfrombuffer(buf)
604 self.__field_number=UINT(**{'sizeinbytes': 1, 'default': 0xff})
605 self.__field_number.readfrombuffer(buf)
606 self._bufferendoffset=buf.getcurrentoffset()
607
608
610 try: self.__field_entry
611 except:
612 self.__field_entry=UINT(**{'sizeinbytes': 2, 'default': 0xffff})
613 return self.__field_entry.getvalue()
614
615 - def __setfield_entry(self, value):
616 if isinstance(value,UINT):
617 self.__field_entry=value
618 else:
619 self.__field_entry=UINT(value,**{'sizeinbytes': 2, 'default': 0xffff})
620
621 - def __delfield_entry(self): del self.__field_entry
622
623 entry=property(__getfield_entry, __setfield_entry, __delfield_entry, None)
624
626 try: self.__field_number
627 except:
628 self.__field_number=UINT(**{'sizeinbytes': 1, 'default': 0xff})
629 return self.__field_number.getvalue()
630
632 if isinstance(value,UINT):
633 self.__field_number=value
634 else:
635 self.__field_number=UINT(value,**{'sizeinbytes': 1, 'default': 0xff})
636
638
639 number=property(__getfield_number, __setfield_number, __delfield_number, None)
640
643
645 yield ('entry', self.__field_entry, None)
646 yield ('number', self.__field_number, None)
647
648
649
650
652 __fields=['speeddials']
653
662
663
666
667
683
684
685
686 - def writetobuffer(self,buf,autolog=True,logtitle="<written data>"):
687 'Writes this packet to the supplied buffer'
688 self._bufferstartoffset=buf.getcurrentoffset()
689 try: self.__field_speeddials
690 except:
691 self.__field_speeddials=LIST(**{'length': NUMSPEEDDIALS, 'elementclass': speeddial})
692 self.__field_speeddials.writetobuffer(buf)
693 self._bufferendoffset=buf.getcurrentoffset()
694 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle)
695
696
704
705
707 try: self.__field_speeddials
708 except:
709 self.__field_speeddials=LIST(**{'length': NUMSPEEDDIALS, 'elementclass': speeddial})
710 return self.__field_speeddials.getvalue()
711
713 if isinstance(value,LIST):
714 self.__field_speeddials=value
715 else:
716 self.__field_speeddials=LIST(value,**{'length': NUMSPEEDDIALS, 'elementclass': speeddial})
717
719
720 speeddials=property(__getfield_speeddials, __setfield_speeddials, __delfield_speeddials, None)
721
724
726 yield ('speeddials', self.__field_speeddials, None)
727
728
729
730
732 __fields=['name', 'ringtone']
733
742
743
746
747
759
760
761
762 - def writetobuffer(self,buf,autolog=True,logtitle="<written data>"):
763 'Writes this packet to the supplied buffer'
764 self._bufferstartoffset=buf.getcurrentoffset()
765 self.__field_name.writetobuffer(buf)
766 try: self.__field_ringtone
767 except:
768 self.__field_ringtone=UINT(**{'sizeinbytes': 2, 'default': 0xffff })
769 self.__field_ringtone.writetobuffer(buf)
770 self._bufferendoffset=buf.getcurrentoffset()
771 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle)
772
773
775 'Reads this packet from the supplied buffer'
776 self._bufferstartoffset=buf.getcurrentoffset()
777 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle)
778 self.__field_name=USTRING(**{'sizeinbytes': 23, 'encoding': PHONE_ENCODING, 'raiseonunterminatedread': False, 'raiseontruncate': False })
779 self.__field_name.readfrombuffer(buf)
780 self.__field_ringtone=UINT(**{'sizeinbytes': 2, 'default': 0xffff })
781 self.__field_ringtone.readfrombuffer(buf)
782 self._bufferendoffset=buf.getcurrentoffset()
783
784
787
789 if isinstance(value,USTRING):
790 self.__field_name=value
791 else:
792 self.__field_name=USTRING(value,**{'sizeinbytes': 23, 'encoding': PHONE_ENCODING, 'raiseonunterminatedread': False, 'raiseontruncate': False })
793
795
796 name=property(__getfield_name, __setfield_name, __delfield_name, None)
797
799 try: self.__field_ringtone
800 except:
801 self.__field_ringtone=UINT(**{'sizeinbytes': 2, 'default': 0xffff })
802 return self.__field_ringtone.getvalue()
803
805 if isinstance(value,UINT):
806 self.__field_ringtone=value
807 else:
808 self.__field_ringtone=UINT(value,**{'sizeinbytes': 2, 'default': 0xffff })
809
811
812 ringtone=property(__getfield_ringtone, __setfield_ringtone, __delfield_ringtone, None)
813
816
818 yield ('name', self.__field_name, None)
819 yield ('ringtone', self.__field_ringtone, None)
820
821
822
823
825 "Phonebook groups"
826 __fields=['groups']
827
836
837
840
841
857
858
859
860 - def writetobuffer(self,buf,autolog=True,logtitle="<written data>"):
861 'Writes this packet to the supplied buffer'
862 self._bufferstartoffset=buf.getcurrentoffset()
863 try: self.__field_groups
864 except:
865 self.__field_groups=LIST(**{'elementclass': pbgroup})
866 self.__field_groups.writetobuffer(buf)
867 self._bufferendoffset=buf.getcurrentoffset()
868 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle)
869
870
878
879
881 try: self.__field_groups
882 except:
883 self.__field_groups=LIST(**{'elementclass': pbgroup})
884 return self.__field_groups.getvalue()
885
887 if isinstance(value,LIST):
888 self.__field_groups=value
889 else:
890 self.__field_groups=LIST(value,**{'elementclass': pbgroup})
891
893
894 groups=property(__getfield_groups, __setfield_groups, __delfield_groups, None)
895
898
900 yield ('groups', self.__field_groups, None)
901
902
903
904
906 "Random information about the phone"
907 __fields=['header', 'pad']
908
917
918
921
922
934
935
936
937 - def writetobuffer(self,buf,autolog=True,logtitle="<written data>"):
938 'Writes this packet to the supplied buffer'
939 self._bufferstartoffset=buf.getcurrentoffset()
940 try: self.__field_header
941 except:
942 self.__field_header=pbheader(**{'command': 0x15, 'flag': 0x01})
943 self.__field_header.writetobuffer(buf)
944 try: self.__field_pad
945 except:
946 self.__field_pad=UNKNOWN(**{'sizeinbytes': 6})
947 self.__field_pad.writetobuffer(buf)
948 self._bufferendoffset=buf.getcurrentoffset()
949 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle)
950
951
953 'Reads this packet from the supplied buffer'
954 self._bufferstartoffset=buf.getcurrentoffset()
955 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle)
956 self.__field_header=pbheader(**{'command': 0x15, 'flag': 0x01})
957 self.__field_header.readfrombuffer(buf)
958 self.__field_pad=UNKNOWN(**{'sizeinbytes': 6})
959 self.__field_pad.readfrombuffer(buf)
960 self._bufferendoffset=buf.getcurrentoffset()
961
962
964 try: self.__field_header
965 except:
966 self.__field_header=pbheader(**{'command': 0x15, 'flag': 0x01})
967 return self.__field_header.getvalue()
968
970 if isinstance(value,pbheader):
971 self.__field_header=value
972 else:
973 self.__field_header=pbheader(value,**{'command': 0x15, 'flag': 0x01})
974
976
977 header=property(__getfield_header, __setfield_header, __delfield_header, None)
978
980 try: self.__field_pad
981 except:
982 self.__field_pad=UNKNOWN(**{'sizeinbytes': 6})
983 return self.__field_pad.getvalue()
984
986 if isinstance(value,UNKNOWN):
987 self.__field_pad=value
988 else:
989 self.__field_pad=UNKNOWN(value,**{'sizeinbytes': 6})
990
992
993 pad=property(__getfield_pad, __setfield_pad, __delfield_pad, None)
994
997
999 yield ('header', self.__field_header, None)
1000 yield ('pad', self.__field_pad, None)
1001
1002
1003
1004
1006 __fields=['header', 'dunno1', 'firstentry', 'numentries', 'dunno2']
1007
1016
1017
1020
1021
1033
1034
1035
1036 - def writetobuffer(self,buf,autolog=True,logtitle="<written data>"):
1046
1047
1049 'Reads this packet from the supplied buffer'
1050 self._bufferstartoffset=buf.getcurrentoffset()
1051 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle)
1052 self.__field_header=pbheader()
1053 self.__field_header.readfrombuffer(buf)
1054 self.__field_dunno1=UNKNOWN(**{'sizeinbytes': 10})
1055 self.__field_dunno1.readfrombuffer(buf)
1056 self.__field_firstentry=UINT(**{'sizeinbytes': 4})
1057 self.__field_firstentry.readfrombuffer(buf)
1058 self.__field_numentries=UINT(**{'sizeinbytes': 2})
1059 self.__field_numentries.readfrombuffer(buf)
1060 self.__field_dunno2=UNKNOWN()
1061 self.__field_dunno2.readfrombuffer(buf)
1062 self._bufferendoffset=buf.getcurrentoffset()
1063
1064
1066 return self.__field_header.getvalue()
1067
1069 if isinstance(value,pbheader):
1070 self.__field_header=value
1071 else:
1072 self.__field_header=pbheader(value,)
1073
1075
1076 header=property(__getfield_header, __setfield_header, __delfield_header, None)
1077
1079 return self.__field_dunno1.getvalue()
1080
1082 if isinstance(value,UNKNOWN):
1083 self.__field_dunno1=value
1084 else:
1085 self.__field_dunno1=UNKNOWN(value,**{'sizeinbytes': 10})
1086
1088
1089 dunno1=property(__getfield_dunno1, __setfield_dunno1, __delfield_dunno1, None)
1090
1092 return self.__field_firstentry.getvalue()
1093
1094 - def __setfield_firstentry(self, value):
1095 if isinstance(value,UINT):
1096 self.__field_firstentry=value
1097 else:
1098 self.__field_firstentry=UINT(value,**{'sizeinbytes': 4})
1099
1100 - def __delfield_firstentry(self): del self.__field_firstentry
1101
1102 firstentry=property(__getfield_firstentry, __setfield_firstentry, __delfield_firstentry, None)
1103
1105 return self.__field_numentries.getvalue()
1106
1108 if isinstance(value,UINT):
1109 self.__field_numentries=value
1110 else:
1111 self.__field_numentries=UINT(value,**{'sizeinbytes': 2})
1112
1114
1115 numentries=property(__getfield_numentries, __setfield_numentries, __delfield_numentries, None)
1116
1118 return self.__field_dunno2.getvalue()
1119
1121 if isinstance(value,UNKNOWN):
1122 self.__field_dunno2=value
1123 else:
1124 self.__field_dunno2=UNKNOWN(value,)
1125
1127
1128 dunno2=property(__getfield_dunno2, __setfield_dunno2, __delfield_dunno2, None)
1129
1132
1134 yield ('header', self.__field_header, None)
1135 yield ('dunno1', self.__field_dunno1, None)
1136 yield ('firstentry', self.__field_firstentry, None)
1137 yield ('numentries', self.__field_numentries, None)
1138 yield ('dunno2', self.__field_dunno2, None)
1139
1140
1141
1142
1143 -class pbfileentry(BaseProtogenClass):
1144 __fields=['serial1', 'entrynumber', 'data1', 'ringtone', 'group', 'wallpaper', 'data2', 'unknown']
1145
1146 - def __init__(self, *args, **kwargs):
1147 dict={}
1148
1149 dict.update(kwargs)
1150
1151 super(pbfileentry,self).__init__(**dict)
1152 if self.__class__ is pbfileentry:
1153 self._update(args,dict)
1154
1155
1156 - def getfields(self):
1157 return self.__fields
1158
1159
1160 - def _update(self, args, kwargs):
1161 super(pbfileentry,self)._update(args,kwargs)
1162 keys=kwargs.keys()
1163 for key in keys:
1164 if key in self.__fields:
1165 setattr(self, key, kwargs[key])
1166 del kwargs[key]
1167
1168 if __debug__:
1169 self._complainaboutunusedargs(pbfileentry,kwargs)
1170 if len(args): raise TypeError('Unexpected arguments supplied: '+`args`)
1171
1172
1173
1174 - def writetobuffer(self,buf,autolog=True,logtitle="<written data>"):
1175 'Writes this packet to the supplied buffer'
1176 self._bufferstartoffset=buf.getcurrentoffset()
1177 self.__field_serial1.writetobuffer(buf)
1178 self.__field_entrynumber.writetobuffer(buf)
1179 self.__field_data1.writetobuffer(buf)
1180 self.__field_ringtone.writetobuffer(buf)
1181 self.__field_group.writetobuffer(buf)
1182 self.__field_wallpaper.writetobuffer(buf)
1183 self.__field_data2.writetobuffer(buf)
1184 self.__field_unknown.writetobuffer(buf)
1185 self._bufferendoffset=buf.getcurrentoffset()
1186 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle)
1187
1188
1189 - def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"):
1190 'Reads this packet from the supplied buffer'
1191 self._bufferstartoffset=buf.getcurrentoffset()
1192 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle)
1193 self.__field_serial1=UINT(**{'sizeinbytes': 4})
1194 self.__field_serial1.readfrombuffer(buf)
1195 self.__field_entrynumber=UINT(**{'sizeinbytes': 2})
1196 self.__field_entrynumber.readfrombuffer(buf)
1197 self.__field_data1=DATA(**{'sizeinbytes': 172})
1198 self.__field_data1.readfrombuffer(buf)
1199 self.__field_ringtone=UINT(**{'sizeinbytes': 2})
1200 self.__field_ringtone.readfrombuffer(buf)
1201 self.__field_group=UINT(**{'sizeinbytes': 2})
1202 self.__field_group.readfrombuffer(buf)
1203 self.__field_wallpaper=UINT(**{'sizeinbytes': 2})
1204 self.__field_wallpaper.readfrombuffer(buf)
1205 self.__field_data2=DATA(**{'sizeinbytes': 256})
1206 self.__field_data2.readfrombuffer(buf)
1207 self.__field_unknown=UNKNOWN()
1208 self.__field_unknown.readfrombuffer(buf)
1209 self._bufferendoffset=buf.getcurrentoffset()
1210
1211
1213 return self.__field_serial1.getvalue()
1214
1215 - def __setfield_serial1(self, value):
1216 if isinstance(value,UINT):
1217 self.__field_serial1=value
1218 else:
1219 self.__field_serial1=UINT(value,**{'sizeinbytes': 4})
1220
1221 - def __delfield_serial1(self): del self.__field_serial1
1222
1223 serial1=property(__getfield_serial1, __setfield_serial1, __delfield_serial1, None)
1224
1226 return self.__field_entrynumber.getvalue()
1227
1228 - def __setfield_entrynumber(self, value):
1229 if isinstance(value,UINT):
1230 self.__field_entrynumber=value
1231 else:
1232 self.__field_entrynumber=UINT(value,**{'sizeinbytes': 2})
1233
1234 - def __delfield_entrynumber(self): del self.__field_entrynumber
1235
1236 entrynumber=property(__getfield_entrynumber, __setfield_entrynumber, __delfield_entrynumber, None)
1237
1238 - def __getfield_data1(self):
1239 return self.__field_data1.getvalue()
1240
1241 - def __setfield_data1(self, value):
1242 if isinstance(value,DATA):
1243 self.__field_data1=value
1244 else:
1245 self.__field_data1=DATA(value,**{'sizeinbytes': 172})
1246
1247 - def __delfield_data1(self): del self.__field_data1
1248
1249 data1=property(__getfield_data1, __setfield_data1, __delfield_data1, None)
1250
1252 return self.__field_ringtone.getvalue()
1253
1254 - def __setfield_ringtone(self, value):
1255 if isinstance(value,UINT):
1256 self.__field_ringtone=value
1257 else:
1258 self.__field_ringtone=UINT(value,**{'sizeinbytes': 2})
1259
1260 - def __delfield_ringtone(self): del self.__field_ringtone
1261
1262 ringtone=property(__getfield_ringtone, __setfield_ringtone, __delfield_ringtone, None)
1263
1264 - def __getfield_group(self):
1265 return self.__field_group.getvalue()
1266
1267 - def __setfield_group(self, value):
1268 if isinstance(value,UINT):
1269 self.__field_group=value
1270 else:
1271 self.__field_group=UINT(value,**{'sizeinbytes': 2})
1272
1273 - def __delfield_group(self): del self.__field_group
1274
1275 group=property(__getfield_group, __setfield_group, __delfield_group, None)
1276
1278 return self.__field_wallpaper.getvalue()
1279
1280 - def __setfield_wallpaper(self, value):
1281 if isinstance(value,UINT):
1282 self.__field_wallpaper=value
1283 else:
1284 self.__field_wallpaper=UINT(value,**{'sizeinbytes': 2})
1285
1286 - def __delfield_wallpaper(self): del self.__field_wallpaper
1287
1288 wallpaper=property(__getfield_wallpaper, __setfield_wallpaper, __delfield_wallpaper, None)
1289
1290 - def __getfield_data2(self):
1291 return self.__field_data2.getvalue()
1292
1293 - def __setfield_data2(self, value):
1294 if isinstance(value,DATA):
1295 self.__field_data2=value
1296 else:
1297 self.__field_data2=DATA(value,**{'sizeinbytes': 256})
1298
1299 - def __delfield_data2(self): del self.__field_data2
1300
1301 data2=property(__getfield_data2, __setfield_data2, __delfield_data2, None)
1302
1304 return self.__field_unknown.getvalue()
1305
1306 - def __setfield_unknown(self, value):
1307 if isinstance(value,UNKNOWN):
1308 self.__field_unknown=value
1309 else:
1310 self.__field_unknown=UNKNOWN(value,)
1311
1312 - def __delfield_unknown(self): del self.__field_unknown
1313
1314 unknown=property(__getfield_unknown, __setfield_unknown, __delfield_unknown, None)
1315
1316 - def iscontainer(self):
1318
1320 yield ('serial1', self.__field_serial1, None)
1321 yield ('entrynumber', self.__field_entrynumber, None)
1322 yield ('data1', self.__field_data1, None)
1323 yield ('ringtone', self.__field_ringtone, None)
1324 yield ('group', self.__field_group, None)
1325 yield ('wallpaper', self.__field_wallpaper, None)
1326 yield ('data2', self.__field_data2, None)
1327 yield ('unknown', self.__field_unknown, None)
1328
1329
1330
1331
1332 -class pbfile(BaseProtogenClass):
1333 __fields=['items']
1334
1343
1344
1347
1348
1364
1365
1366
1367 - def writetobuffer(self,buf,autolog=True,logtitle="<written data>"):
1373
1374
1382
1383
1385 return self.__field_items.getvalue()
1386
1388 if isinstance(value,LIST):
1389 self.__field_items=value
1390 else:
1391 self.__field_items=LIST(value,**{ 'elementclass': pbfileentry })
1392
1394
1395 items=property(__getfield_items, __setfield_items, __delfield_items, None)
1396
1399
1401 yield ('items', self.__field_items, None)
1402
1403
1404
1405
1407 __fields=['path']
1408
1417
1418
1421
1422
1438
1439
1440
1441 - def writetobuffer(self,buf,autolog=True,logtitle="<written data>"):
1442 'Writes this packet to the supplied buffer'
1443 self._bufferstartoffset=buf.getcurrentoffset()
1444 try: self.__field_path
1445 except:
1446 self.__field_path=USTRING(**{'sizeinbytes': 80, 'terminator': None, 'pad': 0xFF, 'default': "" })
1447 self.__field_path.writetobuffer(buf)
1448 self._bufferendoffset=buf.getcurrentoffset()
1449 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle)
1450
1451
1453 'Reads this packet from the supplied buffer'
1454 self._bufferstartoffset=buf.getcurrentoffset()
1455 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle)
1456 self.__field_path=USTRING(**{'sizeinbytes': 80, 'terminator': None, 'pad': 0xFF, 'default': "" })
1457 self.__field_path.readfrombuffer(buf)
1458 self._bufferendoffset=buf.getcurrentoffset()
1459
1460
1462 try: self.__field_path
1463 except:
1464 self.__field_path=USTRING(**{'sizeinbytes': 80, 'terminator': None, 'pad': 0xFF, 'default': "" })
1465 return self.__field_path.getvalue()
1466
1468 if isinstance(value,USTRING):
1469 self.__field_path=value
1470 else:
1471 self.__field_path=USTRING(value,**{'sizeinbytes': 80, 'terminator': None, 'pad': 0xFF, 'default': "" })
1472
1474
1475 path=property(__getfield_path, __setfield_path, __delfield_path, None)
1476
1479
1481 yield ('path', self.__field_path, None)
1482
1483
1484
1485
1487 __fields=['items']
1488
1497
1498
1501
1502
1518
1519
1520
1521 - def writetobuffer(self,buf,autolog=True,logtitle="<written data>"):
1530
1531
1539
1540
1546
1548 if isinstance(value,LIST):
1549 self.__field_items=value
1550 else:
1551 self.__field_items=LIST(value,**{ 'length': NUMPHONEBOOKENTRIES, 'elementclass': wallpaper_id, 'createdefault': True })
1552
1554
1555 items=property(__getfield_items, __setfield_items, __delfield_items, None)
1556
1559
1561 yield ('items', self.__field_items, None)
1562
1563
1564
1565
1566 -class PathIndexEntry(BaseProtogenClass):
1567 __fields=['pathname']
1568
1569 - def __init__(self, *args, **kwargs):
1570 dict={}
1571
1572 dict.update(kwargs)
1573
1574 super(PathIndexEntry,self).__init__(**dict)
1575 if self.__class__ is PathIndexEntry:
1576 self._update(args,dict)
1577
1578
1579 - def getfields(self):
1580 return self.__fields
1581
1582
1583 - def _update(self, args, kwargs):
1584 super(PathIndexEntry,self)._update(args,kwargs)
1585 keys=kwargs.keys()
1586 for key in keys:
1587 if key in self.__fields:
1588 setattr(self, key, kwargs[key])
1589 del kwargs[key]
1590
1591 if __debug__:
1592 self._complainaboutunusedargs(PathIndexEntry,kwargs)
1593 if len(args):
1594 dict2={'sizeinbytes': 255, 'encoding': PHONE_ENCODING, 'default': '' }
1595 dict2.update(kwargs)
1596 kwargs=dict2
1597 self.__field_pathname=USTRING(*args,**dict2)
1598
1599
1600
1601 - def writetobuffer(self,buf,autolog=True,logtitle="<written data>"):
1602 'Writes this packet to the supplied buffer'
1603 self._bufferstartoffset=buf.getcurrentoffset()
1604 try: self.__field_pathname
1605 except:
1606 self.__field_pathname=USTRING(**{'sizeinbytes': 255, 'encoding': PHONE_ENCODING, 'default': '' })
1607 self.__field_pathname.writetobuffer(buf)
1608 self._bufferendoffset=buf.getcurrentoffset()
1609 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle)
1610
1611
1612 - def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"):
1613 'Reads this packet from the supplied buffer'
1614 self._bufferstartoffset=buf.getcurrentoffset()
1615 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle)
1616 self.__field_pathname=USTRING(**{'sizeinbytes': 255, 'encoding': PHONE_ENCODING, 'default': '' })
1617 self.__field_pathname.readfrombuffer(buf)
1618 self._bufferendoffset=buf.getcurrentoffset()
1619
1620
1622 try: self.__field_pathname
1623 except:
1624 self.__field_pathname=USTRING(**{'sizeinbytes': 255, 'encoding': PHONE_ENCODING, 'default': '' })
1625 return self.__field_pathname.getvalue()
1626
1627 - def __setfield_pathname(self, value):
1628 if isinstance(value,USTRING):
1629 self.__field_pathname=value
1630 else:
1631 self.__field_pathname=USTRING(value,**{'sizeinbytes': 255, 'encoding': PHONE_ENCODING, 'default': '' })
1632
1633 - def __delfield_pathname(self): del self.__field_pathname
1634
1635 pathname=property(__getfield_pathname, __setfield_pathname, __delfield_pathname, None)
1636
1637 - def iscontainer(self):
1639
1641 yield ('pathname', self.__field_pathname, None)
1642
1643
1644
1645
1647 __fields=['items']
1648
1657
1658
1661
1662
1678
1679
1680
1681 - def writetobuffer(self,buf,autolog=True,logtitle="<written data>"):
1690
1691
1699
1700
1706
1712
1714
1715 items=property(__getfield_items, __setfield_items, __delfield_items, None)
1716
1719
1721 yield ('items', self.__field_items, None)
1722
1723
1724
1725
1727 __fields=['pos', 'day', 'month', 'year']
1728
1737
1738
1741
1742
1754
1755
1756
1757 - def writetobuffer(self,buf,autolog=True,logtitle="<written data>"):
1766
1767
1769 'Reads this packet from the supplied buffer'
1770 self._bufferstartoffset=buf.getcurrentoffset()
1771 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle)
1772 self.__field_pos=UINT(**{'sizeinbytes': 4})
1773 self.__field_pos.readfrombuffer(buf)
1774 self.__field_day=UINT(**{'sizeinbytes': 1})
1775 self.__field_day.readfrombuffer(buf)
1776 self.__field_month=UINT(**{'sizeinbytes': 1})
1777 self.__field_month.readfrombuffer(buf)
1778 self.__field_year=UINT(**{'sizeinbytes': 2})
1779 self.__field_year.readfrombuffer(buf)
1780 self._bufferendoffset=buf.getcurrentoffset()
1781
1782
1785
1787 if isinstance(value,UINT):
1788 self.__field_pos=value
1789 else:
1790 self.__field_pos=UINT(value,**{'sizeinbytes': 4})
1791
1793
1794 pos=property(__getfield_pos, __setfield_pos, __delfield_pos, "Refers to event id (position in schedule file) that this suppresses")
1795
1798
1800 if isinstance(value,UINT):
1801 self.__field_day=value
1802 else:
1803 self.__field_day=UINT(value,**{'sizeinbytes': 1})
1804
1806
1807 day=property(__getfield_day, __setfield_day, __delfield_day, None)
1808
1810 return self.__field_month.getvalue()
1811
1813 if isinstance(value,UINT):
1814 self.__field_month=value
1815 else:
1816 self.__field_month=UINT(value,**{'sizeinbytes': 1})
1817
1819
1820 month=property(__getfield_month, __setfield_month, __delfield_month, None)
1821
1823 return self.__field_year.getvalue()
1824
1826 if isinstance(value,UINT):
1827 self.__field_year=value
1828 else:
1829 self.__field_year=UINT(value,**{'sizeinbytes': 2})
1830
1832
1833 year=property(__getfield_year, __setfield_year, __delfield_year, None)
1834
1837
1839 yield ('pos', self.__field_pos, "Refers to event id (position in schedule file) that this suppresses")
1840 yield ('day', self.__field_day, None)
1841 yield ('month', self.__field_month, None)
1842 yield ('year', self.__field_year, None)
1843
1844
1845
1846
1848 __fields=['items']
1849
1858
1859
1862
1863
1879
1880
1881
1882 - def writetobuffer(self,buf,autolog=True,logtitle="<written data>"):
1883 'Writes this packet to the supplied buffer'
1884 self._bufferstartoffset=buf.getcurrentoffset()
1885 try: self.__field_items
1886 except:
1887 self.__field_items=LIST(**{'elementclass': scheduleexception})
1888 self.__field_items.writetobuffer(buf)
1889 self._bufferendoffset=buf.getcurrentoffset()
1890 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle)
1891
1892
1900
1901
1903 try: self.__field_items
1904 except:
1905 self.__field_items=LIST(**{'elementclass': scheduleexception})
1906 return self.__field_items.getvalue()
1907
1909 if isinstance(value,LIST):
1910 self.__field_items=value
1911 else:
1912 self.__field_items=LIST(value,**{'elementclass': scheduleexception})
1913
1915
1916 items=property(__getfield_items, __setfield_items, __delfield_items, None)
1917
1920
1922 yield ('items', self.__field_items, None)
1923
1924
1925
1926
1928 __fields=['pos', 'description', 'start', 'end', 'repeat', 'alarmindex_vibrate', 'ringtone', 'alarmminutes', 'alarmhours', 'unknown1', 'unknown2']
1929
1938
1939
1942
1943
1955
1956
1957
1958 - def writetobuffer(self,buf,autolog=True,logtitle="<written data>"):
1974
1975
1977 'Reads this packet from the supplied buffer'
1978 self._bufferstartoffset=buf.getcurrentoffset()
1979 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle)
1980 self.__field_pos=UINT(**{'sizeinbytes': 4})
1981 self.__field_pos.readfrombuffer(buf)
1982 self.__field_description=USTRING(**{'sizeinbytes': 33, 'encoding': PHONE_ENCODING, 'raiseonunterminatedread': False, 'raiseontruncate': False })
1983 self.__field_description.readfrombuffer(buf)
1984 self.__field_start=LGCALDATE(**{'sizeinbytes': 4})
1985 self.__field_start.readfrombuffer(buf)
1986 self.__field_end=LGCALDATE(**{'sizeinbytes': 4})
1987 self.__field_end.readfrombuffer(buf)
1988 self.__field_repeat=LGCALREPEAT(**{'sizeinbytes': 4})
1989 self.__field_repeat.readfrombuffer(buf)
1990 self.__field_alarmindex_vibrate=UINT(**{'sizeinbytes': 1})
1991 self.__field_alarmindex_vibrate.readfrombuffer(buf)
1992 self.__field_ringtone=UINT(**{'sizeinbytes': 2})
1993 self.__field_ringtone.readfrombuffer(buf)
1994 self.__field_alarmminutes=UINT(**{'sizeinbytes': 1})
1995 self.__field_alarmminutes.readfrombuffer(buf)
1996 self.__field_alarmhours=UINT(**{'sizeinbytes': 1})
1997 self.__field_alarmhours.readfrombuffer(buf)
1998 self.__field_unknown1=UINT(**{'sizeinbytes': 1})
1999 self.__field_unknown1.readfrombuffer(buf)
2000 self.__field_unknown2=UINT(**{'sizeinbytes': 2})
2001 self.__field_unknown2.readfrombuffer(buf)
2002 self._bufferendoffset=buf.getcurrentoffset()
2003
2004
2007
2009 if isinstance(value,UINT):
2010 self.__field_pos=value
2011 else:
2012 self.__field_pos=UINT(value,**{'sizeinbytes': 4})
2013
2015
2016 pos=property(__getfield_pos, __setfield_pos, __delfield_pos, "position within file, used as an event id")
2017
2019 return self.__field_description.getvalue()
2020
2022 if isinstance(value,USTRING):
2023 self.__field_description=value
2024 else:
2025 self.__field_description=USTRING(value,**{'sizeinbytes': 33, 'encoding': PHONE_ENCODING, 'raiseonunterminatedread': False, 'raiseontruncate': False })
2026
2028
2029 description=property(__getfield_description, __setfield_description, __delfield_description, None)
2030
2032 return self.__field_start.getvalue()
2033
2035 if isinstance(value,LGCALDATE):
2036 self.__field_start=value
2037 else:
2038 self.__field_start=LGCALDATE(value,**{'sizeinbytes': 4})
2039
2041
2042 start=property(__getfield_start, __setfield_start, __delfield_start, None)
2043
2046
2048 if isinstance(value,LGCALDATE):
2049 self.__field_end=value
2050 else:
2051 self.__field_end=LGCALDATE(value,**{'sizeinbytes': 4})
2052
2054
2055 end=property(__getfield_end, __setfield_end, __delfield_end, None)
2056
2058 return self.__field_repeat.getvalue()
2059
2061 if isinstance(value,LGCALREPEAT):
2062 self.__field_repeat=value
2063 else:
2064 self.__field_repeat=LGCALREPEAT(value,**{'sizeinbytes': 4})
2065
2067
2068 repeat=property(__getfield_repeat, __setfield_repeat, __delfield_repeat, None)
2069
2071 return self.__field_alarmindex_vibrate.getvalue()
2072
2074 if isinstance(value,UINT):
2075 self.__field_alarmindex_vibrate=value
2076 else:
2077 self.__field_alarmindex_vibrate=UINT(value,**{'sizeinbytes': 1})
2078
2080
2081 alarmindex_vibrate=property(__getfield_alarmindex_vibrate, __setfield_alarmindex_vibrate, __delfield_alarmindex_vibrate, None)
2082
2084 return self.__field_ringtone.getvalue()
2085
2087 if isinstance(value,UINT):
2088 self.__field_ringtone=value
2089 else:
2090 self.__field_ringtone=UINT(value,**{'sizeinbytes': 2})
2091
2093
2094 ringtone=property(__getfield_ringtone, __setfield_ringtone, __delfield_ringtone, None)
2095
2097 return self.__field_alarmminutes.getvalue()
2098
2100 if isinstance(value,UINT):
2101 self.__field_alarmminutes=value
2102 else:
2103 self.__field_alarmminutes=UINT(value,**{'sizeinbytes': 1})
2104
2106
2107 alarmminutes=property(__getfield_alarmminutes, __setfield_alarmminutes, __delfield_alarmminutes, "a value of 0xFF indicates not set")
2108
2110 return self.__field_alarmhours.getvalue()
2111
2113 if isinstance(value,UINT):
2114 self.__field_alarmhours=value
2115 else:
2116 self.__field_alarmhours=UINT(value,**{'sizeinbytes': 1})
2117
2119
2120 alarmhours=property(__getfield_alarmhours, __setfield_alarmhours, __delfield_alarmhours, "a value of 0xFF indicates not set")
2121
2123 return self.__field_unknown1.getvalue()
2124
2126 if isinstance(value,UINT):
2127 self.__field_unknown1=value
2128 else:
2129 self.__field_unknown1=UINT(value,**{'sizeinbytes': 1})
2130
2132
2133 unknown1=property(__getfield_unknown1, __setfield_unknown1, __delfield_unknown1, None)
2134
2136 return self.__field_unknown2.getvalue()
2137
2139 if isinstance(value,UINT):
2140 self.__field_unknown2=value
2141 else:
2142 self.__field_unknown2=UINT(value,**{'sizeinbytes': 2})
2143
2145
2146 unknown2=property(__getfield_unknown2, __setfield_unknown2, __delfield_unknown2, None)
2147
2150
2152 yield ('pos', self.__field_pos, "position within file, used as an event id")
2153 yield ('description', self.__field_description, None)
2154 yield ('start', self.__field_start, None)
2155 yield ('end', self.__field_end, None)
2156 yield ('repeat', self.__field_repeat, None)
2157 yield ('alarmindex_vibrate', self.__field_alarmindex_vibrate, None)
2158 yield ('ringtone', self.__field_ringtone, None)
2159 yield ('alarmminutes', self.__field_alarmminutes, "a value of 0xFF indicates not set")
2160 yield ('alarmhours', self.__field_alarmhours, "a value of 0xFF indicates not set")
2161 yield ('unknown1', self.__field_unknown1, None)
2162 yield ('unknown2', self.__field_unknown2, None)
2163
2164
2165
2166
2168 __fields=['numactiveitems', 'events']
2169
2178
2179
2182
2183
2195
2196
2197
2198 - def writetobuffer(self,buf,autolog=True,logtitle="<written data>"):
2199 'Writes this packet to the supplied buffer'
2200 self._bufferstartoffset=buf.getcurrentoffset()
2201 self.__field_numactiveitems.writetobuffer(buf)
2202 try: self.__field_events
2203 except:
2204 self.__field_events=LIST(**{'elementclass': scheduleevent})
2205 self.__field_events.writetobuffer(buf)
2206 self._bufferendoffset=buf.getcurrentoffset()
2207 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle)
2208
2209
2211 'Reads this packet from the supplied buffer'
2212 self._bufferstartoffset=buf.getcurrentoffset()
2213 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle)
2214 self.__field_numactiveitems=UINT(**{'sizeinbytes': 2})
2215 self.__field_numactiveitems.readfrombuffer(buf)
2216 self.__field_events=LIST(**{'elementclass': scheduleevent})
2217 self.__field_events.readfrombuffer(buf)
2218 self._bufferendoffset=buf.getcurrentoffset()
2219
2220
2222 return self.__field_numactiveitems.getvalue()
2223
2225 if isinstance(value,UINT):
2226 self.__field_numactiveitems=value
2227 else:
2228 self.__field_numactiveitems=UINT(value,**{'sizeinbytes': 2})
2229
2231
2232 numactiveitems=property(__getfield_numactiveitems, __setfield_numactiveitems, __delfield_numactiveitems, None)
2233
2235 try: self.__field_events
2236 except:
2237 self.__field_events=LIST(**{'elementclass': scheduleevent})
2238 return self.__field_events.getvalue()
2239
2241 if isinstance(value,LIST):
2242 self.__field_events=value
2243 else:
2244 self.__field_events=LIST(value,**{'elementclass': scheduleevent})
2245
2247
2248 events=property(__getfield_events, __setfield_events, __delfield_events, None)
2249
2252
2254 yield ('numactiveitems', self.__field_numactiveitems, None)
2255 yield ('events', self.__field_events, None)
2256
2257
2258
2259
2260 -class ULReq(BaseProtogenClass):
2261 ""
2262 __fields=['cmd', 'unlock_code', 'unlock_key', 'zero']
2263
2272
2273
2276
2277
2289
2290
2291
2292 - def writetobuffer(self,buf,autolog=True,logtitle="<written data>"):
2293 'Writes this packet to the supplied buffer'
2294 self._bufferstartoffset=buf.getcurrentoffset()
2295 try: self.__field_cmd
2296 except:
2297 self.__field_cmd=UINT(**{'sizeinbytes': 1, 'default': 0xFE })
2298 self.__field_cmd.writetobuffer(buf)
2299 try: self.__field_unlock_code
2300 except:
2301 self.__field_unlock_code=UINT(**{'sizeinbytes': 1, 'default': 0x00 })
2302 self.__field_unlock_code.writetobuffer(buf)
2303 self.__field_unlock_key.writetobuffer(buf)
2304 try: self.__field_zero
2305 except:
2306 self.__field_zero=UINT(**{'sizeinbytes': 1, 'default': 0x00 })
2307 self.__field_zero.writetobuffer(buf)
2308 self._bufferendoffset=buf.getcurrentoffset()
2309 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle)
2310
2311
2313 'Reads this packet from the supplied buffer'
2314 self._bufferstartoffset=buf.getcurrentoffset()
2315 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle)
2316 self.__field_cmd=UINT(**{'sizeinbytes': 1, 'default': 0xFE })
2317 self.__field_cmd.readfrombuffer(buf)
2318 self.__field_unlock_code=UINT(**{'sizeinbytes': 1, 'default': 0x00 })
2319 self.__field_unlock_code.readfrombuffer(buf)
2320 self.__field_unlock_key=UINT(**{'sizeinbytes': 4})
2321 self.__field_unlock_key.readfrombuffer(buf)
2322 self.__field_zero=UINT(**{'sizeinbytes': 1, 'default': 0x00 })
2323 self.__field_zero.readfrombuffer(buf)
2324 self._bufferendoffset=buf.getcurrentoffset()
2325
2326
2328 try: self.__field_cmd
2329 except:
2330 self.__field_cmd=UINT(**{'sizeinbytes': 1, 'default': 0xFE })
2331 return self.__field_cmd.getvalue()
2332
2334 if isinstance(value,UINT):
2335 self.__field_cmd=value
2336 else:
2337 self.__field_cmd=UINT(value,**{'sizeinbytes': 1, 'default': 0xFE })
2338
2340
2341 cmd=property(__getfield_cmd, __setfield_cmd, __delfield_cmd, None)
2342
2344 try: self.__field_unlock_code
2345 except:
2346 self.__field_unlock_code=UINT(**{'sizeinbytes': 1, 'default': 0x00 })
2347 return self.__field_unlock_code.getvalue()
2348
2350 if isinstance(value,UINT):
2351 self.__field_unlock_code=value
2352 else:
2353 self.__field_unlock_code=UINT(value,**{'sizeinbytes': 1, 'default': 0x00 })
2354
2356
2357 unlock_code=property(__getfield_unlock_code, __setfield_unlock_code, __delfield_unlock_code, None)
2358
2360 return self.__field_unlock_key.getvalue()
2361
2363 if isinstance(value,UINT):
2364 self.__field_unlock_key=value
2365 else:
2366 self.__field_unlock_key=UINT(value,**{'sizeinbytes': 4})
2367
2369
2370 unlock_key=property(__getfield_unlock_key, __setfield_unlock_key, __delfield_unlock_key, None)
2371
2373 try: self.__field_zero
2374 except:
2375 self.__field_zero=UINT(**{'sizeinbytes': 1, 'default': 0x00 })
2376 return self.__field_zero.getvalue()
2377
2379 if isinstance(value,UINT):
2380 self.__field_zero=value
2381 else:
2382 self.__field_zero=UINT(value,**{'sizeinbytes': 1, 'default': 0x00 })
2383
2385
2386 zero=property(__getfield_zero, __setfield_zero, __delfield_zero, None)
2387
2390
2392 yield ('cmd', self.__field_cmd, None)
2393 yield ('unlock_code', self.__field_unlock_code, None)
2394 yield ('unlock_key', self.__field_unlock_key, None)
2395 yield ('zero', self.__field_zero, None)
2396
2397
2398
2399
2400 -class ULRes(BaseProtogenClass):
2401 ""
2402 __fields=['cmd', 'unlock_code', 'unlock_key', 'unlock_ok']
2403
2412
2413
2416
2417
2429
2430
2431
2432 - def writetobuffer(self,buf,autolog=True,logtitle="<written data>"):
2441
2442
2444 'Reads this packet from the supplied buffer'
2445 self._bufferstartoffset=buf.getcurrentoffset()
2446 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle)
2447 self.__field_cmd=UINT(**{'sizeinbytes': 1})
2448 self.__field_cmd.readfrombuffer(buf)
2449 self.__field_unlock_code=UINT(**{'sizeinbytes': 1})
2450 self.__field_unlock_code.readfrombuffer(buf)
2451 self.__field_unlock_key=UINT(**{'sizeinbytes': 4})
2452 self.__field_unlock_key.readfrombuffer(buf)
2453 self.__field_unlock_ok=UINT(**{'sizeinbytes': 1})
2454 self.__field_unlock_ok.readfrombuffer(buf)
2455 self._bufferendoffset=buf.getcurrentoffset()
2456
2457
2460
2462 if isinstance(value,UINT):
2463 self.__field_cmd=value
2464 else:
2465 self.__field_cmd=UINT(value,**{'sizeinbytes': 1})
2466
2468
2469 cmd=property(__getfield_cmd, __setfield_cmd, __delfield_cmd, None)
2470
2472 return self.__field_unlock_code.getvalue()
2473
2475 if isinstance(value,UINT):
2476 self.__field_unlock_code=value
2477 else:
2478 self.__field_unlock_code=UINT(value,**{'sizeinbytes': 1})
2479
2481
2482 unlock_code=property(__getfield_unlock_code, __setfield_unlock_code, __delfield_unlock_code, None)
2483
2485 return self.__field_unlock_key.getvalue()
2486
2488 if isinstance(value,UINT):
2489 self.__field_unlock_key=value
2490 else:
2491 self.__field_unlock_key=UINT(value,**{'sizeinbytes': 4})
2492
2494
2495 unlock_key=property(__getfield_unlock_key, __setfield_unlock_key, __delfield_unlock_key, None)
2496
2498 return self.__field_unlock_ok.getvalue()
2499
2501 if isinstance(value,UINT):
2502 self.__field_unlock_ok=value
2503 else:
2504 self.__field_unlock_ok=UINT(value,**{'sizeinbytes': 1})
2505
2507
2508 unlock_ok=property(__getfield_unlock_ok, __setfield_unlock_ok, __delfield_unlock_ok, None)
2509
2512
2514 yield ('cmd', self.__field_cmd, None)
2515 yield ('unlock_code', self.__field_unlock_code, None)
2516 yield ('unlock_key', self.__field_unlock_key, None)
2517 yield ('unlock_ok', self.__field_unlock_ok, None)
2518
2519
2520
2521
2522 -class textmemo(BaseProtogenClass):
2523 __fields=['text', 'memotime']
2524
2525 - def __init__(self, *args, **kwargs):
2526 dict={}
2527
2528 dict.update(kwargs)
2529
2530 super(textmemo,self).__init__(**dict)
2531 if self.__class__ is textmemo:
2532 self._update(args,dict)
2533
2534
2535 - def getfields(self):
2536 return self.__fields
2537
2538
2539 - def _update(self, args, kwargs):
2540 super(textmemo,self)._update(args,kwargs)
2541 keys=kwargs.keys()
2542 for key in keys:
2543 if key in self.__fields:
2544 setattr(self, key, kwargs[key])
2545 del kwargs[key]
2546
2547 if __debug__:
2548 self._complainaboutunusedargs(textmemo,kwargs)
2549 if len(args): raise TypeError('Unexpected arguments supplied: '+`args`)
2550
2551
2552
2553 - def writetobuffer(self,buf,autolog=True,logtitle="<written data>"):
2554 'Writes this packet to the supplied buffer'
2555 self._bufferstartoffset=buf.getcurrentoffset()
2556 self.__field_text.writetobuffer(buf)
2557 self.__field_memotime.writetobuffer(buf)
2558 self._bufferendoffset=buf.getcurrentoffset()
2559 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle)
2560
2561
2562 - def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"):
2563 'Reads this packet from the supplied buffer'
2564 self._bufferstartoffset=buf.getcurrentoffset()
2565 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle)
2566 self.__field_text=USTRING(**{'sizeinbytes': 151, 'encoding': PHONE_ENCODING, 'raiseonunterminatedread': False, 'raiseontruncate': False })
2567 self.__field_text.readfrombuffer(buf)
2568 self.__field_memotime=LGCALDATE(**{'sizeinbytes': 4})
2569 self.__field_memotime.readfrombuffer(buf)
2570 self._bufferendoffset=buf.getcurrentoffset()
2571
2572
2573 - def __getfield_text(self):
2574 return self.__field_text.getvalue()
2575
2576 - def __setfield_text(self, value):
2577 if isinstance(value,USTRING):
2578 self.__field_text=value
2579 else:
2580 self.__field_text=USTRING(value,**{'sizeinbytes': 151, 'encoding': PHONE_ENCODING, 'raiseonunterminatedread': False, 'raiseontruncate': False })
2581
2582 - def __delfield_text(self): del self.__field_text
2583
2584 text=property(__getfield_text, __setfield_text, __delfield_text, None)
2585
2587 return self.__field_memotime.getvalue()
2588
2589 - def __setfield_memotime(self, value):
2590 if isinstance(value,LGCALDATE):
2591 self.__field_memotime=value
2592 else:
2593 self.__field_memotime=LGCALDATE(value,**{'sizeinbytes': 4})
2594
2595 - def __delfield_memotime(self): del self.__field_memotime
2596
2597 memotime=property(__getfield_memotime, __setfield_memotime, __delfield_memotime, None)
2598
2599 - def iscontainer(self):
2601
2603 yield ('text', self.__field_text, None)
2604 yield ('memotime', self.__field_memotime, None)
2605
2606
2607
2608
2609 -class textmemofile(BaseProtogenClass):
2610 __fields=['itemcount', 'items']
2611
2612 - def __init__(self, *args, **kwargs):
2613 dict={}
2614
2615 dict.update(kwargs)
2616
2617 super(textmemofile,self).__init__(**dict)
2618 if self.__class__ is textmemofile:
2619 self._update(args,dict)
2620
2621
2622 - def getfields(self):
2623 return self.__fields
2624
2625
2626 - def _update(self, args, kwargs):
2627 super(textmemofile,self)._update(args,kwargs)
2628 keys=kwargs.keys()
2629 for key in keys:
2630 if key in self.__fields:
2631 setattr(self, key, kwargs[key])
2632 del kwargs[key]
2633
2634 if __debug__:
2635 self._complainaboutunusedargs(textmemofile,kwargs)
2636 if len(args): raise TypeError('Unexpected arguments supplied: '+`args`)
2637
2638
2639
2640 - def writetobuffer(self,buf,autolog=True,logtitle="<written data>"):
2641 'Writes this packet to the supplied buffer'
2642 self._bufferstartoffset=buf.getcurrentoffset()
2643 self.__field_itemcount.writetobuffer(buf)
2644 try: self.__field_items
2645 except:
2646 self.__field_items=LIST(**{ 'elementclass': textmemo })
2647 self.__field_items.writetobuffer(buf)
2648 self._bufferendoffset=buf.getcurrentoffset()
2649 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle)
2650
2651
2652 - def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"):
2653 'Reads this packet from the supplied buffer'
2654 self._bufferstartoffset=buf.getcurrentoffset()
2655 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle)
2656 self.__field_itemcount=UINT(**{'sizeinbytes': 4})
2657 self.__field_itemcount.readfrombuffer(buf)
2658 self.__field_items=LIST(**{ 'elementclass': textmemo })
2659 self.__field_items.readfrombuffer(buf)
2660 self._bufferendoffset=buf.getcurrentoffset()
2661
2662
2664 return self.__field_itemcount.getvalue()
2665
2666 - def __setfield_itemcount(self, value):
2667 if isinstance(value,UINT):
2668 self.__field_itemcount=value
2669 else:
2670 self.__field_itemcount=UINT(value,**{'sizeinbytes': 4})
2671
2672 - def __delfield_itemcount(self): del self.__field_itemcount
2673
2674 itemcount=property(__getfield_itemcount, __setfield_itemcount, __delfield_itemcount, None)
2675
2676 - def __getfield_items(self):
2677 try: self.__field_items
2678 except:
2679 self.__field_items=LIST(**{ 'elementclass': textmemo })
2680 return self.__field_items.getvalue()
2681
2682 - def __setfield_items(self, value):
2683 if isinstance(value,LIST):
2684 self.__field_items=value
2685 else:
2686 self.__field_items=LIST(value,**{ 'elementclass': textmemo })
2687
2688 - def __delfield_items(self): del self.__field_items
2689
2690 items=property(__getfield_items, __setfield_items, __delfield_items, None)
2691
2692 - def iscontainer(self):
2694
2696 yield ('itemcount', self.__field_itemcount, None)
2697 yield ('items', self.__field_items, None)
2698
2699
2700
2701
2702 -class call(BaseProtogenClass):
2703 __fields=['GPStime', 'unknown2', 'duration', 'number', 'name', 'numberlength', 'pbnumbertype', 'unknown2', 'pbentrynum', 'unknown3']
2704
2706 dict={}
2707
2708 dict.update(kwargs)
2709
2710 super(call,self).__init__(**dict)
2711 if self.__class__ is call:
2712 self._update(args,dict)
2713
2714
2717
2718
2730
2731
2732
2733 - def writetobuffer(self,buf,autolog=True,logtitle="<written data>"):
2748
2749
2751 'Reads this packet from the supplied buffer'
2752 self._bufferstartoffset=buf.getcurrentoffset()
2753 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle)
2754 self.__field_GPStime=GPSDATE(**{'sizeinbytes': 4})
2755 self.__field_GPStime.readfrombuffer(buf)
2756 self.__field_unknown2=UINT(**{'sizeinbytes': 4})
2757 self.__field_unknown2.readfrombuffer(buf)
2758 self.__field_duration=UINT(**{'sizeinbytes': 4})
2759 self.__field_duration.readfrombuffer(buf)
2760 self.__field_number=USTRING(**{'sizeinbytes': 49, 'raiseonunterminatedread': False})
2761 self.__field_number.readfrombuffer(buf)
2762 self.__field_name=USTRING(**{'sizeinbytes': 36, 'encoding': PHONE_ENCODING, 'raiseonunterminatedread': False})
2763 self.__field_name.readfrombuffer(buf)
2764 self.__field_numberlength=UINT(**{'sizeinbytes': 2})
2765 self.__field_numberlength.readfrombuffer(buf)
2766 self.__field_pbnumbertype=UINT(**{'sizeinbytes': 1})
2767 self.__field_pbnumbertype.readfrombuffer(buf)
2768 self.__field_unknown2=UINT(**{'sizeinbytes': 3})
2769 self.__field_unknown2.readfrombuffer(buf)
2770 self.__field_pbentrynum=UINT(**{'sizeinbytes': 2})
2771 self.__field_pbentrynum.readfrombuffer(buf)
2772 self.__field_unknown3=UINT(**{'sizeinbytes': 58})
2773 self.__field_unknown3.readfrombuffer(buf)
2774 self._bufferendoffset=buf.getcurrentoffset()
2775
2776
2778 return self.__field_GPStime.getvalue()
2779
2781 if isinstance(value,GPSDATE):
2782 self.__field_GPStime=value
2783 else:
2784 self.__field_GPStime=GPSDATE(value,**{'sizeinbytes': 4})
2785
2787
2788 GPStime=property(__getfield_GPStime, __setfield_GPStime, __delfield_GPStime, None)
2789
2791 return self.__field_unknown2.getvalue()
2792
2794 if isinstance(value,UINT):
2795 self.__field_unknown2=value
2796 else:
2797 self.__field_unknown2=UINT(value,**{'sizeinbytes': 4})
2798
2800
2801 unknown2=property(__getfield_unknown2, __setfield_unknown2, __delfield_unknown2, None)
2802
2804 return self.__field_duration.getvalue()
2805
2807 if isinstance(value,UINT):
2808 self.__field_duration=value
2809 else:
2810 self.__field_duration=UINT(value,**{'sizeinbytes': 4})
2811
2813
2814 duration=property(__getfield_duration, __setfield_duration, __delfield_duration, None)
2815
2817 return self.__field_number.getvalue()
2818
2820 if isinstance(value,USTRING):
2821 self.__field_number=value
2822 else:
2823 self.__field_number=USTRING(value,**{'sizeinbytes': 49, 'raiseonunterminatedread': False})
2824
2826
2827 number=property(__getfield_number, __setfield_number, __delfield_number, None)
2828
2830 return self.__field_name.getvalue()
2831
2833 if isinstance(value,USTRING):
2834 self.__field_name=value
2835 else:
2836 self.__field_name=USTRING(value,**{'sizeinbytes': 36, 'encoding': PHONE_ENCODING, 'raiseonunterminatedread': False})
2837
2839
2840 name=property(__getfield_name, __setfield_name, __delfield_name, None)
2841
2843 return self.__field_numberlength.getvalue()
2844
2846 if isinstance(value,UINT):
2847 self.__field_numberlength=value
2848 else:
2849 self.__field_numberlength=UINT(value,**{'sizeinbytes': 2})
2850
2852
2853 numberlength=property(__getfield_numberlength, __setfield_numberlength, __delfield_numberlength, None)
2854
2856 return self.__field_pbnumbertype.getvalue()
2857
2859 if isinstance(value,UINT):
2860 self.__field_pbnumbertype=value
2861 else:
2862 self.__field_pbnumbertype=UINT(value,**{'sizeinbytes': 1})
2863
2865
2866 pbnumbertype=property(__getfield_pbnumbertype, __setfield_pbnumbertype, __delfield_pbnumbertype, None)
2867
2869 return self.__field_unknown2.getvalue()
2870
2872 if isinstance(value,UINT):
2873 self.__field_unknown2=value
2874 else:
2875 self.__field_unknown2=UINT(value,**{'sizeinbytes': 3})
2876
2878
2879 unknown2=property(__getfield_unknown2, __setfield_unknown2, __delfield_unknown2, None)
2880
2882 return self.__field_pbentrynum.getvalue()
2883
2884 - def __setfield_pbentrynum(self, value):
2885 if isinstance(value,UINT):
2886 self.__field_pbentrynum=value
2887 else:
2888 self.__field_pbentrynum=UINT(value,**{'sizeinbytes': 2})
2889
2890 - def __delfield_pbentrynum(self): del self.__field_pbentrynum
2891
2892 pbentrynum=property(__getfield_pbentrynum, __setfield_pbentrynum, __delfield_pbentrynum, None)
2893
2895 return self.__field_unknown3.getvalue()
2896
2898 if isinstance(value,UINT):
2899 self.__field_unknown3=value
2900 else:
2901 self.__field_unknown3=UINT(value,**{'sizeinbytes': 58})
2902
2904
2905 unknown3=property(__getfield_unknown3, __setfield_unknown3, __delfield_unknown3, None)
2906
2909
2911 yield ('GPStime', self.__field_GPStime, None)
2912 yield ('unknown2', self.__field_unknown2, None)
2913 yield ('duration', self.__field_duration, None)
2914 yield ('number', self.__field_number, None)
2915 yield ('name', self.__field_name, None)
2916 yield ('numberlength', self.__field_numberlength, None)
2917 yield ('pbnumbertype', self.__field_pbnumbertype, None)
2918 yield ('unknown2', self.__field_unknown2, None)
2919 yield ('pbentrynum', self.__field_pbentrynum, None)
2920 yield ('unknown3', self.__field_unknown3, None)
2921
2922
2923
2924
2925 -class callhistory(BaseProtogenClass):
2926 __fields=['numcalls', 'unknown1', 'calls']
2927
2928 - def __init__(self, *args, **kwargs):
2929 dict={}
2930
2931 dict.update(kwargs)
2932
2933 super(callhistory,self).__init__(**dict)
2934 if self.__class__ is callhistory:
2935 self._update(args,dict)
2936
2937
2938 - def getfields(self):
2939 return self.__fields
2940
2941
2942 - def _update(self, args, kwargs):
2943 super(callhistory,self)._update(args,kwargs)
2944 keys=kwargs.keys()
2945 for key in keys:
2946 if key in self.__fields:
2947 setattr(self, key, kwargs[key])
2948 del kwargs[key]
2949
2950 if __debug__:
2951 self._complainaboutunusedargs(callhistory,kwargs)
2952 if len(args): raise TypeError('Unexpected arguments supplied: '+`args`)
2953
2954
2955
2956 - def writetobuffer(self,buf,autolog=True,logtitle="<written data>"):
2957 'Writes this packet to the supplied buffer'
2958 self._bufferstartoffset=buf.getcurrentoffset()
2959 self.__field_numcalls.writetobuffer(buf)
2960 self.__field_unknown1.writetobuffer(buf)
2961 try: self.__field_calls
2962 except:
2963 self.__field_calls=LIST(**{'elementclass': call})
2964 self.__field_calls.writetobuffer(buf)
2965 self._bufferendoffset=buf.getcurrentoffset()
2966 if autolog and self._bufferstartoffset==0: self.autologwrite(buf, logtitle=logtitle)
2967
2968
2969 - def readfrombuffer(self,buf,autolog=True,logtitle="<read data>"):
2970 'Reads this packet from the supplied buffer'
2971 self._bufferstartoffset=buf.getcurrentoffset()
2972 if autolog and self._bufferstartoffset==0: self.autologread(buf, logtitle=logtitle)
2973 self.__field_numcalls=UINT(**{'sizeinbytes': 4})
2974 self.__field_numcalls.readfrombuffer(buf)
2975 self.__field_unknown1=UINT(**{'sizeinbytes': 1})
2976 self.__field_unknown1.readfrombuffer(buf)
2977 self.__field_calls=LIST(**{'elementclass': call})
2978 self.__field_calls.readfrombuffer(buf)
2979 self._bufferendoffset=buf.getcurrentoffset()
2980
2981
2983 return self.__field_numcalls.getvalue()
2984
2985 - def __setfield_numcalls(self, value):
2986 if isinstance(value,UINT):
2987 self.__field_numcalls=value
2988 else:
2989 self.__field_numcalls=UINT(value,**{'sizeinbytes': 4})
2990
2991 - def __delfield_numcalls(self): del self.__field_numcalls
2992
2993 numcalls=property(__getfield_numcalls, __setfield_numcalls, __delfield_numcalls, None)
2994
2996 return self.__field_unknown1.getvalue()
2997
2998 - def __setfield_unknown1(self, value):
2999 if isinstance(value,UINT):
3000 self.__field_unknown1=value
3001 else:
3002 self.__field_unknown1=UINT(value,**{'sizeinbytes': 1})
3003
3004 - def __delfield_unknown1(self): del self.__field_unknown1
3005
3006 unknown1=property(__getfield_unknown1, __setfield_unknown1, __delfield_unknown1, None)
3007
3008 - def __getfield_calls(self):
3009 try: self.__field_calls
3010 except:
3011 self.__field_calls=LIST(**{'elementclass': call})
3012 return self.__field_calls.getvalue()
3013
3014 - def __setfield_calls(self, value):
3015 if isinstance(value,LIST):
3016 self.__field_calls=value
3017 else:
3018 self.__field_calls=LIST(value,**{'elementclass': call})
3019
3020 - def __delfield_calls(self): del self.__field_calls
3021
3022 calls=property(__getfield_calls, __setfield_calls, __delfield_calls, None)
3023
3024 - def iscontainer(self):
3026
3028 yield ('numcalls', self.__field_numcalls, None)
3029 yield ('unknown1', self.__field_unknown1, None)
3030 yield ('calls', self.__field_calls, None)
3031