[processor-sdk/performance-audio-sr.git] / processor_audio_sdk_1_00_00_00 / psdk_cust / ipc_3_43_00_00_eng / docs / doxygen / html / _heap_buf_m_p_8h_source.html
1 <!-- HTML header for doxygen 1.8.9.1-->
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml">
4 <head>
5 <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
6 <meta http-equiv="X-UA-Compatible" content="IE=9"/>
7 <meta name="generator" content="Doxygen 1.8.9.1"/>
8 <title>IPC API: ti/ipc/HeapBufMP.h Source File</title>
9 <link href="tabs.css" rel="stylesheet" type="text/css"/>
10 <script type="text/javascript" src="jquery.js"></script>
11 <script type="text/javascript" src="dynsections.js"></script>
12 <link href="search/search.css" rel="stylesheet" type="text/css"/>
13 <script type="text/javascript" src="search/searchdata.js"></script>
14 <script type="text/javascript" src="search/search.js"></script>
15 <script type="text/javascript">
16 $(document).ready(function() { init_search(); });
17 </script>
18 <link href="doxygen.css" rel="stylesheet" type="text/css" />
19 </head>
20 <body>
21 <table width="100%">
22 <tr>
23 <td bgcolor="black" width="1"><a href="http://www.ti.com"><img border="0" src="tilogo.gif" /></a></td>
24 <td bgcolor="red"><img src="titagline.gif" /></td>
25 </tr>
26 </table>
27 <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
28 <div id="titlearea">
29 <table cellspacing="0" cellpadding="0">
30 <tbody>
31 <tr style="height: 56px;">
32 <td style="padding-left: 0.5em;">
33 <div id="projectname">IPC API
34  <span id="projectnumber">3.43.00.00_eng</span>
35 </div>
36 </td>
37 </tr>
38 </tbody>
39 </table>
40 </div>
41 <!-- end header part -->
42 <!-- Generated by Doxygen 1.8.9.1 -->
43 <script type="text/javascript">
44 var searchBox = new SearchBox("searchBox", "search",false,'Search');
45 </script>
46 <div id="navrow1" class="tabs">
47 <ul class="tablist">
48 <li><a href="index.html"><span>Main Page</span></a></li>
49 <li><a href="modules.html"><span>Modules</span></a></li>
50 <li><a href="annotated.html"><span>Data Structures</span></a></li>
51 <li class="current"><a href="files.html"><span>Files</span></a></li>
52 <li><a href="pages.html"><span>Related Pages</span></a></li>
53 <li>
54 <div id="MSearchBox" class="MSearchBoxInactive">
55 <span class="left">
56 <img id="MSearchSelect" src="search/mag_sel.png"
57 onmouseover="return searchBox.OnSearchSelectShow()"
58 onmouseout="return searchBox.OnSearchSelectHide()"
59 alt=""/>
60 <input type="text" id="MSearchField" value="Search" accesskey="S"
61 onfocus="searchBox.OnSearchFieldFocus(true)"
62 onblur="searchBox.OnSearchFieldFocus(false)"
63 onkeyup="searchBox.OnSearchFieldChange(event)"/>
64 </span><span class="right">
65 <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
66 </span>
67 </div>
68 </li>
69 </ul>
70 </div>
71 <div id="navrow2" class="tabs2">
72 <ul class="tablist">
73 <li><a href="files.html"><span>File List</span></a></li>
74 <li><a href="globals.html"><span>Globals</span></a></li>
75 </ul>
76 </div>
77 <!-- window showing the filter options -->
78 <div id="MSearchSelectWindow"
79 onmouseover="return searchBox.OnSearchSelectShow()"
80 onmouseout="return searchBox.OnSearchSelectHide()"
81 onkeydown="return searchBox.OnSearchSelectKey(event)">
82 </div>
84 <!-- iframe showing the search results (closed by default) -->
85 <div id="MSearchResultsWindow">
86 <iframe src="javascript:void(0)" frameborder="0"
87 name="MSearchResults" id="MSearchResults">
88 </iframe>
89 </div>
91 <div id="nav-path" class="navpath">
92 <ul>
93 <li class="navelem"><a class="el" href="dir_46079174fecd82ead33d8fa28082a6fc.html">ti</a></li><li class="navelem"><a class="el" href="dir_d15d182bf14778c656928067305f92ce.html">ipc</a></li> </ul>
94 </div>
95 </div><!-- top -->
96 <div class="header">
97 <div class="headertitle">
98 <div class="title">HeapBufMP.h</div> </div>
99 </div><!--header-->
100 <div class="contents">
101 <a href="_heap_buf_m_p_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
102 <div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2012-2013, Texas Instruments Incorporated</span></div>
103 <div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> * All rights reserved.</span></div>
104 <div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> *</span></div>
105 <div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
106 <div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * modification, are permitted provided that the following conditions</span></div>
107 <div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * are met:</span></div>
108 <div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
109 <div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
110 <div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
111 <div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> *</span></div>
112 <div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * * Redistributions in binary form must reproduce the above copyright</span></div>
113 <div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> * notice, this list of conditions and the following disclaimer in the</span></div>
114 <div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * documentation and/or other materials provided with the distribution.</span></div>
115 <div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> *</span></div>
116 <div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * * Neither the name of Texas Instruments Incorporated nor the names of</span></div>
117 <div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> * its contributors may be used to endorse or promote products derived</span></div>
118 <div class="line"><a name="l00018"></a><span class="lineno"> 18</span> <span class="comment"> * from this software without specific prior written permission.</span></div>
119 <div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment"> *</span></div>
120 <div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"</span></div>
121 <div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="comment"> * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,</span></div>
122 <div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="comment"> * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR</span></div>
123 <div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="comment"> * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR</span></div>
124 <div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="comment"> * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,</span></div>
125 <div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="comment"> * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,</span></div>
126 <div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="comment"> * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;</span></div>
127 <div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="comment"> * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,</span></div>
128 <div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="comment"> * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR</span></div>
129 <div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="comment"> * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,</span></div>
130 <div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="comment"> * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
131 <div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="comment"> */</span></div>
132 <div class="line"><a name="l00070"></a><span class="lineno"> 70</span> <span class="preprocessor">#ifndef ti_ipc_HeapBufMP__include</span></div>
133 <div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="preprocessor">#define ti_ipc_HeapBufMP__include</span></div>
134 <div class="line"><a name="l00072"></a><span class="lineno"> 72</span> </div>
135 <div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="preprocessor">#if defined (__cplusplus)</span></div>
136 <div class="line"><a name="l00074"></a><span class="lineno"> 74</span> <span class="keyword">extern</span> <span class="stringliteral">"C"</span> {</div>
137 <div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <span class="preprocessor">#endif</span></div>
138 <div class="line"><a name="l00076"></a><span class="lineno"> 76</span> </div>
139 <div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <span class="preprocessor">#include <<a class="code" href="_gate_m_p_8h.html">ti/ipc/GateMP.h</a>></span></div>
140 <div class="line"><a name="l00078"></a><span class="lineno"> 78</span> </div>
141 <div class="line"><a name="l00079"></a><span class="lineno"> 79</span> <span class="comment">/* =============================================================================</span></div>
142 <div class="line"><a name="l00080"></a><span class="lineno"> 80</span> <span class="comment"> * All success and failure codes for the module</span></div>
143 <div class="line"><a name="l00081"></a><span class="lineno"> 81</span> <span class="comment"> * =============================================================================</span></div>
144 <div class="line"><a name="l00082"></a><span class="lineno"> 82</span> <span class="comment"> */</span></div>
145 <div class="line"><a name="l00083"></a><span class="lineno"> 83</span> </div>
146 <div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="_heap_buf_m_p_8h.html#ae1b0ea5865b0687653171ad2bf3d17b3"> 87</a></span> <span class="preprocessor">#define HeapBufMP_S_BUSY 2</span></div>
147 <div class="line"><a name="l00088"></a><span class="lineno"> 88</span> </div>
148 <div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="_heap_buf_m_p_8h.html#a8d7ddf7f2176ffd9e11dad5d32545ebb"> 92</a></span> <span class="preprocessor">#define HeapBufMP_S_ALREADYSETUP 1</span></div>
149 <div class="line"><a name="l00093"></a><span class="lineno"> 93</span> </div>
150 <div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="_heap_buf_m_p_8h.html#ab98593be8c8588e512f38265b4d185f0"> 97</a></span> <span class="preprocessor">#define HeapBufMP_S_SUCCESS 0</span></div>
151 <div class="line"><a name="l00098"></a><span class="lineno"> 98</span> </div>
152 <div class="line"><a name="l00102"></a><span class="lineno"><a class="line" href="_heap_buf_m_p_8h.html#afe559bb52af4c143c559d3ca44654520"> 102</a></span> <span class="preprocessor">#define HeapBufMP_E_FAIL -1</span></div>
153 <div class="line"><a name="l00103"></a><span class="lineno"> 103</span> </div>
154 <div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="_heap_buf_m_p_8h.html#a3bd067e1c23ed6c94aad604e5a74244d"> 107</a></span> <span class="preprocessor">#define HeapBufMP_E_INVALIDARG -2</span></div>
155 <div class="line"><a name="l00108"></a><span class="lineno"> 108</span> </div>
156 <div class="line"><a name="l00112"></a><span class="lineno"><a class="line" href="_heap_buf_m_p_8h.html#a7dff5751dc8d83830b7ad130d0e6fe86"> 112</a></span> <span class="preprocessor">#define HeapBufMP_E_MEMORY -3</span></div>
157 <div class="line"><a name="l00113"></a><span class="lineno"> 113</span> </div>
158 <div class="line"><a name="l00117"></a><span class="lineno"><a class="line" href="_heap_buf_m_p_8h.html#a27b1533d0d529ecdd7d6a7d7090aa5a7"> 117</a></span> <span class="preprocessor">#define HeapBufMP_E_ALREADYEXISTS -4</span></div>
159 <div class="line"><a name="l00118"></a><span class="lineno"> 118</span> </div>
160 <div class="line"><a name="l00122"></a><span class="lineno"><a class="line" href="_heap_buf_m_p_8h.html#a413c47cfb2257df264b84951abc0409f"> 122</a></span> <span class="preprocessor">#define HeapBufMP_E_NOTFOUND -5</span></div>
161 <div class="line"><a name="l00123"></a><span class="lineno"> 123</span> </div>
162 <div class="line"><a name="l00127"></a><span class="lineno"><a class="line" href="_heap_buf_m_p_8h.html#aa2bf7936fb8db078713544c7ee1197fd"> 127</a></span> <span class="preprocessor">#define HeapBufMP_E_TIMEOUT -6</span></div>
163 <div class="line"><a name="l00128"></a><span class="lineno"> 128</span> </div>
164 <div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="_heap_buf_m_p_8h.html#a72fbd9726f36a122c3462ab151e67518"> 132</a></span> <span class="preprocessor">#define HeapBufMP_E_INVALIDSTATE -7</span></div>
165 <div class="line"><a name="l00133"></a><span class="lineno"> 133</span> </div>
166 <div class="line"><a name="l00137"></a><span class="lineno"><a class="line" href="_heap_buf_m_p_8h.html#a7b0421d7bd809415074b1483f044162f"> 137</a></span> <span class="preprocessor">#define HeapBufMP_E_OSFAILURE -8</span></div>
167 <div class="line"><a name="l00138"></a><span class="lineno"> 138</span> </div>
168 <div class="line"><a name="l00142"></a><span class="lineno"><a class="line" href="_heap_buf_m_p_8h.html#a7354bfdbab3d4d028d0c6d48edd308a7"> 142</a></span> <span class="preprocessor">#define HeapBufMP_E_RESOURCE -9</span></div>
169 <div class="line"><a name="l00143"></a><span class="lineno"> 143</span> </div>
170 <div class="line"><a name="l00147"></a><span class="lineno"><a class="line" href="_heap_buf_m_p_8h.html#a445c7db0d4aa1939dc33cefe24f6c4df"> 147</a></span> <span class="preprocessor">#define HeapBufMP_E_RESTART -10</span></div>
171 <div class="line"><a name="l00148"></a><span class="lineno"> 148</span> </div>
172 <div class="line"><a name="l00149"></a><span class="lineno"> 149</span> <span class="comment">/* =============================================================================</span></div>
173 <div class="line"><a name="l00150"></a><span class="lineno"> 150</span> <span class="comment"> * Structures & Enums</span></div>
174 <div class="line"><a name="l00151"></a><span class="lineno"> 151</span> <span class="comment"> * =============================================================================</span></div>
175 <div class="line"><a name="l00152"></a><span class="lineno"> 152</span> <span class="comment"> */</span></div>
176 <div class="line"><a name="l00153"></a><span class="lineno"> 153</span> </div>
177 <div class="line"><a name="l00157"></a><span class="lineno"><a class="line" href="_heap_buf_m_p_8h.html#a0dc02cca2abd71fa48bfaf79c1c09ca3"> 157</a></span> <span class="keyword">typedef</span> <span class="keyword">struct </span>HeapBufMP_Object *<a class="code" href="_heap_buf_m_p_8h.html#a0dc02cca2abd71fa48bfaf79c1c09ca3">HeapBufMP_Handle</a>;</div>
178 <div class="line"><a name="l00158"></a><span class="lineno"> 158</span> </div>
179 <div class="line"><a name="l00164"></a><span class="lineno"><a class="line" href="struct_heap_buf_m_p___params.html"> 164</a></span> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_heap_buf_m_p___params.html">HeapBufMP_Params</a> {</div>
180 <div class="line"><a name="l00165"></a><span class="lineno"><a class="line" href="struct_heap_buf_m_p___params.html#aaefdf87660dc3b0a57d33f10791dcc02"> 165</a></span>  String <a class="code" href="struct_heap_buf_m_p___params.html#aaefdf87660dc3b0a57d33f10791dcc02">name</a>;</div>
181 <div class="line"><a name="l00176"></a><span class="lineno"><a class="line" href="struct_heap_buf_m_p___params.html#a22f33c326f94898613b8d40335be4eee"> 176</a></span>  UInt16 <a class="code" href="struct_heap_buf_m_p___params.html#a22f33c326f94898613b8d40335be4eee">regionId</a>;</div>
182 <div class="line"><a name="l00184"></a><span class="lineno"> 184</span>  Ptr sharedAddr;</div>
183 <div class="line"><a name="l00194"></a><span class="lineno"><a class="line" href="struct_heap_buf_m_p___params.html#afc5038de12c1e9bf75d642c1081b74ac"> 194</a></span>  SizeT <a class="code" href="struct_heap_buf_m_p___params.html#afc5038de12c1e9bf75d642c1081b74ac">blockSize</a>;</div>
184 <div class="line"><a name="l00207"></a><span class="lineno"><a class="line" href="struct_heap_buf_m_p___params.html#a4e85da751892052ed1fddc3376f64d9d"> 207</a></span>  UInt <a class="code" href="struct_heap_buf_m_p___params.html#a4e85da751892052ed1fddc3376f64d9d">numBlocks</a>;</div>
185 <div class="line"><a name="l00213"></a><span class="lineno"><a class="line" href="struct_heap_buf_m_p___params.html#a0b16778e64598aca34ee44c746374203"> 213</a></span>  SizeT <a class="code" href="struct_heap_buf_m_p___params.html#a0b16778e64598aca34ee44c746374203">align</a>;</div>
186 <div class="line"><a name="l00224"></a><span class="lineno"><a class="line" href="struct_heap_buf_m_p___params.html#a1ebbb52b6985282c23f534da4ac27eaa"> 224</a></span>  Bool <a class="code" href="struct_heap_buf_m_p___params.html#a1ebbb52b6985282c23f534da4ac27eaa">exact</a>;</div>
187 <div class="line"><a name="l00232"></a><span class="lineno"><a class="line" href="struct_heap_buf_m_p___params.html#a3b1ef95defb6c91953bd53050489644e"> 232</a></span>  <a class="code" href="_gate_m_p_8h.html#a3c46c6ae9c6feac86b8b8872ee52f587">GateMP_Handle</a> <a class="code" href="struct_heap_buf_m_p___params.html#a3b1ef95defb6c91953bd53050489644e">gate</a>;</div>
188 <div class="line"><a name="l00239"></a><span class="lineno"> 239</span> } <a class="code" href="_heap_buf_m_p_8h.html#ada60a6b6a4bee75403768e41d07525ff">HeapBufMP_Params</a>;</div>
189 <div class="line"><a name="l00240"></a><span class="lineno"> 240</span> </div>
190 <div class="line"><a name="l00246"></a><span class="lineno"><a class="line" href="struct_heap_buf_m_p___extended_stats.html"> 246</a></span> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_heap_buf_m_p___extended_stats.html">HeapBufMP_ExtendedStats</a> {</div>
191 <div class="line"><a name="l00247"></a><span class="lineno"><a class="line" href="struct_heap_buf_m_p___extended_stats.html#a94d85b9a5a7632bfa0d0962917055df1"> 247</a></span>  UInt <a class="code" href="struct_heap_buf_m_p___extended_stats.html#a94d85b9a5a7632bfa0d0962917055df1">maxAllocatedBlocks</a>;</div>
192 <div class="line"><a name="l00252"></a><span class="lineno"><a class="line" href="struct_heap_buf_m_p___extended_stats.html#a757dc392845103b1e5b31ab02d17bef5"> 252</a></span>  UInt <a class="code" href="struct_heap_buf_m_p___extended_stats.html#a757dc392845103b1e5b31ab02d17bef5">numAllocatedBlocks</a>;</div>
193 <div class="line"><a name="l00256"></a><span class="lineno"> 256</span> } <a class="code" href="_heap_buf_m_p_8h.html#a0a9972756cf113da0ac5f2eb7f647fbe">HeapBufMP_ExtendedStats</a>;</div>
194 <div class="line"><a name="l00257"></a><span class="lineno"> 257</span> </div>
195 <div class="line"><a name="l00258"></a><span class="lineno"> 258</span> <span class="comment">/* =============================================================================</span></div>
196 <div class="line"><a name="l00259"></a><span class="lineno"> 259</span> <span class="comment"> * HeapBufMP Module-wide Functions</span></div>
197 <div class="line"><a name="l00260"></a><span class="lineno"> 260</span> <span class="comment"> * =============================================================================</span></div>
198 <div class="line"><a name="l00261"></a><span class="lineno"> 261</span> <span class="comment"> */</span></div>
199 <div class="line"><a name="l00262"></a><span class="lineno"> 262</span> </div>
200 <div class="line"><a name="l00278"></a><span class="lineno"> 278</span> Int <a class="code" href="_heap_buf_m_p_8h.html#a53c73d33bd195e23cd90c83a147b330f">HeapBufMP_close</a>(HeapBufMP_Handle *handlePtr);</div>
201 <div class="line"><a name="l00279"></a><span class="lineno"> 279</span> </div>
202 <div class="line"><a name="l00289"></a><span class="lineno"> 289</span> HeapBufMP_Handle <a class="code" href="_heap_buf_m_p_8h.html#a3bb1b659403d9944bc4b64596b20f1f3">HeapBufMP_create</a>(<span class="keyword">const</span> <a class="code" href="struct_heap_buf_m_p___params.html">HeapBufMP_Params</a> *params);</div>
203 <div class="line"><a name="l00290"></a><span class="lineno"> 290</span> </div>
204 <div class="line"><a name="l00301"></a><span class="lineno"> 301</span> Int <a class="code" href="_heap_buf_m_p_8h.html#aff10f0e0fc4ec4b88adb2b7422955f96">HeapBufMP_delete</a>(HeapBufMP_Handle *handlePtr);</div>
205 <div class="line"><a name="l00302"></a><span class="lineno"> 302</span> </div>
206 <div class="line"><a name="l00327"></a><span class="lineno"> 327</span> Int <a class="code" href="_heap_buf_m_p_8h.html#a826facae0861c09d545f18dd503f0f0f">HeapBufMP_open</a>(String name, HeapBufMP_Handle *handlePtr);</div>
207 <div class="line"><a name="l00328"></a><span class="lineno"> 328</span> </div>
208 <div class="line"><a name="l00330"></a><span class="lineno"> 330</span> Int HeapBufMP_openByAddr(Ptr sharedAddr, HeapBufMP_Handle *handlePtr);</div>
209 <div class="line"><a name="l00331"></a><span class="lineno"> 331</span> </div>
210 <div class="line"><a name="l00341"></a><span class="lineno"> 341</span> Void <a class="code" href="_heap_buf_m_p_8h.html#a81700157982b86ed3aefc72c6f3a7a5f">HeapBufMP_Params_init</a>(<a class="code" href="struct_heap_buf_m_p___params.html">HeapBufMP_Params</a> *params);</div>
211 <div class="line"><a name="l00342"></a><span class="lineno"> 342</span> </div>
212 <div class="line"><a name="l00352"></a><span class="lineno"> 352</span> SizeT HeapBufMP_sharedMemReq(<span class="keyword">const</span> <a class="code" href="struct_heap_buf_m_p___params.html">HeapBufMP_Params</a> *params);</div>
213 <div class="line"><a name="l00353"></a><span class="lineno"> 353</span> </div>
214 <div class="line"><a name="l00356"></a><span class="lineno"> 356</span> <span class="comment">/* =============================================================================</span></div>
215 <div class="line"><a name="l00357"></a><span class="lineno"> 357</span> <span class="comment"> * HeapBufMP Per-instance Functions</span></div>
216 <div class="line"><a name="l00358"></a><span class="lineno"> 358</span> <span class="comment"> * =============================================================================</span></div>
217 <div class="line"><a name="l00359"></a><span class="lineno"> 359</span> <span class="comment"> */</span></div>
218 <div class="line"><a name="l00360"></a><span class="lineno"> 360</span> </div>
219 <div class="line"><a name="l00386"></a><span class="lineno"> 386</span> Void *<a class="code" href="_heap_buf_m_p_8h.html#aab507dc414e09bbfe75ceb78458c27ed">HeapBufMP_alloc</a>(HeapBufMP_Handle handle, SizeT size, SizeT align);</div>
220 <div class="line"><a name="l00387"></a><span class="lineno"> 387</span> </div>
221 <div class="line"><a name="l00405"></a><span class="lineno"> 405</span> Void <a class="code" href="_heap_buf_m_p_8h.html#a667a26b92e70373b8642ff15e61ad7d0">HeapBufMP_free</a>(HeapBufMP_Handle handle, Ptr block, SizeT size);</div>
222 <div class="line"><a name="l00406"></a><span class="lineno"> 406</span> </div>
223 <div class="line"><a name="l00422"></a><span class="lineno"> 422</span> Void <a class="code" href="_heap_buf_m_p_8h.html#a339d8eb929f35742d2ff5b3b5381c57b">HeapBufMP_getExtendedStats</a>(HeapBufMP_Handle handle,</div>
224 <div class="line"><a name="l00423"></a><span class="lineno"> 423</span>  <a class="code" href="struct_heap_buf_m_p___extended_stats.html">HeapBufMP_ExtendedStats</a> *stats);</div>
225 <div class="line"><a name="l00424"></a><span class="lineno"> 424</span> </div>
226 <div class="line"><a name="l00433"></a><span class="lineno"> 433</span> Void <a class="code" href="_heap_buf_m_p_8h.html#aed941f6bb592ec1573c646f7c6a4290a">HeapBufMP_getStats</a>(HeapBufMP_Handle handle, Ptr stats);</div>
227 <div class="line"><a name="l00434"></a><span class="lineno"> 434</span> </div>
228 <div class="line"><a name="l00435"></a><span class="lineno"> 435</span> <span class="preprocessor">#if defined (__cplusplus)</span></div>
229 <div class="line"><a name="l00436"></a><span class="lineno"> 436</span> }</div>
230 <div class="line"><a name="l00437"></a><span class="lineno"> 437</span> <span class="preprocessor">#endif </span><span class="comment">/* defined (__cplusplus) */</span><span class="preprocessor"></span></div>
231 <div class="line"><a name="l00438"></a><span class="lineno"> 438</span> <span class="preprocessor">#endif </span><span class="comment">/* ti_ipc_HeapBufMP__include */</span><span class="preprocessor"></span></div>
232 <div class="ttc" id="struct_heap_buf_m_p___params_html_afc5038de12c1e9bf75d642c1081b74ac"><div class="ttname"><a href="struct_heap_buf_m_p___params.html#afc5038de12c1e9bf75d642c1081b74ac">HeapBufMP_Params::blockSize</a></div><div class="ttdeci">SizeT blockSize</div><div class="ttdoc">Size (in MAUs) of each block. </div><div class="ttdef"><b>Definition:</b> HeapBufMP.h:194</div></div>
233 <div class="ttc" id="_heap_buf_m_p_8h_html_a339d8eb929f35742d2ff5b3b5381c57b"><div class="ttname"><a href="_heap_buf_m_p_8h.html#a339d8eb929f35742d2ff5b3b5381c57b">HeapBufMP_getExtendedStats</a></div><div class="ttdeci">Void HeapBufMP_getExtendedStats(HeapBufMP_Handle handle, HeapBufMP_ExtendedStats *stats)</div><div class="ttdoc">Get extended memory statistics. </div></div>
234 <div class="ttc" id="_heap_buf_m_p_8h_html_a3bb1b659403d9944bc4b64596b20f1f3"><div class="ttname"><a href="_heap_buf_m_p_8h.html#a3bb1b659403d9944bc4b64596b20f1f3">HeapBufMP_create</a></div><div class="ttdeci">HeapBufMP_Handle HeapBufMP_create(const HeapBufMP_Params *params)</div><div class="ttdoc">Create a HeapBufMP instance. </div></div>
235 <div class="ttc" id="struct_heap_buf_m_p___params_html_a3b1ef95defb6c91953bd53050489644e"><div class="ttname"><a href="struct_heap_buf_m_p___params.html#a3b1ef95defb6c91953bd53050489644e">HeapBufMP_Params::gate</a></div><div class="ttdeci">GateMP_Handle gate</div><div class="ttdoc">GateMP used for critical region management of the shared memory. </div><div class="ttdef"><b>Definition:</b> HeapBufMP.h:232</div></div>
236 <div class="ttc" id="_heap_buf_m_p_8h_html_a0dc02cca2abd71fa48bfaf79c1c09ca3"><div class="ttname"><a href="_heap_buf_m_p_8h.html#a0dc02cca2abd71fa48bfaf79c1c09ca3">HeapBufMP_Handle</a></div><div class="ttdeci">struct HeapBufMP_Object * HeapBufMP_Handle</div><div class="ttdoc">HeapBufMP_Handle type. </div><div class="ttdef"><b>Definition:</b> HeapBufMP.h:157</div></div>
237 <div class="ttc" id="_heap_buf_m_p_8h_html_a53c73d33bd195e23cd90c83a147b330f"><div class="ttname"><a href="_heap_buf_m_p_8h.html#a53c73d33bd195e23cd90c83a147b330f">HeapBufMP_close</a></div><div class="ttdeci">Int HeapBufMP_close(HeapBufMP_Handle *handlePtr)</div><div class="ttdoc">Close a HeapBufMP instance. </div></div>
238 <div class="ttc" id="struct_heap_buf_m_p___extended_stats_html_a94d85b9a5a7632bfa0d0962917055df1"><div class="ttname"><a href="struct_heap_buf_m_p___extended_stats.html#a94d85b9a5a7632bfa0d0962917055df1">HeapBufMP_ExtendedStats::maxAllocatedBlocks</a></div><div class="ttdeci">UInt maxAllocatedBlocks</div><div class="ttdef"><b>Definition:</b> HeapBufMP.h:247</div></div>
239 <div class="ttc" id="struct_heap_buf_m_p___extended_stats_html"><div class="ttname"><a href="struct_heap_buf_m_p___extended_stats.html">HeapBufMP_ExtendedStats</a></div><div class="ttdoc">Stats structure for HeapBufMP_getExtendedStats() </div><div class="ttdef"><b>Definition:</b> HeapBufMP.h:246</div></div>
240 <div class="ttc" id="_heap_buf_m_p_8h_html_ada60a6b6a4bee75403768e41d07525ff"><div class="ttname"><a href="_heap_buf_m_p_8h.html#ada60a6b6a4bee75403768e41d07525ff">HeapBufMP_Params</a></div><div class="ttdeci">struct HeapBufMP_Params HeapBufMP_Params</div><div class="ttdoc">Structure defining parameters for the HeapBufMP module. </div></div>
241 <div class="ttc" id="struct_heap_buf_m_p___params_html_a0b16778e64598aca34ee44c746374203"><div class="ttname"><a href="struct_heap_buf_m_p___params.html#a0b16778e64598aca34ee44c746374203">HeapBufMP_Params::align</a></div><div class="ttdeci">SizeT align</div><div class="ttdoc">Alignment (in MAUs) of each block. </div><div class="ttdef"><b>Definition:</b> HeapBufMP.h:213</div></div>
242 <div class="ttc" id="_gate_m_p_8h_html"><div class="ttname"><a href="_gate_m_p_8h.html">GateMP.h</a></div><div class="ttdoc">Multiple processor gate that provides local and remote context protection. </div></div>
243 <div class="ttc" id="_gate_m_p_8h_html_a3c46c6ae9c6feac86b8b8872ee52f587"><div class="ttname"><a href="_gate_m_p_8h.html#a3c46c6ae9c6feac86b8b8872ee52f587">GateMP_Handle</a></div><div class="ttdeci">struct GateMP_Object_tag * GateMP_Handle</div><div class="ttdoc">GateMP_Handle type. </div><div class="ttdef"><b>Definition:</b> GateMP.h:222</div></div>
244 <div class="ttc" id="_heap_buf_m_p_8h_html_aed941f6bb592ec1573c646f7c6a4290a"><div class="ttname"><a href="_heap_buf_m_p_8h.html#aed941f6bb592ec1573c646f7c6a4290a">HeapBufMP_getStats</a></div><div class="ttdeci">Void HeapBufMP_getStats(HeapBufMP_Handle handle, Ptr stats)</div><div class="ttdoc">Get memory statistics. </div></div>
245 <div class="ttc" id="_heap_buf_m_p_8h_html_a0a9972756cf113da0ac5f2eb7f647fbe"><div class="ttname"><a href="_heap_buf_m_p_8h.html#a0a9972756cf113da0ac5f2eb7f647fbe">HeapBufMP_ExtendedStats</a></div><div class="ttdeci">struct HeapBufMP_ExtendedStats HeapBufMP_ExtendedStats</div><div class="ttdoc">Stats structure for HeapBufMP_getExtendedStats() </div></div>
246 <div class="ttc" id="_heap_buf_m_p_8h_html_a667a26b92e70373b8642ff15e61ad7d0"><div class="ttname"><a href="_heap_buf_m_p_8h.html#a667a26b92e70373b8642ff15e61ad7d0">HeapBufMP_free</a></div><div class="ttdeci">Void HeapBufMP_free(HeapBufMP_Handle handle, Ptr block, SizeT size)</div><div class="ttdoc">Frees a block of memory. </div></div>
247 <div class="ttc" id="struct_heap_buf_m_p___params_html_a22f33c326f94898613b8d40335be4eee"><div class="ttname"><a href="struct_heap_buf_m_p___params.html#a22f33c326f94898613b8d40335be4eee">HeapBufMP_Params::regionId</a></div><div class="ttdeci">UInt16 regionId</div><div class="ttdoc">Shared region ID. </div><div class="ttdef"><b>Definition:</b> HeapBufMP.h:176</div></div>
248 <div class="ttc" id="struct_heap_buf_m_p___params_html_a1ebbb52b6985282c23f534da4ac27eaa"><div class="ttname"><a href="struct_heap_buf_m_p___params.html#a1ebbb52b6985282c23f534da4ac27eaa">HeapBufMP_Params::exact</a></div><div class="ttdeci">Bool exact</div><div class="ttdoc">Use exact matching. </div><div class="ttdef"><b>Definition:</b> HeapBufMP.h:224</div></div>
249 <div class="ttc" id="struct_heap_buf_m_p___params_html_aaefdf87660dc3b0a57d33f10791dcc02"><div class="ttname"><a href="struct_heap_buf_m_p___params.html#aaefdf87660dc3b0a57d33f10791dcc02">HeapBufMP_Params::name</a></div><div class="ttdeci">String name</div><div class="ttdoc">Name of this instance. </div><div class="ttdef"><b>Definition:</b> HeapBufMP.h:165</div></div>
250 <div class="ttc" id="_heap_buf_m_p_8h_html_aab507dc414e09bbfe75ceb78458c27ed"><div class="ttname"><a href="_heap_buf_m_p_8h.html#aab507dc414e09bbfe75ceb78458c27ed">HeapBufMP_alloc</a></div><div class="ttdeci">Void * HeapBufMP_alloc(HeapBufMP_Handle handle, SizeT size, SizeT align)</div><div class="ttdoc">Allocate a block of memory of specified size and alignment. </div></div>
251 <div class="ttc" id="struct_heap_buf_m_p___params_html_a4e85da751892052ed1fddc3376f64d9d"><div class="ttname"><a href="struct_heap_buf_m_p___params.html#a4e85da751892052ed1fddc3376f64d9d">HeapBufMP_Params::numBlocks</a></div><div class="ttdeci">UInt numBlocks</div><div class="ttdoc">Number of fixed-size blocks. </div><div class="ttdef"><b>Definition:</b> HeapBufMP.h:207</div></div>
252 <div class="ttc" id="struct_heap_buf_m_p___params_html"><div class="ttname"><a href="struct_heap_buf_m_p___params.html">HeapBufMP_Params</a></div><div class="ttdoc">Structure defining parameters for the HeapBufMP module. </div><div class="ttdef"><b>Definition:</b> HeapBufMP.h:164</div></div>
253 <div class="ttc" id="_heap_buf_m_p_8h_html_a81700157982b86ed3aefc72c6f3a7a5f"><div class="ttname"><a href="_heap_buf_m_p_8h.html#a81700157982b86ed3aefc72c6f3a7a5f">HeapBufMP_Params_init</a></div><div class="ttdeci">Void HeapBufMP_Params_init(HeapBufMP_Params *params)</div><div class="ttdoc">Initialize a HeapBufMP parameters struct. </div></div>
254 <div class="ttc" id="_heap_buf_m_p_8h_html_aff10f0e0fc4ec4b88adb2b7422955f96"><div class="ttname"><a href="_heap_buf_m_p_8h.html#aff10f0e0fc4ec4b88adb2b7422955f96">HeapBufMP_delete</a></div><div class="ttdeci">Int HeapBufMP_delete(HeapBufMP_Handle *handlePtr)</div><div class="ttdoc">Delete a created HeapBufMP instance. </div></div>
255 <div class="ttc" id="struct_heap_buf_m_p___extended_stats_html_a757dc392845103b1e5b31ab02d17bef5"><div class="ttname"><a href="struct_heap_buf_m_p___extended_stats.html#a757dc392845103b1e5b31ab02d17bef5">HeapBufMP_ExtendedStats::numAllocatedBlocks</a></div><div class="ttdeci">UInt numAllocatedBlocks</div><div class="ttdef"><b>Definition:</b> HeapBufMP.h:252</div></div>
256 <div class="ttc" id="_heap_buf_m_p_8h_html_a826facae0861c09d545f18dd503f0f0f"><div class="ttname"><a href="_heap_buf_m_p_8h.html#a826facae0861c09d545f18dd503f0f0f">HeapBufMP_open</a></div><div class="ttdeci">Int HeapBufMP_open(String name, HeapBufMP_Handle *handlePtr)</div><div class="ttdoc">Open a created HeapBufMP instance. </div></div>
257 </div><!-- fragment --></div><!-- contents -->
258 <!-- HTML footer for doxygen 1.8.9.1-->
259 <!-- start footer part -->
260 <hr class="footer"/><small>
261 Copyright 2016, Texas Instruments Incorporated
262 </small>
263 </body>
264 </html>