home *** CD-ROM | disk | FTP | other *** search
/ PC Welt 2006 November (DVD) / PCWELT_11_2006.ISO / casper / filesystem.squashfs / usr / lib / hplip / prnt / ldl.pyc (.txt) < prev    next >
Encoding:
Python Compiled Bytecode  |  2006-08-31  |  8.6 KB  |  238 lines

  1. # Source Generated with Decompyle++
  2. # File: in.pyc (Python 2.4)
  3.  
  4. import struct
  5. import sys
  6. PACKET_FRAME = ord('$')
  7. PACKET_PAD = 255
  8. CMD_HEADER_FMT = '>BHBBBHH'
  9. PACKET_TYPE_COMMAND = 0
  10. PACKET_TYPE_DISABLE_PACING = 1
  11. PACKET_TYPE_ENABLE_PACING = 2
  12. PACKET_TYPE_RESUME_NORMAL_OPERATION = 3
  13. PACKET_TYPE_DISABLE_RESPONSES = 4
  14. PACKET_TYPE_ENABLE_RESPONSES = 5
  15. PACKET_TYPE_RESET_LIDIL = 6
  16. PACKET_TYPE_SYNC = 7
  17. PACKET_TYPE_SYNC_COMPLETE = 8
  18. COMMAND_HANDLE_PEN = 8
  19. COMMAND_HANDLE_PEN_ENTER_PEN_CHANGE = 0
  20. COMMAND_HANDLE_PEN_COMPLETE_PEN_CHANGE = 1
  21. COMMAND_HANDLE_PEN_CLEAN_LEVEL1 = 2
  22. COMMAND_HANDLE_PEN_CLEAN_LEVEL2 = 3
  23. COMMAND_HANDLE_PEN_CLEAN_LEVEL3 = 4
  24. COMMAND_ZCA = 12
  25. COMMAND_ZCA_OPERATION = 11
  26. COMMAND_SET_PRINTER_ALIGNMENT = 12
  27. COMMAND_SET_PRINTER_ALIGNMENT_OPERATION = 6
  28. COMMAND_SET_PEN_ALIGNMENT = 12
  29. COMMAND_SET_PEN_ALIGNMENT_OPERATION = 18
  30. COMMAND_SET_PEN_ALIGNMENT_PEN_BLACK = 0
  31. COMMAND_SET_PEN_ALIGNMENT_PEN_COLOR = 1
  32. COMMAND_SET_PEN_ALIGNMENT_PEN_PHOTO = 2
  33. COMMAND_SET_PEN_ALIGNMENT_ITEM_HORT = 0
  34. COMMAND_SET_PEN_ALIGNMENT_ITEM_VERT = 1
  35. COMMAND_SET_PEN_ALIGNMENT_ITEM_BIDI = 2
  36. COMMAND_SET_PENS_ALIGNED = 12
  37. COMMAND_SET_PENS_ALIGNED_OPERATION = 14
  38. COMMAND_SET_PENS_ALIGNED_K = 1
  39. COMMAND_SET_PENS_ALIGNED_C = 2
  40. COMMAND_SET_PENS_ALIGNED_M = 4
  41. COMMAND_SET_PENS_ALIGNED_Y = 8
  42. COMMAND_SET_PENS_ALIGNED_c = 16
  43. COMMAND_SET_PENS_ALIGNED_m = 32
  44. COMMAND_SET_PENS_ALIGNED_k = 64
  45. COMMAND_SET_HUE_COMPENSATION = 12
  46. COMMAND_SET_HUE_COMPENSATION_OPERATION = 16
  47. COMMAND_SET_HUE_COMPENSATION_PEN_COLOR = 0
  48. COMMAND_SET_HUE_COMPENSATION_PEN_PHOTO = 1
  49. COMMAND_PRINT_INTERNAL_PAGE = 12
  50. COMMAND_PRINT_INTERNAL_PAGE_OPERATION = 17
  51. COMMAND_QUERY = 5
  52. QUERY_PRINTER_ALIGNMENT = 3
  53. QUERY_PEN_ALIGNMENT = 15
  54.  
  55. def buildLIDILPacket(packet_type, command = 0, operation = 0, other = { }):
  56.     if packet_type == PACKET_TYPE_DISABLE_PACING:
  57.         p = '$\x00\x10\x00\x01\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff$'
  58.     elif packet_type == PACKET_TYPE_ENABLE_PACING:
  59.         p = '$\x00\x10\x00\x02\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff$'
  60.     elif packet_type == PACKET_TYPE_RESUME_NORMAL_OPERATION:
  61.         p = '$\x00\x10\x00\x03\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff$'
  62.     elif packet_type == PACKET_TYPE_ENABLE_RESPONSES:
  63.         p = '$\x00\x10\x00\x05\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff$'
  64.     elif packet_type == PACKET_TYPE_DISABLE_RESPONSES:
  65.         p = '$\x00\x10\x00\x04\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff$'
  66.     elif packet_type == PACKET_TYPE_SYNC:
  67.         fmt = ''.join([
  68.             CMD_HEADER_FMT,
  69.             'B' * 245,
  70.             'B',
  71.             'B' * 2048])
  72.         p = struct.pack(fmt, PACKET_FRAME, 256, 0, PACKET_TYPE_SYNC, 0, 0, 2048, (0,) * 245, PACKET_FRAME, (0,) * 2048)
  73.     elif packet_type == PACKET_TYPE_SYNC_COMPLETE:
  74.         p = '$\x00\x10\x00\x08\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff$'
  75.     elif packet_type == PACKET_TYPE_RESET_LIDIL:
  76.         p = '$\x00\x10\x00\x06\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff$'
  77.     elif packet_type == PACKET_TYPE_COMMAND:
  78.         if command == COMMAND_HANDLE_PEN:
  79.             fmt = CMD_HEADER_FMT + 'BBBBBB'
  80.             p = struct.pack(fmt, PACKET_FRAME, struct.calcsize(fmt), 0, PACKET_TYPE_COMMAND, COMMAND_HANDLE_PEN, 0, 0, operation, PACKET_PAD, PACKET_PAD, PACKET_PAD, PACKET_PAD, PACKET_FRAME)
  81.         elif command == COMMAND_SET_PRINTER_ALIGNMENT and operation == COMMAND_SET_PRINTER_ALIGNMENT_OPERATION:
  82.             fmt = CMD_HEADER_FMT + 'BHBBBBBBBBBBBBB'
  83.             b = (0, 0, other['k_bidi'], other['c_vert'], other['c_hort'], other['c_bidi'], other['c_vert'], other['c_hort'], other['c_bidi'], other['c_vert'], other['c_hort'], other['c_bidi'], PACKET_FRAME)
  84.             p = struct.pack(fmt, PACKET_FRAME, struct.calcsize(fmt), 0, PACKET_TYPE_COMMAND, COMMAND_SET_PRINTER_ALIGNMENT, 0, 0, COMMAND_SET_PRINTER_ALIGNMENT_OPERATION, 15, *b)
  85.         elif command == COMMAND_SET_PEN_ALIGNMENT and operation == COMMAND_SET_PEN_ALIGNMENT_OPERATION:
  86.             fmt = CMD_HEADER_FMT + 'BBBbBB'
  87.             p = struct.pack(fmt, PACKET_FRAME, struct.calcsize(fmt), 0, PACKET_TYPE_COMMAND, COMMAND_SET_PEN_ALIGNMENT, 0, 0, COMMAND_SET_PEN_ALIGNMENT_OPERATION, other['pen'], other['item'], other['value'], PACKET_PAD, PACKET_FRAME)
  88.         elif command == COMMAND_ZCA and operation == COMMAND_ZCA_OPERATION:
  89.             fmt = CMD_HEADER_FMT + 'BBhBB'
  90.             p = struct.pack(fmt, PACKET_FRAME, struct.calcsize(fmt), 0, PACKET_TYPE_COMMAND, COMMAND_ZCA, 0, 0, operation, 0, other['zca'], PACKET_PAD, PACKET_FRAME)
  91.         elif command == COMMAND_SET_PENS_ALIGNED and operation == COMMAND_SET_PENS_ALIGNED_OPERATION:
  92.             fmt = CMD_HEADER_FMT + 'BHBBB'
  93.             p = struct.pack(fmt, PACKET_FRAME, struct.calcsize(fmt), 0, PACKET_TYPE_COMMAND, COMMAND_SET_PENS_ALIGNED, 0, 0, operation, other['colors'], PACKET_PAD, PACKET_PAD, PACKET_FRAME)
  94.         elif command == COMMAND_SET_HUE_COMPENSATION and operation == COMMAND_SET_HUE_COMPENSATION_OPERATION:
  95.             fmt = CMD_HEADER_FMT + 'BBbBBB'
  96.             p = struct.pack(fmt, PACKET_FRAME, struct.calcsize(fmt), 0, PACKET_TYPE_COMMAND, COMMAND_SET_HUE_COMPENSATION, 0, 0, operation, other['which'], other['value'], PACKET_PAD, PACKET_PAD, PACKET_FRAME)
  97.         elif command == COMMAND_QUERY:
  98.             fmt = CMD_HEADER_FMT + 'BBHBB'
  99.             p = struct.pack(fmt, PACKET_FRAME, struct.calcsize(fmt), 0, PACKET_TYPE_COMMAND, COMMAND_QUERY, 0, 0, 0, operation, 0, PACKET_PAD, PACKET_FRAME)
  100.         elif command == COMMAND_PRINT_INTERNAL_PAGE:
  101.             fmt = CMD_HEADER_FMT + 'BBBBBB'
  102.             p = struct.pack(fmt, PACKET_FRAME, struct.calcsize(fmt), 0, PACKET_TYPE_COMMAND, COMMAND_PRINT_INTERNAL_PAGE, 0, 0, COMMAND_PRINT_INTERNAL_PAGE_OPERATION, PACKET_PAD, PACKET_PAD, PACKET_PAD, PACKET_PAD, PACKET_FRAME)
  103.         else:
  104.             p = ''
  105.     else:
  106.         p = ''
  107.     if not len(p) >= 16:
  108.         raise AssertionError
  109.     return p
  110.  
  111.  
  112. def buildSyncPacket():
  113.     return buildLIDILPacket(PACKET_TYPE_SYNC)
  114.  
  115.  
  116. def buildSyncCompletePacket():
  117.     return buildLIDILPacket(PACKET_TYPE_SYNC_COMPLETE)
  118.  
  119.  
  120. def buildResetPacket():
  121.     return buildLIDILPacket(PACKET_TYPE_RESET_LIDIL)
  122.  
  123.  
  124. def buildGetAlignmentValues038Packet():
  125.     return buildLIDILPacket(PACKET_TYPE_COMMAND, COMMAND_QUERY, QUERY_PRINTER_ALIGNMENT)
  126.  
  127.  
  128. def buildGetAlignmentValues043Packet():
  129.     return buildLIDILPacket(PACKET_TYPE_COMMAND, COMMAND_QUERY, QUERY_PEN_ALIGNMENT)
  130.  
  131.  
  132. def buildEnableResponsesPacket(enable = True):
  133.     if enable:
  134.         return buildLIDILPacket(PACKET_TYPE_ENABLE_RESPONSES)
  135.     else:
  136.         return buildLIDILPacket(PACKET_TYPE_DISABLE_RESPONSES)
  137.  
  138.  
  139. def buildSetPrinterAlignmentPacket(k_bidi, c_vert, c_hort, c_bidi):
  140.     return buildLIDILPacket(PACKET_TYPE_COMMAND, COMMAND_SET_PRINTER_ALIGNMENT, COMMAND_SET_PRINTER_ALIGNMENT_OPERATION, other = {
  141.         'c_vert': c_vert,
  142.         'c_hort': c_hort,
  143.         'c_bidi': c_bidi,
  144.         'k_bidi': k_bidi })
  145.  
  146.  
  147. def buildPrintInternalPagePacket():
  148.     return buildLIDILPacket(PACKET_TYPE_COMMAND, COMMAND_PRINT_INTERNAL_PAGE, COMMAND_PRINT_INTERNAL_PAGE_OPERATION)
  149.  
  150.  
  151. def buildZCAPacket(value):
  152.     return buildLIDILPacket(PACKET_TYPE_COMMAND, COMMAND_ZCA, COMMAND_ZCA_OPERATION, other = {
  153.         'zca': value })
  154.  
  155.  
  156. def buildBlackBidiPacket(value):
  157.     return buildLIDILPacket(PACKET_TYPE_COMMAND, COMMAND_SET_PEN_ALIGNMENT, COMMAND_SET_PEN_ALIGNMENT_OPERATION, other = {
  158.         'pen': COMMAND_SET_PEN_ALIGNMENT_PEN_BLACK,
  159.         'item': COMMAND_SET_PEN_ALIGNMENT_ITEM_BIDI,
  160.         'value': value })
  161.  
  162.  
  163. def buildPhotoBidiPacket(value):
  164.     return buildLIDILPacket(PACKET_TYPE_COMMAND, COMMAND_SET_PEN_ALIGNMENT, COMMAND_SET_PEN_ALIGNMENT_OPERATION, other = {
  165.         'pen': COMMAND_SET_PEN_ALIGNMENT_PEN_PHOTO,
  166.         'item': COMMAND_SET_PEN_ALIGNMENT_ITEM_BIDI,
  167.         'value': value })
  168.  
  169.  
  170. def buildColorBidiPacket(value):
  171.     return buildLIDILPacket(PACKET_TYPE_COMMAND, COMMAND_SET_PEN_ALIGNMENT, COMMAND_SET_PEN_ALIGNMENT_OPERATION, other = {
  172.         'pen': COMMAND_SET_PEN_ALIGNMENT_PEN_COLOR,
  173.         'item': COMMAND_SET_PEN_ALIGNMENT_ITEM_BIDI,
  174.         'value': value })
  175.  
  176.  
  177. def buildColorHortPacket(value):
  178.     return buildLIDILPacket(PACKET_TYPE_COMMAND, COMMAND_SET_PEN_ALIGNMENT, COMMAND_SET_PEN_ALIGNMENT_OPERATION, other = {
  179.         'pen': COMMAND_SET_PEN_ALIGNMENT_PEN_COLOR,
  180.         'item': COMMAND_SET_PEN_ALIGNMENT_ITEM_HORT,
  181.         'value': value })
  182.  
  183.  
  184. def buildColorVertPacket(value):
  185.     return buildLIDILPacket(PACKET_TYPE_COMMAND, COMMAND_SET_PEN_ALIGNMENT, COMMAND_SET_PEN_ALIGNMENT_OPERATION, other = {
  186.         'pen': COMMAND_SET_PEN_ALIGNMENT_PEN_COLOR,
  187.         'item': COMMAND_SET_PEN_ALIGNMENT_ITEM_VERT,
  188.         'value': value })
  189.  
  190.  
  191. def buildBlackVertPacket(value):
  192.     return buildLIDILPacket(PACKET_TYPE_COMMAND, COMMAND_SET_PEN_ALIGNMENT, COMMAND_SET_PEN_ALIGNMENT_OPERATION, other = {
  193.         'pen': COMMAND_SET_PEN_ALIGNMENT_PEN_BLACK,
  194.         'item': COMMAND_SET_PEN_ALIGNMENT_ITEM_VERT,
  195.         'value': value })
  196.  
  197.  
  198. def buildBlackHortPacket(value):
  199.     return buildLIDILPacket(PACKET_TYPE_COMMAND, COMMAND_SET_PEN_ALIGNMENT, COMMAND_SET_PEN_ALIGNMENT_OPERATION, other = {
  200.         'pen': COMMAND_SET_PEN_ALIGNMENT_PEN_BLACK,
  201.         'item': COMMAND_SET_PEN_ALIGNMENT_ITEM_HORT,
  202.         'value': value })
  203.  
  204.  
  205. def buildPhotoHortPacket(value):
  206.     return buildLIDILPacket(PACKET_TYPE_COMMAND, COMMAND_SET_PEN_ALIGNMENT, COMMAND_SET_PEN_ALIGNMENT_OPERATION, other = {
  207.         'pen': COMMAND_SET_PEN_ALIGNMENT_PEN_PHOTO,
  208.         'item': COMMAND_SET_PEN_ALIGNMENT_ITEM_HORT,
  209.         'value': value })
  210.  
  211.  
  212. def buildPhotoVertPacket(value):
  213.     return buildLIDILPacket(PACKET_TYPE_COMMAND, COMMAND_SET_PEN_ALIGNMENT, COMMAND_SET_PEN_ALIGNMENT_OPERATION, other = {
  214.         'pen': COMMAND_SET_PEN_ALIGNMENT_PEN_PHOTO,
  215.         'item': COMMAND_SET_PEN_ALIGNMENT_ITEM_VERT,
  216.         'value': value })
  217.  
  218.  
  219. def buildPhotoHuePacket(value):
  220.     return buildLIDILPacket(PACKET_TYPE_COMMAND, COMMAND_SET_HUE_COMPENSATION, COMMAND_SET_HUE_COMPENSATION_OPERATION, other = {
  221.         'which': COMMAND_SET_HUE_COMPENSATION_PEN_PHOTO,
  222.         'value': value })
  223.  
  224.  
  225. def buildColorHuePacket(value):
  226.     return buildLIDILPacket(PACKET_TYPE_COMMAND, COMMAND_SET_HUE_COMPENSATION, COMMAND_SET_HUE_COMPENSATION_OPERATION, other = {
  227.         'which': COMMAND_SET_HUE_COMPENSATION_PEN_COLOR,
  228.         'value': value })
  229.  
  230.  
  231. def buildSetPensAlignedPacket():
  232.     return buildLIDILPacket(PACKET_TYPE_COMMAND, COMMAND_SET_PENS_ALIGNED, COMMAND_SET_PENS_ALIGNED_OPERATION, other = {
  233.         'colors': COMMAND_SET_PENS_ALIGNED_C | COMMAND_SET_PENS_ALIGNED_M | COMMAND_SET_PENS_ALIGNED_Y | COMMAND_SET_PENS_ALIGNED_c | COMMAND_SET_PENS_ALIGNED_m | COMMAND_SET_PENS_ALIGNED_k | COMMAND_SET_PENS_ALIGNED_K })
  234.  
  235. if __name__ == '__main__':
  236.     pass
  237.  
  238.