home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / sd386v50.zip / sd386src.zip / PRNTTYPS.H < prev    next >
Text File  |  1994-05-27  |  4KB  |  117 lines

  1. typedef unsigned char  BYTE;
  2. typedef unsigned short WORD;
  3. typedef unsigned long  DWORD;
  4. /*****************************************************************************/
  5. /*  HLL Format Type Information                                              */
  6. /*****************************************************************************/
  7.  
  8. /* High-Level FID definitions */
  9. #define   HLF_NIL         0x80
  10. #define   HLF_VOID        0x81
  11. #define   HLF_STRING      0x82
  12. #define   HLF_INDEX       0x83
  13. #define   HLF_SPAN_16U    0x85
  14. #define   HLF_SPAN_32U    0x86
  15. #define   HLF_SPAN_8S     0x88
  16. #define   HLF_SPAN_16S    0x89
  17. #define   HLF_SPAN_32S    0x8A
  18. #define   HLF_SPAN_8U     0x8B
  19. #define   HLF_PRECISION   0x8C
  20.  
  21. /* High-Level Type definitions */
  22. #define   HLT_AREA            0x55
  23. #define   HLT_ARRAY           0x78
  24. #define   HLT_BASECLASS       0x41
  25. #define   HLT_BITSTRING       0x5C
  26. #define   HLT_CHARSTRING      0x60
  27. #define   HLT_CLASS           0x40
  28. #define   HLT_CLASS_DEF       0x43
  29. #define   HLT_CLASS_MEMBER    0x46
  30. #define   HLT_CODELABEL       0x72
  31. #define   HLT_ENTRY           0x53
  32. #define   HLT_ENUM            0x7B
  33. #define   HLT_FILE            0x67
  34. #define   HLT_FORMATLABEL     0x65
  35. #define   HLT_FRIEND          0x42
  36. #define   HLT_FUNCTION        0x54
  37. #define   HLT_GRAPHIC         0x62
  38. #define   HLT_LIST            0x7F
  39. #define   HLT_LOGICAL         0x56
  40. #define   HLT_MACRO           0x59
  41. #define   HLT_MEMBER_FUNCTION 0x45
  42. #define   HLT_MEMBER_POINTER  0x49
  43. #define   HLT_PICTURE         0x61
  44. #define   HLT_POINTER         0x7A
  45. #define   HLT_PROCEDURE       0x75
  46. #define   HLT_REFERENCE       0x48
  47. #define   HLT_SCALAR          0x51
  48. #define   HLT_SET             0x52
  49. #define   HLT_STACK           0x57
  50. #define   HLT_STRUCTURE       0x79
  51. #define   HLT_SUBRANGE        0x6F
  52. #define   HLT_USERDEF         0x5D
  53. #define   HLT_SKIP            0x90
  54.  
  55. typedef struct
  56.   { BYTE    recid;                     /* 01                                 */
  57.     WORD    reclen;
  58.     BYTE    rectype;
  59.     BYTE    recqual;
  60.     BYTE    rectext[1];                /* variable length                    */
  61.   } HLTrec;
  62.  
  63. typedef struct
  64.   { WORD    reclen;
  65.     BYTE    rectype;
  66.     BYTE    recqual;
  67.     BYTE    rectext[1];                /* variable length                    */
  68.   } HLTrec2;
  69.  
  70. #define NextHLTypeRec(p)  ((HLTrec *)  ((char *)(p)+((HLTrec *)(p))->reclen+3))
  71. #define NextHLTypeRec2(p) ((HLTrec2 *) ((char *)(p)+((HLTrec2 *)(p))->reclen+2))
  72.  
  73. typedef struct rectypenames
  74.   {
  75.     int     code;
  76.     char    name[20];
  77.   };
  78.  
  79. #define NoOfHLTRecs  31
  80.  
  81. /* record type codes */
  82. static struct rectypenames
  83.    recordtype[NoOfHLTRecs] = {
  84.        HLT_AREA,            "Area     ",
  85.        HLT_ARRAY,           "Array    ",
  86.        HLT_BASECLASS,       "BaseClass",
  87.        HLT_BITSTRING,       "BitString",
  88.        HLT_CHARSTRING,      "CharStr  ",
  89.        HLT_CLASS,           "Class    ",
  90.        HLT_CLASS_DEF,       "ClassDef ",
  91.        HLT_CLASS_MEMBER,    "ClassMem ",
  92.        HLT_CODELABEL,       "CodeLabel",
  93.        HLT_ENTRY,           "Entry    ",
  94.        HLT_ENUM,            "Enum     ",
  95.        HLT_FILE,            "File     ",
  96.        HLT_FORMATLABEL,     "FmtLabel ",
  97.        HLT_FRIEND,          "Friend   ",
  98.        HLT_FUNCTION,        "Procedure",
  99.        HLT_GRAPHIC,         "Graphic  ",
  100.        HLT_LIST,            "List     ",
  101.        HLT_LOGICAL,         "Logical  ",
  102.        HLT_MACRO,           "Macro    ",
  103.        HLT_MEMBER_FUNCTION, "MemberFcn",
  104.        HLT_MEMBER_POINTER,  "MemberPtr",
  105.        HLT_PICTURE,         "Picture  ",
  106.        HLT_POINTER,         "Pointer  ",
  107.        HLT_PROCEDURE,       "Procedure",
  108.        HLT_REFERENCE,       "Reference",
  109.        HLT_SCALAR,          "Scalar   ",
  110.        HLT_SET,             "Set      ",
  111.        HLT_STACK,           "Stack    ",
  112.        HLT_STRUCTURE,       "Structure",
  113.        HLT_SUBRANGE,        "Subrange ",
  114.        HLT_USERDEF,         "UserDef  ",
  115.   };
  116.  
  117.