wut/group__coreinit__memheap.html

338 lines
18 KiB
HTML
Raw Normal View History

2016-07-25 02:05:50 +01:00
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.10"/>
<title>WUT: Common Memory Heap</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { init_search(); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">WUT
&#160;<span id="projectnumber">0.1</span>
</div>
<div id="projectbrief">Wii U Toolchain</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.10 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
</div><!-- top -->
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">Common Memory Heap<div class="ingroups"><a class="el" href="group__coreinit.html">coreinit</a></div></div> </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_m_e_m_heap_header.html">MEMHeapHeader</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:ga727913a40d765f66ebec5e9b0d762691"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct_m_e_m_heap_header.html">MEMHeapHeader</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreinit__memheap.html#ga727913a40d765f66ebec5e9b0d762691">MEMHeapHeader</a></td></tr>
<tr class="separator:ga727913a40d765f66ebec5e9b0d762691"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae755a991146be82a49796686289ae3f6"><td class="memItemLeft" align="right" valign="top">typedef enum <a class="el" href="group__coreinit__memheap.html#ga5a2254c26326745a098c8d8ec1d56442">MEMHeapFillType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreinit__memheap.html#gae755a991146be82a49796686289ae3f6">MEMHeapFillType</a></td></tr>
<tr class="separator:gae755a991146be82a49796686289ae3f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab7b8c390bfaf0193d21b076bd69d2102"><td class="memItemLeft" align="right" valign="top">typedef enum <a class="el" href="group__coreinit__memheap.html#gaf4257a1288a2365e8c3600df369a83cb">MEMHeapTag</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreinit__memheap.html#gab7b8c390bfaf0193d21b076bd69d2102">MEMHeapTag</a></td></tr>
<tr class="separator:gab7b8c390bfaf0193d21b076bd69d2102"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga27573d76b6e4cb94f3e2ac30c18025a6"><td class="memItemLeft" align="right" valign="top">typedef enum <a class="el" href="group__coreinit__memheap.html#ga5c832777be0c2cffa9c0f2eaf3c9a497">MEMHeapFlags</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreinit__memheap.html#ga27573d76b6e4cb94f3e2ac30c18025a6">MEMHeapFlags</a></td></tr>
<tr class="separator:ga27573d76b6e4cb94f3e2ac30c18025a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:ga5a2254c26326745a098c8d8ec1d56442"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreinit__memheap.html#ga5a2254c26326745a098c8d8ec1d56442">MEMHeapFillType</a> <tr class="separator:ga5a2254c26326745a098c8d8ec1d56442"><td class="memSeparator" colspan="2">&#160;</td></tr>
</td></tr>
<tr class="memitem:gaf4257a1288a2365e8c3600df369a83cb"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreinit__memheap.html#gaf4257a1288a2365e8c3600df369a83cb">MEMHeapTag</a> <tr class="separator:gaf4257a1288a2365e8c3600df369a83cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
</td></tr>
<tr class="memitem:ga5c832777be0c2cffa9c0f2eaf3c9a497"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreinit__memheap.html#ga5c832777be0c2cffa9c0f2eaf3c9a497">MEMHeapFlags</a> <tr class="separator:ga5c832777be0c2cffa9c0f2eaf3c9a497"><td class="memSeparator" colspan="2">&#160;</td></tr>
</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga268eb26100b03a38ba90efa2e47fa870"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreinit__memheap.html#ga268eb26100b03a38ba90efa2e47fa870">MEMDumpHeap</a> (<a class="el" href="struct_m_e_m_heap_header.html">MEMHeapHeader</a> *heap)</td></tr>
<tr class="separator:ga268eb26100b03a38ba90efa2e47fa870"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga24a8efd33838634b25ed09465612b463"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_m_e_m_heap_header.html">MEMHeapHeader</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreinit__memheap.html#ga24a8efd33838634b25ed09465612b463">MEMFindContainHeap</a> (void *block)</td></tr>
<tr class="separator:ga24a8efd33838634b25ed09465612b463"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad9735e0622600c541ba26bb80dc4614a"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreinit__memheap.html#gad9735e0622600c541ba26bb80dc4614a">MEMGetFillValForHeap</a> (<a class="el" href="group__coreinit__memheap.html#ga5a2254c26326745a098c8d8ec1d56442">MEMHeapFillType</a> type)</td></tr>
<tr class="separator:gad9735e0622600c541ba26bb80dc4614a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga392788207fa9c65e8bf2ab5b67c252d9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreinit__memheap.html#ga392788207fa9c65e8bf2ab5b67c252d9">MEMSetFillValForHeap</a> (<a class="el" href="group__coreinit__memheap.html#ga5a2254c26326745a098c8d8ec1d56442">MEMHeapFillType</a> type, uint32_t value)</td></tr>
<tr class="separator:ga392788207fa9c65e8bf2ab5b67c252d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<p>Common memory heap fucntions. </p>
<h2 class="groupheader">Typedef Documentation</h2>
<a class="anchor" id="ga727913a40d765f66ebec5e9b0d762691"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef struct <a class="el" href="struct_m_e_m_heap_header.html">MEMHeapHeader</a> <a class="el" href="struct_m_e_m_heap_header.html">MEMHeapHeader</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="memheap_8h_source.html#l00018">18</a> of file <a class="el" href="memheap_8h_source.html">memheap.h</a>.</p>
</div>
</div>
<a class="anchor" id="gae755a991146be82a49796686289ae3f6"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef enum <a class="el" href="group__coreinit__memheap.html#ga5a2254c26326745a098c8d8ec1d56442">MEMHeapFillType</a> <a class="el" href="group__coreinit__memheap.html#ga5a2254c26326745a098c8d8ec1d56442">MEMHeapFillType</a></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="gab7b8c390bfaf0193d21b076bd69d2102"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef enum <a class="el" href="group__coreinit__memheap.html#gaf4257a1288a2365e8c3600df369a83cb">MEMHeapTag</a> <a class="el" href="group__coreinit__memheap.html#gaf4257a1288a2365e8c3600df369a83cb">MEMHeapTag</a></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="ga27573d76b6e4cb94f3e2ac30c18025a6"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef enum <a class="el" href="group__coreinit__memheap.html#ga5c832777be0c2cffa9c0f2eaf3c9a497">MEMHeapFlags</a> <a class="el" href="group__coreinit__memheap.html#ga5c832777be0c2cffa9c0f2eaf3c9a497">MEMHeapFlags</a></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Enumeration Type Documentation</h2>
<a class="anchor" id="ga5a2254c26326745a098c8d8ec1d56442"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="group__coreinit__memheap.html#ga5a2254c26326745a098c8d8ec1d56442">MEMHeapFillType</a></td>
</tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="gga5a2254c26326745a098c8d8ec1d56442aab58d29ca838e67871a9c39230a66a1e"></a>MEM_HEAP_FILL_TYPE_UNUSED&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga5a2254c26326745a098c8d8ec1d56442af5678cb9a17bf1855df30c50e552fee3"></a>MEM_HEAP_FILL_TYPE_ALLOCATED&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga5a2254c26326745a098c8d8ec1d56442a303a7c6d5c68983625bd949e8a8a38ea"></a>MEM_HEAP_FILL_TYPE_FREED&#160;</td><td class="fielddoc">
</td></tr>
</table>
<p>Definition at line <a class="el" href="memheap_8h_source.html#l00020">20</a> of file <a class="el" href="memheap_8h_source.html">memheap.h</a>.</p>
</div>
</div>
<a class="anchor" id="gaf4257a1288a2365e8c3600df369a83cb"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="group__coreinit__memheap.html#gaf4257a1288a2365e8c3600df369a83cb">MEMHeapTag</a></td>
</tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="ggaf4257a1288a2365e8c3600df369a83cbaee676570c092ee1e6e421409a87d975f"></a>MEM_BLOCK_HEAP_TAG&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggaf4257a1288a2365e8c3600df369a83cba73cc6859292a3153a6dc5a8526f28353"></a>MEM_EXPANDED_HEAP_TAG&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggaf4257a1288a2365e8c3600df369a83cba9f996937542e05cf39a5905a70289f55"></a>MEM_FRAME_HEAP_TAG&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggaf4257a1288a2365e8c3600df369a83cba4fbb605cdb05db8640ae6dc7187e8934"></a>MEM_UNIT_HEAP_TAG&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggaf4257a1288a2365e8c3600df369a83cba5548a1522f91faebd0bd08201d8428c9"></a>MEM_USER_HEAP_TAG&#160;</td><td class="fielddoc">
</td></tr>
</table>
<p>Definition at line <a class="el" href="memheap_8h_source.html#l00027">27</a> of file <a class="el" href="memheap_8h_source.html">memheap.h</a>.</p>
</div>
</div>
<a class="anchor" id="ga5c832777be0c2cffa9c0f2eaf3c9a497"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="group__coreinit__memheap.html#ga5c832777be0c2cffa9c0f2eaf3c9a497">MEMHeapFlags</a></td>
</tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="gga5c832777be0c2cffa9c0f2eaf3c9a497a6b36ac6cf03f489e90b525517e1e33e2"></a>MEM_HEAP_FLAG_ZERO_ALLOCATED&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga5c832777be0c2cffa9c0f2eaf3c9a497a3cefa3627ca24ef278fe861c969a76cb"></a>MEM_HEAP_FLAG_DEBUG_MODE&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga5c832777be0c2cffa9c0f2eaf3c9a497af49a821423e44a9e85218ce44f85d48b"></a>MEM_HEAP_FLAG_USE_LOCK&#160;</td><td class="fielddoc">
</td></tr>
</table>
<p>Definition at line <a class="el" href="memheap_8h_source.html#l00036">36</a> of file <a class="el" href="memheap_8h_source.html">memheap.h</a>.</p>
</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="ga268eb26100b03a38ba90efa2e47fa870"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void MEMDumpHeap </td>
<td>(</td>
<td class="paramtype"><a class="el" href="struct_m_e_m_heap_header.html">MEMHeapHeader</a> *&#160;</td>
<td class="paramname"><em>heap</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Print details about heap to COSWarn </p>
</div>
</div>
<a class="anchor" id="ga24a8efd33838634b25ed09465612b463"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="struct_m_e_m_heap_header.html">MEMHeapHeader</a>* MEMFindContainHeap </td>
<td>(</td>
<td class="paramtype">void *&#160;</td>
<td class="paramname"><em>block</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Find heap which contains a memory block. </p>
</div>
</div>
<a class="anchor" id="gad9735e0622600c541ba26bb80dc4614a"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint32_t MEMGetFillValForHeap </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__coreinit__memheap.html#ga5a2254c26326745a098c8d8ec1d56442">MEMHeapFillType</a>&#160;</td>
<td class="paramname"><em>type</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the data fill value used when MEM_HEAP_FLAG_DEBUG_MODE is set. </p>
</div>
</div>
<a class="anchor" id="ga392788207fa9c65e8bf2ab5b67c252d9"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void MEMSetFillValForHeap </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__coreinit__memheap.html#ga5a2254c26326745a098c8d8ec1d56442">MEMHeapFillType</a>&#160;</td>
<td class="paramname"><em>type</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>value</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the data fill value used when MEM_HEAP_FLAG_DEBUG_MODE is set. </p>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.10
</small></address>
</body>
</html>