Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

154 lines
5.3 KiB

  1. /*---------------------------------------------------------------------------
  2. JRES.H -- Jumbo Resource definitions
  3. Bert Douglas 6/10/91 Adapted for use in printer
  4. mslin 2/15/92 Adapted for use in Host Resource Executor
  5. Baseline 3.0
  6. */
  7. /*---------------------------------------------------------------------------
  8. Resource Section
  9. /*---------------------------------------------------------------------------
  10. */
  11. #include <pshpack2.h> // BKD 1997-7-9: added
  12. /* Resource Header */
  13. typedef struct
  14. {
  15. UID ulUid; /* shortened version of uid */
  16. USHORT usClass; /* shortened version of class */
  17. }
  18. JG_RES_HDR, *PJG_RES_HDR, FAR *LPJG_RES_HDR;
  19. /* resource state codes */
  20. #define JG_RES_STATE_DEFAULT ((UBYTE) 0x00)
  21. #define JG_RES_STATE_RELEASE ((UBYTE) 0x01)
  22. #define JG_RES_STATE_RETAIN ((UBYTE) 0x02)
  23. #define JG_RES_STATE_MAX ((UBYTE) 0x03)
  24. /* usClass Resource Description */
  25. #define JG_RS_NULL ( (UBYTE) 0x00 ) /* Null */
  26. #define JG_RS_GLYPH ( (UBYTE) 0x01 ) /* Glyph Set */
  27. #define JG_RS_BRUSH ( (UBYTE) 0x02 ) /* Brush */
  28. #define JG_RS_BITMAP ( (UBYTE) 0x03 ) /* Horizontal Bitmap */
  29. #define JG_RS_RPL ( (UBYTE) 0x04 ) /* Redner Primitive List */
  30. #define JG_RS_SPL ( (UBYTE) 0x05 ) /* Supervisory Primitive List */
  31. #define JG_RS_MAX ( (UBYTE) 0x06 ) /* Non-inclusive limit */
  32. /*---------------------------------------------------------------------------
  33. JG_RS_GS (Glyph Set) Resource Definitions
  34. */
  35. typedef struct
  36. {
  37. JG_RES_HDR ResHdr; /* resource header */
  38. USHORT usGlyphs; /* count of glyphs in resource */
  39. USHORT ausOffset[1]; /* table of offsets to the glyphs */
  40. } *PJG_GS_HDR, FAR *LPJG_GS_HDR, JG_GS_HDR;
  41. typedef struct
  42. {
  43. USHORT usHeight;
  44. USHORT usWidth;
  45. ULONG aulPels[1]; /* start of pixel array */
  46. } *PJG_GLYPH, FAR *LPJG_GLYPH, G_GLYPH;
  47. /*---------------------------------------------------------------------------
  48. Brush Resource Definitions
  49. */
  50. typedef struct
  51. {
  52. JG_RES_HDR ResHdr; /* resource header */
  53. ULONG aulPels[32]; /* bitmap array */
  54. } *PJG_BRUSH, FAR *LPJG_BRUSH, JG_BRUSH;
  55. typedef struct
  56. {
  57. JG_RES_HDR ResHdr;
  58. UBYTE ubCompress;
  59. UBYTE ubLeft;
  60. USHORT usHeight;
  61. USHORT usWidth;
  62. ULONG aulPels[1];
  63. } *PJG_BM_HDR, FAR *LPJG_BM_HDR, JG_BM_HDR;
  64. /*---------------------------------------------------------------------------
  65. Render Primitives Section
  66. /*---------------------------------------------------------------------------
  67. */
  68. /* RPL (Render Primitive List) Header */
  69. typedef struct
  70. {
  71. JG_RES_HDR ResHdr; //resource header
  72. USHORT usTopRow; //top row, banding
  73. USHORT usBotomRow; //bottom row, banding
  74. USHORT usLongs; //number of long parm
  75. USHORT usShorts; //number of short parm
  76. USHORT usBytes; //number of byte parm
  77. ULONG ulParm[1]; //start of long parm
  78. } *PJG_RPL_HDR, FAR *LPJG_RPL_HDR, JG_RPL_HDR;
  79. /* RP Opcode Definition */
  80. #define JG_RP_SetRowAbsS ( (UBYTE) 0x00 )
  81. #define JG_RP_SetRowRelB ( (UBYTE) 0x01 )
  82. #define JG_RP_SetColAbsS ( (UBYTE) 0x02 )
  83. #define JG_RP_SetColRelB ( (UBYTE) 0x03 )
  84. #define JG_RP_SetExtAbsS ( (UBYTE) 0x04 )
  85. #define JG_RP_SetExtRelB ( (UBYTE) 0x05 )
  86. #define JG_RP_SelectL ( (UBYTE) 0x10 )
  87. #define JG_RP_SelectS ( (UBYTE) 0x11 )
  88. #define JG_RP_SelectB ( (UBYTE) 0x12 )
  89. #define JG_RP_Null ( (UBYTE) 0x13 )
  90. #define JG_RP_End ( (UBYTE) 0x14 )
  91. #define JG_RP_SetRop ( (UBYTE) 0x15 )
  92. #define JG_RP_SetPenStyle ( (UBYTE) 0x16 )
  93. #define JG_RP_ShowText ( (UBYTE) 0x17 )
  94. #define JG_RP_ShowField ( (UBYTE) 0x18 )
  95. #define JG_RP_SetRopAndBrush ( (UBYTE) 0x19 )
  96. #define JG_RP_SetPatternPhase ( (UBYTE) 0x1A )
  97. #define JG_RP_LineAbsS1 ( (UBYTE) 0x20 )
  98. #define JG_RP_LineAbsSN ( (UBYTE) 0x21 )
  99. #define JG_RP_LineRelB1 ( (UBYTE) 0x22 )
  100. #define JG_RP_LineRelBN ( (UBYTE) 0x23 )
  101. #define JG_RP_LineSlice ( (UBYTE) 0x24 )
  102. #define JG_RP_StylePos ( (UBYTE) 0x25 )
  103. #define JG_RP_FillRow1 ( (UBYTE) 0x30 )
  104. #define JG_RP_FillRowD ( (UBYTE) 0x31 )
  105. #define JG_RP_RectB ( (UBYTE) 0x40 )
  106. #define JG_RP_RectS ( (UBYTE) 0x41 )
  107. #define JG_RP_BitMapHI ( (UBYTE) 0x50 )
  108. #define JG_RP_BitMapHR ( (UBYTE) 0x51 )
  109. #define JG_RP_BitMapV ( (UBYTE) 0x52 )
  110. #define JG_RP_GlyphB1 ( (UBYTE) 0x60 )
  111. #define JG_RP_GlyphS1 ( (UBYTE) 0x61 )
  112. #define JG_RP_GlyphBD ( (UBYTE) 0x62 )
  113. #define JG_RP_GlyphSD ( (UBYTE) 0x63 )
  114. #define JG_RP_GlyphBDN ( (UBYTE) 0x64 )
  115. #define JG_RP_WedgeB ( (UBYTE) 0x70 )
  116. #define JG_RP_WedgeS ( (UBYTE) 0x71 )
  117. /* fbEnds */
  118. #define JG_NO_FIRST_PEL ( (UBYTE) (1<<0) ) /* first pel excluded */
  119. #define JG_NO_LAST_PEL ( (UBYTE) (1<<1) ) /* last pel excluded */
  120. #include <poppack.h> // BKD 1997-7-9: added
  121. /* End --------------------------------------------------------------------*/