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>