home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / header45.zip / bsetib.h < prev    next >
C/C++ Source or Header  |  1999-04-30  |  3KB  |  97 lines

  1. /*      SCCSID = @(#)bsetib.h   6.9 92/03/15 */
  2. /***************************************************************************\
  3. *
  4. * Module Name: BSETIB.H
  5. *
  6. * OS/2 Thread Information Block Include File
  7. *
  8. * Copyright (c) 1989, 1992  IBM Corporation
  9. * Copyright (c) 1989  Microsoft Corporation
  10. *
  11. *****************************************************************************/
  12.  
  13. /* NOINC */
  14. #if __IBMC__ || __IBMCPP__
  15.    #pragma info( none )
  16.       #ifndef __CHKHDR__
  17.          #pragma info( none )
  18.       #endif
  19.    #pragma info( restore )
  20. #endif
  21. #ifdef __cplusplus
  22.       extern "C" {
  23. #endif
  24. /* INC */
  25.  
  26. #ifndef __BSETIB__
  27. /* NOINC */
  28. #define __BSETIB__
  29. /* INC */
  30.  
  31. /*
  32.  *      Thread Information Block (TIB)
  33.  */
  34.  
  35. struct tib2_s
  36.        {
  37.        ULONG   tib2_ultid;             /* Thread I.D. */
  38.        ULONG   tib2_ulpri;             /* Thread priority */
  39.        ULONG   tib2_version;           /* Version number for this structure */
  40.        USHORT  tib2_usMCCount;         /* Must Complete count */
  41.        USHORT  tib2_fMCForceFlag;      /* Must Complete force flag */
  42.        };
  43.  
  44. typedef struct tib2_s TIB2;
  45. typedef struct tib2_s *PTIB2;
  46.  
  47. struct tib_s                           /* TIB Thread Information Block */
  48.        {
  49.         PVOID   tib_pexchain;           /* Head of exception handler chain */
  50.         PVOID   tib_pstack;             /* Pointer to base of stack */
  51.         PVOID   tib_pstacklimit;        /* Pointer to end of stack */
  52.         PTIB2   tib_ptib2;              /* Pointer to system specific TIB */
  53.         ULONG   tib_version;            /* Version number for this TIB structure */
  54.         ULONG   tib_ordinal;            /* Thread ordinal number        */
  55.        };
  56.  
  57.  
  58. typedef struct tib_s    tib_t;
  59. typedef struct tib_s    TIB;
  60. typedef struct tib_s    *PTIB;
  61.  
  62.  
  63. /*
  64.  *      Process Information Block (PIB)
  65.  */
  66.  
  67.  
  68. struct pib_s {                         /* PIB Process Information Block */
  69.        ULONG   pib_ulpid;              /* Process I.D. */
  70.        ULONG   pib_ulppid;             /* Parent process I.D. */
  71.        ULONG   pib_hmte;               /* Program (.EXE) module handle */
  72.        PCHAR   pib_pchcmd;             /* Command line pointer */
  73.        PCHAR   pib_pchenv;             /* Environment pointer */
  74.        ULONG   pib_flstatus;           /* Process' status bits */
  75.        ULONG   pib_ultype;             /* Process' type code */
  76.        };
  77.  
  78.  
  79. typedef struct pib_s    pib_t;
  80. typedef struct pib_s    PIB;
  81. typedef struct pib_s    *PPIB;
  82.  
  83. #endif /* __BSETIB__ */
  84.  
  85. /* NOINC */
  86. #ifdef __cplusplus
  87.         }
  88. #endif
  89. #if __IBMC__ || __IBMCPP__
  90.    #pragma info( none )
  91.       #ifndef __CHKHDR__
  92.          #pragma info( restore )
  93.       #endif
  94.    #pragma info( restore )
  95. #endif
  96. /* INC */
  97.