1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 2<HTML> 3 4 5<HEAD> 6<META http-equiv="Content-Type" content="text/html; charset=windows-1252"> 7<META http-equiv="Content-Style-Type" content="text/css"> 8<META name="GENERATOR" content="Microsoft FrontPage 5.0"> 9 <BASE target="main"> 10 11<LINK rel="stylesheet" type="text/css" href="../CSS/revolution.css"> 12 13 <TITLE>Memory Management Library (MEM) API Function List</TITLE> 14</HEAD> 15 16 17<BODY> 18<H1>Memory Management (MEM) API Function List</H1> 19 20<H2><A name="Heap">Shared Heap</A></H2> 21<TABLE class="api_list" border="1"> 22 <TBODY> 23 <TR> 24<TH><A href="Heap/MEMGetHeapStartAddress.html">MEMGetHeapStartAddress</A></TH> 25<TD>Gets the starting address of the memory region used by the heap.</TD> 26 </TR> 27 <TR> 28<TH><A href="Heap/MEMGetHeapEndAddress.html">MEMGetHeapEndAddress</A></TH> 29<TD>Gets the ending address + 1 of the memory region used by the heap.</TD> 30 </TR> 31 <TR> 32<TH><A href="Heap/MEMGetHeapTotalSize.html">MEMGetHeapTotalSize</A></TH> 33<TD>Gets the memory size allocated for the heap. This is the overall memory size including that of the header.</TD> 34 </TR> 35 <TR> 36<TH><A href="Heap/MEMGetHeapTotalUsableSize.html">MEMGetHeapTotalUsableSize</A></TH> 37<TD>Gets the memory size allocated for the heap. This memory size doesn't include the header size.</TD> 38 </TR> 39 <TR> 40<TH><A href="Heap/MEMFindContainHeap.html">MEMFindContainHeap</A></TH> 41<TD>Finds the heap that includes the specified memory block.</TD> 42 </TR> 43 <TR> 44<TH><A href="Heap/MEMFindParentHeap.html">MEMFindParentHeap</A></TH> 45<TD>Gets the heap handle of the parent heap.</TD> 46 </TR> 47 <TR> 48<TH><A href="Heap/MEMDumpHeap.html">MEMDumpHeap</A></TH> 49<TD>Displays heap contents. (for debugging)</TD> 50 </TR> 51 <TR> 52<TH><A href="Heap/MEMSetFillValForHeap.html">MEMSetFillValForHeap</A></TH> 53<TD>Sets fill value in memory during heap creation and during memory block allocation and deallocation. (for debugging)</TD> 54 </TR> 55 <TR> 56<TH><A href="Heap/MEMGetFillValForHeap.html">MEMGetFillValForHeap</A></TH> 57<TD>Gets the fill value from memory during heap creation and during memory block allocation and deallocation. (for debugging)</TD> 58 </TR> 59 <TR> 60<TH><A href="Heap/MEMGetHeapType.html">MEMGetHeapType</A></TH> 61<TD>Gets the heap type from the heap handle.</TD> 62 </TR> 63 </TBODY> 64</TABLE> 65 66<H2><A name="ExpHeap">Expanded Heap</A></H2> 67<TABLE class="api_list" border="1"> 68 <TBODY> 69 <TR> 70<TH><A href="ExpHeap/MEMCreateExpHeap.html">MEMCreateExpHeap</A></TH> 71<TD>Creates the expanded heap.</TD> 72 </TR> 73 <TR> 74<TH><A href="ExpHeap/MEMCreateExpHeapEx.html">MEMCreateExpHeapEx</A></TH> 75<TD>Creates the expanded heap. (options specified)</TD> 76 </TR> 77 <TR> 78<TH><A href="ExpHeap/MEMDestroyExpHeap.html">MEMDestroyExpHeap</A></TH> 79<TD>Destroys the expanded heap.</TD> 80 </TR> 81 <TR> 82<TH><A href="ExpHeap/MEMAllocFromExpHeap.html">MEMAllocFromExpHeap</A></TH> 83<TD>Allocates a memory block from the expanded heap.</TD> 84 </TR> 85 <TR> 86<TH><A href="ExpHeap/MEMAllocFromExpHeapEx.html">MEMAllocFromExpHeapEx</A></TH> 87<TD>Allocates a memory block from the expanded heap. (alignment specified)</TD> 88 </TR> 89 <TR> 90<TH><A href="ExpHeap/MEMFreeToExpHeap.html">MEMFreeToExpHeap</A></TH> 91<TD>Deallocates a memory block.</TD> 92 </TR> 93 <TR> 94<TH><A href="ExpHeap/MEMResizeForMBlockExpHeap.html">MEMResizeForMBlockExpHeap</A></TH> 95<TD>Changes the memory block size.</TD> 96 </TR> 97 <TR> 98<TH><A href="ExpHeap/MEMGetTotalFreeSizeForExpHeap.html">MEMGetTotalFreeSizeForExpHeap</A></TH> 99<TD>Gets the total size of the available region in the expanded heap.</TD> 100 </TR> 101 <TR> 102<TH><A href="ExpHeap/MEMGetAllocatableSizeForExpHeap.html">MEMGetAllocatableSizeForExpHeap</A></TH> 103<TD>Gets the maximum size of the allocatable memory block.</TD> 104 </TR> 105 <TR> 106<TH><A href="ExpHeap/MEMGetAllocatableSizeForExpHeapEx.html">MEMGetAllocatableSizeForExpHeapEx</A></TH> 107<TD>Gets the maximum size of the allocatable memory block. (alignment specified)</TD> 108 </TR> 109 <TR> 110<TH><A href="ExpHeap/MEMSetAllocModeForExpHeap.html">MEMSetAllocModeForExpHeap</A></TH> 111<TD>Sets the allocation mode of the memory block of the expanded heap.</TD> 112 </TR> 113 <TR> 114<TH><A href="ExpHeap/MEMGetAllocModeForExpHeap.html">MEMGetAllocModeForExpHeap</A></TH> 115<TD>Gets the allocation mode of the memory block of the expanded heap.</TD> 116 </TR> 117 <TR> 118<TH><A href="ExpHeap/MEMUseMarginOfAlignmentForExpHeap.html">MEMUseMarginOfAlignmentForExpHeap</A></TH> 119<TD>Sets whether the small memory fragments produced by alignment are to be reused as allocatable memory.</TD> 120 </TR> 121 <TR> 122<TH><A href="ExpHeap/MEMSetGroupIDForExpHeap.html">MEMSetGroupIDForExpHeap</A></TH> 123<TD>Sets the group ID of the expanded heap.</TD> 124 </TR> 125 <TR> 126<TH><A href="ExpHeap/MEMGetGroupIDForExpHeap.html">MEMGetGroupIDForExpHeap</A></TH> 127<TD>Gets the group ID of the expanded heap.</TD> 128 </TR> 129 <TR> 130<TH><A href="ExpHeap/MEMGetSizeForMBlockExpHeap.html">MEMGetSizeForMBlockExpHeap</A></TH> 131<TD>Gets the size of the memory block.</TD> 132 </TR> 133 <TR> 134<TH><A href="ExpHeap/MEMGetGroupIDForMBlockExpHeap.html">MEMGetGroupIDForMBlockExpHeap</A></TH> 135<TD>Gets the group ID of the memory block.</TD> 136 </TR> 137 <TR> 138<TH><A href="ExpHeap/MEMGetAllocDirForMBlockExpHeap.html">MEMGetAllocDirForMBlockExpHeap</A></TH> 139<TD>Gets the allocation direction of the memory block.</TD> 140 </TR> 141 <TR> 142<TH><A href="ExpHeap/MEMVisitAllocatedForExpHeap.html">MEMVisitAllocatedForExpHeap</A></TH> 143<TD>Makes a specified function process all memory blocks.</TD> 144 </TR> 145 <TR> 146<TH><A href="ExpHeap/MEMAdjustExpHeap.html">MEMAdjustExpHeap</A></TH> 147<TD>Reduces the memory used by the expanded heap by freeing the available memory in it.</TD> 148 </TR> 149 <TR> 150<TH><A href="ExpHeap/MEMCheckExpHeap.html">MEMCheckExpHeap</A></TH> 151<TD>Checks whether the expanded heap is corrupted. (for debugging)</TD> 152 </TR> 153 <TR> 154<TH><A href="ExpHeap/MEMCheckForMBlockExpHeap.html">MEMCHeckForMBlockExpHeap</A></TH> 155<TD>Checks whether the memory blocks of the expanded heap are corrupted. (for debugging)</TD> 156 </TR> 157 <TR> 158<TH><A href="ExpHeap/MEMIsExpHeap.html">MEMIsExpHeap</A></TH> 159<TD>Determines whether the heap handle is for an expanded heap.</TD> 160 </TR> 161 </TBODY> 162</TABLE> 163 164<H2><A name="FrmHeap">Frame Heap</A></H2> 165<TABLE class="api_list" border="1"> 166 <TBODY> 167 <TR> 168<TH><A href="FrmHeap/MEMCreateFrmHeap.html">MEMCreateFrmHeap</A></TH> 169<TD>Creates the frame heap.</TD> 170 </TR> 171 <TR> 172<TH><A href="FrmHeap/MEMCreateFrmHeapEx.html">MEMCreateFrmHeapEx</A></TH> 173<TD>Creates the frame heap. (options specified)</TD> 174 </TR> 175 <TR> 176<TH><A href="FrmHeap/MEMDestroyFrmHeap.html">MEMDestroyFrmHeap</A></TH> 177<TD>Destroys the frame heap.</TD> 178 </TR> 179 <TR> 180<TH><A href="FrmHeap/MEMAllocFromFrmHeap.html">MEMAllocFromFrmHeap</A></TH> 181<TD>Allocates a memory block from frame heap.</TD> 182 </TR> 183 <TR> 184<TH><A href="FrmHeap/MEMAllocFromFrmHeapEx.html">MEMAllocFromFrmHeapEx</A></TH> 185<TD>Allocates a memory block from frame heap. (alignment specified)</TD> 186 </TR> 187 <TR> 188<TH><A href="FrmHeap/MEMFreeToFrmHeap.html">MEMFreeToFrmHeap</A></TH> 189<TD>Deallocates a memory block.</TD> 190 </TR> 191 <TR> 192<TH><A href="FrmHeap/MEMResizeForMBlockFrmHeap.html">MEMResizeForMBlockFrmHeap</A></TH> 193<TD>Changes the size of a memory block.</TD> 194 </TR> 195 <TR> 196<TH><A href="FrmHeap/MEMGetAllocatableSizeForFrmHeap.html">MEMGetAllocatableSizeForFrmHeap</A></TH> 197<TD>Gets the maximum size of the allocatable memory block.</TD> 198 </TR> 199 <TR> 200<TH><A href="FrmHeap/MEMGetAllocatableSizeForFrmHeapEx.html">MEMGetAllocatableSizeForFrmHeapEx</A></TH> 201<TD>Gets the maximum size of the allocatable memory block. (alignment specified)</TD> 202 </TR> 203 <TR> 204<TH><A href="FrmHeap/MEMRecordStateForFrmHeap.html">MEMRecordStateForFrmHeap</A></TH> 205<TD>Records the allocation state of the memory block of the frame heap.</TD> 206 </TR> 207 <TR> 208<TH><A href="FrmHeap/MEMFreeByStateToFrmHeap.html">MEMFreeByStateToFrmHeap</A></TH> 209<TD>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.</TD> 210 </TR> 211 <TR> 212<TH><A href="FrmHeap/MEMAdjustFrmHeap.html">MEMAdjustFrmHeap</A></TH> 213<TD>Deallocates the empty space of the frame heap and reduces the memory region used by the frame heap.</TD> 214 </TR> 215 <TR> 216<TH><A href="FrmHeap/MEMIsFrmHeap.html">MEMIsFrmHeap</A></TH> 217<TD>Determines whether the heap handle is for a frame heap.</TD> 218 </TR> 219 </TBODY> 220</TABLE> 221 222<H2><A name="UnitHeap">Unit Heap</A></H2> 223<TABLE class="api_list" border="1"> 224 <TBODY> 225 <TR> 226<TH><A href="UnitHeap/MEMCreateUnitHeap.html">MEMCreateUnitHeap</A></TH> 227<TD>Creates the unit heap.</TD> 228 </TR> 229 <TR> 230<TH><A href="UnitHeap/MEMCreateUnitHeapEx.html">MEMCreateUnitHeapEx</A></TH> 231<TD>Creates the unit heap. (alignment and options can be specified)</TD> 232 </TR> 233 <TR> 234<TH><A href="UnitHeap/MEMDestroyUnitHeap.html">MEMDestroyUnitHeap</A></TH> 235<TD>Destroys the unit heap.</TD> 236 </TR> 237 <TR> 238<TH><A href="UnitHeap/MEMAllocFromUnitHeap.html">MEMAllocFromUnitHeap</A></TH> 239<TD>Allocates a memory block from the unit heap.</TD> 240 </TR> 241 <TR> 242<TH><A href="UnitHeap/MEMFreeToUnitHeap.html">MEMFreeToUnitHeap</A></TH> 243<TD>Deallocates a memory block.</TD> 244 </TR> 245 <TR> 246<TH><A href="UnitHeap/MEMCountFreeBlockForUnitHeap.html">MEMCountFreeBlockForUnitHeap</A></TH> 247<TD>Gets the number of memory blocks allocatable from the unit heap.</TD> 248 </TR> 249 <TR> 250<TH><A href="UnitHeap/MEMCalcHeapSizeForUnitHeap.html">MEMCalcHeapSizeForUnitHeap</A></TH> 251<TD>Gets the size of the required unit heap from the size and number of the memory blocks.</TD> 252 </TR> 253 <TR> 254<TH><A href="UnitHeap/MEMGetMemBlockSizeForUnitHeap.html">MEMGetMemBlockSizeForUnitHeap</A></TH> 255<TD>Gets the size of the unit heap memory blocks.</TD> 256 </TR> 257 <TR> 258<TH><A href="UnitHeap/MEMIsUnitHeap.html">MEMIsUnitHeap</A></TH> 259<TD>Determines whether the heap handle is for a unit heap.</TD> 260 </TR> 261 </TBODY> 262</TABLE> 263 264<H2><A name="Allocator">Memory Allocator</A></H2> 265<TABLE class="api_list" border="1"> 266 <TBODY> 267 <TR> 268<TH><A href="Allocator/MEMInitAllocatorForExpHeap.html">MEMInitAllocatorForExpHeap</A></TH> 269<TD>Initializes the allocator to allocate and deallocate memory from the expanded heap.</TD> 270 </TR> 271 <TR> 272<TH><A href="Allocator/MEMInitAllocatorForFrmHeap.html">MEMInitAllocatorForFrmHeap</A></TH> 273<TD>Initializes the allocator to allocate and deallocate memory from the frame heap.</TD> 274 </TR> 275 <TR> 276<TH><A href="Allocator/MEMInitAllocatorForUnitHeap.html">MEMInitAllocatorForUnitHeap</A></TH> 277<TD>Initializes the allocator to allocate and deallocate memory from the unit heap.</TD> 278 </TR> 279 <TR> 280<TH><A href="Allocator/MEMInitAllocatorForOSHeap.html">MEMInitAllocatorForOSHeap</A></TH> 281<TD>Initializes the allocator to allocate and deallocate memory from the SDK heap.</TD> 282 </TR> 283 <TR> 284<TH><A href="Allocator/MEMAllocFromAllocator.html">MEMAllocFromAllocator</A></TH> 285<TD>Allocates a memory block from the allocator.</TD> 286 </TR> 287 <TR> 288<TH><A href="Allocator/MEMFreeToAllocator.html">MEMFreeToAllocator</A></TH> 289<TD>Returns the memory block to the allocator and deallocates the memory block.</TD> 290 </TR> 291 </TBODY> 292</TABLE> 293 294<P> 295<BR> 296</P> 297<hr><p>CONFIDENTIAL</p></body> 298</HTML>