home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / mmpm21tk.zip / TK / FSSHT / HHPHEAP.H < prev    next >
C/C++ Source or Header  |  1993-02-09  |  3KB  |  70 lines

  1.  
  2. /********************** START OF SPECIFICATIONS *****************************/
  3. /*                                                                          */
  4. /* SOURCE FILE NAME: HHPHEAP.H                                              */
  5. /*                                                                          */
  6. /* DESCRIPTIVE NAME: Heap manager include file.                             */
  7. /*                                                                          */
  8. /* COPYRIGHT:                                                               */
  9. /*                 Copyright (c) IBM Corporation 1991                       */
  10. /*                         All Rights Reserved                              */
  11. /*                                                                          */
  12. /* STATUS: OS/2 MM Release 1.00                                             */
  13. /*                                                                          */
  14. /* ABSTRACT: Contains data structures and prototypes that are used in       */
  15. /*           HHP API's.                                                     */
  16. /*                                                                          */
  17. /*********************** END OF SPECIFICATIONS ******************************/
  18.  
  19.  
  20. #ifndef _HHPHEAP_H_
  21. #define _HHPHEAP_H_
  22.  
  23. typedef PVOID HHUGEHEAP;
  24.  
  25. HHUGEHEAP APIENTRY HhpCreateHeap( ULONG uInitSize,
  26.                                   USHORT fFlags );
  27.  
  28. PVOID     APIENTRY HhpTAllocMem ( HHUGEHEAP hheap, ULONG cbLen, PSZ pszFile, ULONG uLine);
  29. PVOID     APIENTRY HhpIAllocMem ( HHUGEHEAP hheap, ULONG cbLen );
  30.  
  31. #ifdef MMDEBUG
  32. #define MM_HEAP_DEBUG_VAR "MM_HEAP"
  33. #define HhpAllocMem(u,v) HhpTAllocMem (u, v, (PSZ)__FILE__, (ULONG)__LINE__)
  34. #else
  35. #define HhpAllocMem(u,v) HhpTAllocMem (u, v, (PSZ)NULL, (ULONG)NULL)
  36. #endif
  37.  
  38.  
  39. BOOL      APIENTRY HhpFreeMem( HHUGEHEAP hheap,
  40.                                PVOID pData );
  41.  
  42. BOOL      APIENTRY HhpDestroyHeap( HHUGEHEAP hheap );
  43.  
  44.  
  45. /* Shared Heap Support */
  46.  
  47. USHORT    APIENTRY HhpAccessHeap( HHUGEHEAP hheap,
  48.                                   PID pid );
  49.  
  50. USHORT    APIENTRY HhpReleaseHeap( HHUGEHEAP hheap,
  51.                                    PID pid );
  52.  
  53. PID       APIENTRY HhpGetPID( VOID );
  54.  
  55. /* Low-Level Independent (Not Suballocated) Buffer Support */
  56.  
  57. PBYTE     APIENTRY HhpAllocBuffer( ULONG lSize,
  58.                                    USHORT fFlags );
  59.  
  60. USHORT    APIENTRY HhpFreeBuffer( PBYTE pBuffer );
  61.  
  62. USHORT    APIENTRY HhpAccessBuffer( PBYTE pBuffer );
  63.  
  64. #define HH_SHARED         0x1    /* Cause the Heap to be Shared */
  65.  
  66. USHORT    APIENTRY HhpDumpHeap( HHUGEHEAP hheap );
  67.  
  68.  
  69. #endif /* _HHPHEAP_H_ */
  70.