List of Heap Library (MEM) API Functions

Shared Heap

MEMGetHeapStartAddress Gets the starting address of the memory region used by the heap.
MEMGetHeapEndAddress Gets the ending address + 1 of the memory region used by the heap.
MEMGetHeapTotalSize Gets the memory size allocated for the heap. This is the overall memory size including that of the header.
MEMGetHeapTotalUsableSize Gets the memory size allocated for the heap. This memory size doesn't include the header size.
MEMFindContainHeap Finds the heap that includes the specified memory block.
MEMFindParentHeap Gets the heap handle of the parent heap.
MEMDumpHeap Displays heap contents. (for debugging)
MEMSetFillValForHeap Sets fill value in memory during heap creation and during memory block allocation/deallocation. (for debugging)
MEMGetFillValForHeap Gets the fill value from memory during heap creation and during memory block allocation/deallocation. (for debugging)
MEMGetHeapType Gets the heap type from the heap handle.

Expanded Heap

MEMCreateExpHeap Creates the expanded heap.
MEMCreateExpHeapEx Creates the expanded heap. (optional designation)
MEMDestroyExpHeap Destroys the expanded heap.
MEMAllocFromExpHeap Allocates a memory block from the expanded heap.
MEMAllocFromExpHeapEx Allocates a memory block from the expanded heap. (alignment designation)
MEMFreeToExpHeap Frees a memory block.
MEMResizeForMBlockExpHeap Changes the memory block size.
MEMGetTotalFreeSizeForExpHeap Gets the total size of the free region in the expanded heap.
MEMGetAllocatableSizeForExpHeap Gets the maximum size of the allocatable memory block.
MEMGetAllocatableSizeForExpHeapEx Gets the maximum size of the allocatable memory block. (alignment designation)
MEMSetAllocModeForExpHeap Sets the allocation mode of the memory block of the expanded heap.
MEMGetAllocModeForExpHeap Gets the allocation mode of the memory block of the expanded heap.
MEMSetGroupIDForExpHeap Sets the group ID of the expanded heap.
MEMGetGroupIDForExpHeap Gets the group ID of the expanded heap.
MEMGetSizeForMBlockExpHeap Gets the size of the memory block.
MEMGetGroupIDForMBlockExpHeap Gets the group ID of the memory block.
MEMGetAllocDirForMBlockExpHeap Gets the allocation direction of the memory block.
MEMVisitAllocatedForExpHeap Makes a specified function perform processing on all memory blocks.
MEMAdjustExpHeap Reduces the memory used by the expanded heap by freeing the available memory in it.
MEMCheckExpHeap Checks whether the expanded heap is corrupted. (for debugging)
MEMCheckForMBlockExpHeap Checks whether the memory blocks of the expanded heap are corrupted. (for debugging)
MEMIsExpHeap Determines whether the heap handle is for an expanded heap.

Frame Heap

MEMCreateFrmHeap Creates the frame heap.
MEMCreateFrmHeapEx Creates the frame heap. (optional designation)
MEMDestroyFrmHeap Destroys the frame heap.
MEMAllocFromFrmHeap Allocates a memory block from the frame heap.
MEMAllocFromFrmHeapEx Allocates a memory block from the frame heap. (alignment designation)
MEMFreeToFrmHeap Frees a memory block.
MEMResizeForMBlockFrmHeap Changes the size of a memory block.
MEMGetAllocatableSizeForFrmHeap Gets the maximum size of the allocatable memory block.
MEMGetAllocatableSizeForFrmHeapEx Gets the maximum size of the allocatable memory block. (alignment designation)
MEMRecordStateForFrmHeap Records the allocation state of the memory block of the frame heap.
MEMFreeByStateToFrmHeap Returns to the memory block allocation state right before recording using the recorded information about the allocation state of the memory block of the frame heap.
MEMAdjustFrmHeap Deallocates the empty space of the frame heap, and reduces the memory region used by the frame heap.
MEMIsFrmHeap Determines whether the heap handle is for a frame heap.

Unit Heap

MEMCreateUnitHeap Creates the unit heap.
MEMCreateUnitHeapEx Creates the unit heap. (alignment and options can be specified)
MEMDestroyUnitHeap Destroys the unit heap.
MEMAllocFromUnitHeap Allocates a memory block from the unit heap.
MEMFreeToUnitHeap Frees a memory block.
MEMCountFreeBlockForUnitHeap Gets the number of memory blocks allocatable from the unit heap.
MEMCalcHeapSizeForUnitHeap Gets the size of the required unit heap from the size and number of the memory blocks.
MEMGetMemBlockSizeForUnitHeap Obtains the size of the unit heap memory blocks.
MEMIsUnitHeap Determines whether the heap handle is for a unit heap.

Memory Allocator

MEMInitAllocatorForExpHeap Initializes the allocator to allocate and free memory from the expanded heap.
MEMInitAllocatorForFrmHeap Initializes the allocator to allocate and deallocate memory from the frame heap.
MEMInitAllocatorForUnitHeap Initializes the allocator to allocate and deallocate memory from the unit heap.
MEMInitAllocatorForOSHeap Initializes the allocator to allocate and deallocate memory from the SDK heap.
MEMAllocFromAllocator Allocates a memory block from the allocator.
MEMFreeToAllocator Returns the memory block to the allocator and frees the memory block.




CONFIDENTIAL