DISTRHO Plugin Framework
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

311 lines
24KB

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
  5. <meta http-equiv="X-UA-Compatible" content="IE=9"/>
  6. <meta name="generator" content="Doxygen 1.8.17"/>
  7. <meta name="viewport" content="width=device-width, initial-scale=1"/>
  8. <title>DISTRHO Plugin Framework: HeapRingBuffer Class Reference</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. <link href="doxygen.css" rel="stylesheet" type="text/css" />
  16. </head>
  17. <body>
  18. <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
  19. <div id="titlearea">
  20. <table cellspacing="0" cellpadding="0">
  21. <tbody>
  22. <tr style="height: 56px;">
  23. <td id="projectalign" style="padding-left: 0.5em;">
  24. <div id="projectname">DISTRHO Plugin Framework
  25. </div>
  26. </td>
  27. </tr>
  28. </tbody>
  29. </table>
  30. </div>
  31. <!-- end header part -->
  32. <!-- Generated by Doxygen 1.8.17 -->
  33. <script type="text/javascript">
  34. /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
  35. var searchBox = new SearchBox("searchBox", "search",false,'Search');
  36. /* @license-end */
  37. </script>
  38. <script type="text/javascript" src="menudata.js"></script>
  39. <script type="text/javascript" src="menu.js"></script>
  40. <script type="text/javascript">
  41. /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
  42. $(function() {
  43. initMenu('',true,false,'search.php','Search');
  44. $(document).ready(function() { init_search(); });
  45. });
  46. /* @license-end */</script>
  47. <div id="main-nav"></div>
  48. <!-- window showing the filter options -->
  49. <div id="MSearchSelectWindow"
  50. onmouseover="return searchBox.OnSearchSelectShow()"
  51. onmouseout="return searchBox.OnSearchSelectHide()"
  52. onkeydown="return searchBox.OnSearchSelectKey(event)">
  53. </div>
  54. <!-- iframe showing the search results (closed by default) -->
  55. <div id="MSearchResultsWindow">
  56. <iframe src="javascript:void(0)" frameborder="0"
  57. name="MSearchResults" id="MSearchResults">
  58. </iframe>
  59. </div>
  60. </div><!-- top -->
  61. <div class="header">
  62. <div class="summary">
  63. <a href="#pub-methods">Public Member Functions</a> &#124;
  64. <a href="classHeapRingBuffer-members.html">List of all members</a> </div>
  65. <div class="headertitle">
  66. <div class="title">HeapRingBuffer Class Reference</div> </div>
  67. </div><!--header-->
  68. <div class="contents">
  69. <p><code>#include &lt;<a class="el" href="RingBuffer_8hpp_source.html">RingBuffer.hpp</a>&gt;</code></p>
  70. <div class="dynheader">
  71. Inheritance diagram for HeapRingBuffer:</div>
  72. <div class="dyncontent">
  73. <div class="center">
  74. <img src="classHeapRingBuffer.png" usemap="#HeapRingBuffer_map" alt=""/>
  75. <map id="HeapRingBuffer_map" name="HeapRingBuffer_map">
  76. <area href="classRingBufferControl.html" alt="RingBufferControl&lt; HeapBuffer &gt;" shape="rect" coords="0,0,202,24"/>
  77. </map>
  78. </div></div>
  79. <table class="memberdecls">
  80. <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
  81. Public Member Functions</h2></td></tr>
  82. <tr class="memitem:a6a3c03b584b5b20ad2829e26f5e6ed0e"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classHeapRingBuffer.html#a6a3c03b584b5b20ad2829e26f5e6ed0e">HeapRingBuffer</a> () noexcept</td></tr>
  83. <tr class="separator:a6a3c03b584b5b20ad2829e26f5e6ed0e"><td class="memSeparator" colspan="2">&#160;</td></tr>
  84. <tr class="memitem:ae2e25c610073d35998efd7106b5eb8a0"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classHeapRingBuffer.html#ae2e25c610073d35998efd7106b5eb8a0">~HeapRingBuffer</a> () noexcept override</td></tr>
  85. <tr class="separator:ae2e25c610073d35998efd7106b5eb8a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
  86. <tr class="memitem:ab7d60a3acc757e88e1c7254626ce9709"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classHeapRingBuffer.html#ab7d60a3acc757e88e1c7254626ce9709">createBuffer</a> (const uint32_t size) noexcept</td></tr>
  87. <tr class="separator:ab7d60a3acc757e88e1c7254626ce9709"><td class="memSeparator" colspan="2">&#160;</td></tr>
  88. <tr class="memitem:a940bc4c023a53a0d511d6f99186d8224"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classHeapRingBuffer.html#a940bc4c023a53a0d511d6f99186d8224">deleteBuffer</a> () noexcept</td></tr>
  89. <tr class="separator:a940bc4c023a53a0d511d6f99186d8224"><td class="memSeparator" colspan="2">&#160;</td></tr>
  90. <tr class="inherit_header pub_methods_classRingBufferControl"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classRingBufferControl')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classRingBufferControl.html">RingBufferControl&lt; HeapBuffer &gt;</a></td></tr>
  91. <tr class="memitem:a5a857b3ce6d8570899e1310bbaa166c2 inherit pub_methods_classRingBufferControl"><td class="memItemLeft" align="right" valign="top"><a id="a5a857b3ce6d8570899e1310bbaa166c2"></a>
  92. bool&#160;</td><td class="memItemRight" valign="bottom"><b>isDataAvailableForReading</b> () const noexcept</td></tr>
  93. <tr class="separator:a5a857b3ce6d8570899e1310bbaa166c2 inherit pub_methods_classRingBufferControl"><td class="memSeparator" colspan="2">&#160;</td></tr>
  94. <tr class="memitem:ac795fc07ffa5c591b9516b514dedc7aa inherit pub_methods_classRingBufferControl"><td class="memItemLeft" align="right" valign="top"><a id="ac795fc07ffa5c591b9516b514dedc7aa"></a>
  95. bool&#160;</td><td class="memItemRight" valign="bottom"><b>isEmpty</b> () const noexcept</td></tr>
  96. <tr class="separator:ac795fc07ffa5c591b9516b514dedc7aa inherit pub_methods_classRingBufferControl"><td class="memSeparator" colspan="2">&#160;</td></tr>
  97. <tr class="memitem:aed6ec8bf3b3bc4ef2e490bd1f34f5cfb inherit pub_methods_classRingBufferControl"><td class="memItemLeft" align="right" valign="top"><a id="aed6ec8bf3b3bc4ef2e490bd1f34f5cfb"></a>
  98. uint32_t&#160;</td><td class="memItemRight" valign="bottom"><b>getAvailableDataSize</b> () const noexcept</td></tr>
  99. <tr class="separator:aed6ec8bf3b3bc4ef2e490bd1f34f5cfb inherit pub_methods_classRingBufferControl"><td class="memSeparator" colspan="2">&#160;</td></tr>
  100. <tr class="memitem:a8a93880bd798351b66c7c546ee91d7af inherit pub_methods_classRingBufferControl"><td class="memItemLeft" align="right" valign="top"><a id="a8a93880bd798351b66c7c546ee91d7af"></a>
  101. void&#160;</td><td class="memItemRight" valign="bottom"><b>clearData</b> () noexcept</td></tr>
  102. <tr class="separator:a8a93880bd798351b66c7c546ee91d7af inherit pub_methods_classRingBufferControl"><td class="memSeparator" colspan="2">&#160;</td></tr>
  103. <tr class="memitem:a7861a13bc22c3a692490002e11cfa001 inherit pub_methods_classRingBufferControl"><td class="memItemLeft" align="right" valign="top"><a id="a7861a13bc22c3a692490002e11cfa001"></a>
  104. bool&#160;</td><td class="memItemRight" valign="bottom"><b>readBool</b> () noexcept</td></tr>
  105. <tr class="separator:a7861a13bc22c3a692490002e11cfa001 inherit pub_methods_classRingBufferControl"><td class="memSeparator" colspan="2">&#160;</td></tr>
  106. <tr class="memitem:a7b08be900bb851cb08ea17797afde52b inherit pub_methods_classRingBufferControl"><td class="memItemLeft" align="right" valign="top"><a id="a7b08be900bb851cb08ea17797afde52b"></a>
  107. uint8_t&#160;</td><td class="memItemRight" valign="bottom"><b>readByte</b> () noexcept</td></tr>
  108. <tr class="separator:a7b08be900bb851cb08ea17797afde52b inherit pub_methods_classRingBufferControl"><td class="memSeparator" colspan="2">&#160;</td></tr>
  109. <tr class="memitem:a481ba7979e8dfa0077225fb4eeedcdf4 inherit pub_methods_classRingBufferControl"><td class="memItemLeft" align="right" valign="top"><a id="a481ba7979e8dfa0077225fb4eeedcdf4"></a>
  110. int16_t&#160;</td><td class="memItemRight" valign="bottom"><b>readShort</b> () noexcept</td></tr>
  111. <tr class="separator:a481ba7979e8dfa0077225fb4eeedcdf4 inherit pub_methods_classRingBufferControl"><td class="memSeparator" colspan="2">&#160;</td></tr>
  112. <tr class="memitem:a3a568b35da8271fd136d3e52254c3a6e inherit pub_methods_classRingBufferControl"><td class="memItemLeft" align="right" valign="top"><a id="a3a568b35da8271fd136d3e52254c3a6e"></a>
  113. uint16_t&#160;</td><td class="memItemRight" valign="bottom"><b>readUShort</b> () noexcept</td></tr>
  114. <tr class="separator:a3a568b35da8271fd136d3e52254c3a6e inherit pub_methods_classRingBufferControl"><td class="memSeparator" colspan="2">&#160;</td></tr>
  115. <tr class="memitem:a6f9f287326a852f40dc8c2f477eac61d inherit pub_methods_classRingBufferControl"><td class="memItemLeft" align="right" valign="top"><a id="a6f9f287326a852f40dc8c2f477eac61d"></a>
  116. int32_t&#160;</td><td class="memItemRight" valign="bottom"><b>readInt</b> () noexcept</td></tr>
  117. <tr class="separator:a6f9f287326a852f40dc8c2f477eac61d inherit pub_methods_classRingBufferControl"><td class="memSeparator" colspan="2">&#160;</td></tr>
  118. <tr class="memitem:a8cb216fe6c4ae7955f7a1e6fde3fdaaa inherit pub_methods_classRingBufferControl"><td class="memItemLeft" align="right" valign="top"><a id="a8cb216fe6c4ae7955f7a1e6fde3fdaaa"></a>
  119. uint32_t&#160;</td><td class="memItemRight" valign="bottom"><b>readUInt</b> () noexcept</td></tr>
  120. <tr class="separator:a8cb216fe6c4ae7955f7a1e6fde3fdaaa inherit pub_methods_classRingBufferControl"><td class="memSeparator" colspan="2">&#160;</td></tr>
  121. <tr class="memitem:a00e4069c4e71a15aba05cbd20416f9c2 inherit pub_methods_classRingBufferControl"><td class="memItemLeft" align="right" valign="top"><a id="a00e4069c4e71a15aba05cbd20416f9c2"></a>
  122. int64_t&#160;</td><td class="memItemRight" valign="bottom"><b>readLong</b> () noexcept</td></tr>
  123. <tr class="separator:a00e4069c4e71a15aba05cbd20416f9c2 inherit pub_methods_classRingBufferControl"><td class="memSeparator" colspan="2">&#160;</td></tr>
  124. <tr class="memitem:a84d06ef9f64dda3c61e02744bee598b5 inherit pub_methods_classRingBufferControl"><td class="memItemLeft" align="right" valign="top"><a id="a84d06ef9f64dda3c61e02744bee598b5"></a>
  125. uint64_t&#160;</td><td class="memItemRight" valign="bottom"><b>readULong</b> () noexcept</td></tr>
  126. <tr class="separator:a84d06ef9f64dda3c61e02744bee598b5 inherit pub_methods_classRingBufferControl"><td class="memSeparator" colspan="2">&#160;</td></tr>
  127. <tr class="memitem:a0cfb2a83c9788607530c96e122f1a5cb inherit pub_methods_classRingBufferControl"><td class="memItemLeft" align="right" valign="top"><a id="a0cfb2a83c9788607530c96e122f1a5cb"></a>
  128. float&#160;</td><td class="memItemRight" valign="bottom"><b>readFloat</b> () noexcept</td></tr>
  129. <tr class="separator:a0cfb2a83c9788607530c96e122f1a5cb inherit pub_methods_classRingBufferControl"><td class="memSeparator" colspan="2">&#160;</td></tr>
  130. <tr class="memitem:a4181c35249c1cfa5115836766552a9f7 inherit pub_methods_classRingBufferControl"><td class="memItemLeft" align="right" valign="top"><a id="a4181c35249c1cfa5115836766552a9f7"></a>
  131. double&#160;</td><td class="memItemRight" valign="bottom"><b>readDouble</b> () noexcept</td></tr>
  132. <tr class="separator:a4181c35249c1cfa5115836766552a9f7 inherit pub_methods_classRingBufferControl"><td class="memSeparator" colspan="2">&#160;</td></tr>
  133. <tr class="memitem:aafdb126b2885c507cec852bc63fd6cb8 inherit pub_methods_classRingBufferControl"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRingBufferControl.html#aafdb126b2885c507cec852bc63fd6cb8">readCustomData</a> (void *const data, const uint32_t size) noexcept</td></tr>
  134. <tr class="separator:aafdb126b2885c507cec852bc63fd6cb8 inherit pub_methods_classRingBufferControl"><td class="memSeparator" colspan="2">&#160;</td></tr>
  135. <tr class="memitem:aaaf4efe13ec2555c390047f545d2660d inherit pub_methods_classRingBufferControl"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRingBufferControl.html#aaaf4efe13ec2555c390047f545d2660d">readCustomType</a> (T &amp;type) noexcept</td></tr>
  136. <tr class="separator:aaaf4efe13ec2555c390047f545d2660d inherit pub_methods_classRingBufferControl"><td class="memSeparator" colspan="2">&#160;</td></tr>
  137. <tr class="memitem:a8d560bf7255bf3f9b3ab91d178c8a514 inherit pub_methods_classRingBufferControl"><td class="memItemLeft" align="right" valign="top"><a id="a8d560bf7255bf3f9b3ab91d178c8a514"></a>
  138. bool&#160;</td><td class="memItemRight" valign="bottom"><b>writeBool</b> (const bool value) noexcept</td></tr>
  139. <tr class="separator:a8d560bf7255bf3f9b3ab91d178c8a514 inherit pub_methods_classRingBufferControl"><td class="memSeparator" colspan="2">&#160;</td></tr>
  140. <tr class="memitem:a57d59476536b91746d8bf52bfae74755 inherit pub_methods_classRingBufferControl"><td class="memItemLeft" align="right" valign="top"><a id="a57d59476536b91746d8bf52bfae74755"></a>
  141. bool&#160;</td><td class="memItemRight" valign="bottom"><b>writeByte</b> (const uint8_t value) noexcept</td></tr>
  142. <tr class="separator:a57d59476536b91746d8bf52bfae74755 inherit pub_methods_classRingBufferControl"><td class="memSeparator" colspan="2">&#160;</td></tr>
  143. <tr class="memitem:a05763b20c7a59eab5b9ec7f32c758954 inherit pub_methods_classRingBufferControl"><td class="memItemLeft" align="right" valign="top"><a id="a05763b20c7a59eab5b9ec7f32c758954"></a>
  144. bool&#160;</td><td class="memItemRight" valign="bottom"><b>writeShort</b> (const int16_t value) noexcept</td></tr>
  145. <tr class="separator:a05763b20c7a59eab5b9ec7f32c758954 inherit pub_methods_classRingBufferControl"><td class="memSeparator" colspan="2">&#160;</td></tr>
  146. <tr class="memitem:a9b4e2008d32cf8ae36cbce37db935fa0 inherit pub_methods_classRingBufferControl"><td class="memItemLeft" align="right" valign="top"><a id="a9b4e2008d32cf8ae36cbce37db935fa0"></a>
  147. bool&#160;</td><td class="memItemRight" valign="bottom"><b>writeUShort</b> (const uint16_t value) noexcept</td></tr>
  148. <tr class="separator:a9b4e2008d32cf8ae36cbce37db935fa0 inherit pub_methods_classRingBufferControl"><td class="memSeparator" colspan="2">&#160;</td></tr>
  149. <tr class="memitem:a55d6d467fbb82ec942eaa88ee9de056f inherit pub_methods_classRingBufferControl"><td class="memItemLeft" align="right" valign="top"><a id="a55d6d467fbb82ec942eaa88ee9de056f"></a>
  150. bool&#160;</td><td class="memItemRight" valign="bottom"><b>writeInt</b> (const int32_t value) noexcept</td></tr>
  151. <tr class="separator:a55d6d467fbb82ec942eaa88ee9de056f inherit pub_methods_classRingBufferControl"><td class="memSeparator" colspan="2">&#160;</td></tr>
  152. <tr class="memitem:a3b3e0c77afe562049ebef1a5dd534ffe inherit pub_methods_classRingBufferControl"><td class="memItemLeft" align="right" valign="top"><a id="a3b3e0c77afe562049ebef1a5dd534ffe"></a>
  153. bool&#160;</td><td class="memItemRight" valign="bottom"><b>writeUInt</b> (const uint32_t value) noexcept</td></tr>
  154. <tr class="separator:a3b3e0c77afe562049ebef1a5dd534ffe inherit pub_methods_classRingBufferControl"><td class="memSeparator" colspan="2">&#160;</td></tr>
  155. <tr class="memitem:a5400bbf87025d3f6b4bf307538eacd8e inherit pub_methods_classRingBufferControl"><td class="memItemLeft" align="right" valign="top"><a id="a5400bbf87025d3f6b4bf307538eacd8e"></a>
  156. bool&#160;</td><td class="memItemRight" valign="bottom"><b>writeLong</b> (const int64_t value) noexcept</td></tr>
  157. <tr class="separator:a5400bbf87025d3f6b4bf307538eacd8e inherit pub_methods_classRingBufferControl"><td class="memSeparator" colspan="2">&#160;</td></tr>
  158. <tr class="memitem:ac2bc16d54ac5d10065124719abb95a87 inherit pub_methods_classRingBufferControl"><td class="memItemLeft" align="right" valign="top"><a id="ac2bc16d54ac5d10065124719abb95a87"></a>
  159. bool&#160;</td><td class="memItemRight" valign="bottom"><b>writeULong</b> (const uint64_t value) noexcept</td></tr>
  160. <tr class="separator:ac2bc16d54ac5d10065124719abb95a87 inherit pub_methods_classRingBufferControl"><td class="memSeparator" colspan="2">&#160;</td></tr>
  161. <tr class="memitem:a97f63ccaa7e578346938b32dfb47224e inherit pub_methods_classRingBufferControl"><td class="memItemLeft" align="right" valign="top"><a id="a97f63ccaa7e578346938b32dfb47224e"></a>
  162. bool&#160;</td><td class="memItemRight" valign="bottom"><b>writeFloat</b> (const float value) noexcept</td></tr>
  163. <tr class="separator:a97f63ccaa7e578346938b32dfb47224e inherit pub_methods_classRingBufferControl"><td class="memSeparator" colspan="2">&#160;</td></tr>
  164. <tr class="memitem:a6ad016c6ff0e3b3469060ad5ca758e73 inherit pub_methods_classRingBufferControl"><td class="memItemLeft" align="right" valign="top"><a id="a6ad016c6ff0e3b3469060ad5ca758e73"></a>
  165. bool&#160;</td><td class="memItemRight" valign="bottom"><b>writeDouble</b> (const double value) noexcept</td></tr>
  166. <tr class="separator:a6ad016c6ff0e3b3469060ad5ca758e73 inherit pub_methods_classRingBufferControl"><td class="memSeparator" colspan="2">&#160;</td></tr>
  167. <tr class="memitem:a72e173dcae573f6e2e8ac4cfeb8aa96b inherit pub_methods_classRingBufferControl"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRingBufferControl.html#a72e173dcae573f6e2e8ac4cfeb8aa96b">writeCustomData</a> (const void *const data, const uint32_t size) noexcept</td></tr>
  168. <tr class="separator:a72e173dcae573f6e2e8ac4cfeb8aa96b inherit pub_methods_classRingBufferControl"><td class="memSeparator" colspan="2">&#160;</td></tr>
  169. <tr class="memitem:a3e9c1857e11f0d9efcc2944d6000504b inherit pub_methods_classRingBufferControl"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRingBufferControl.html#a3e9c1857e11f0d9efcc2944d6000504b">writeCustomType</a> (const T &amp;type) noexcept</td></tr>
  170. <tr class="separator:a3e9c1857e11f0d9efcc2944d6000504b inherit pub_methods_classRingBufferControl"><td class="memSeparator" colspan="2">&#160;</td></tr>
  171. <tr class="memitem:afe0c53d2591eb265d657c1cab6800036 inherit pub_methods_classRingBufferControl"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRingBufferControl.html#afe0c53d2591eb265d657c1cab6800036">commitWrite</a> () noexcept</td></tr>
  172. <tr class="separator:afe0c53d2591eb265d657c1cab6800036 inherit pub_methods_classRingBufferControl"><td class="memSeparator" colspan="2">&#160;</td></tr>
  173. <tr class="memitem:ac1d302eb13fa5f41a2f9cb94974f2355 inherit pub_methods_classRingBufferControl"><td class="memItemLeft" align="right" valign="top"><a id="ac1d302eb13fa5f41a2f9cb94974f2355"></a>
  174. void&#160;</td><td class="memItemRight" valign="bottom"><b>setRingBuffer</b> (<a class="el" href="structHeapBuffer.html">HeapBuffer</a> *const ringBuf, const bool clearRingBufferData) noexcept</td></tr>
  175. <tr class="separator:ac1d302eb13fa5f41a2f9cb94974f2355 inherit pub_methods_classRingBufferControl"><td class="memSeparator" colspan="2">&#160;</td></tr>
  176. </table><table class="memberdecls">
  177. <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
  178. Additional Inherited Members</h2></td></tr>
  179. <tr class="inherit_header pro_methods_classRingBufferControl"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classRingBufferControl')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classRingBufferControl.html">RingBufferControl&lt; HeapBuffer &gt;</a></td></tr>
  180. <tr class="memitem:ae52a43afbe6404494aeb2abfb305342b inherit pro_methods_classRingBufferControl"><td class="memItemLeft" align="right" valign="top"><a id="ae52a43afbe6404494aeb2abfb305342b"></a>
  181. bool&#160;</td><td class="memItemRight" valign="bottom"><b>tryRead</b> (void *const buf, const uint32_t size) noexcept</td></tr>
  182. <tr class="separator:ae52a43afbe6404494aeb2abfb305342b inherit pro_methods_classRingBufferControl"><td class="memSeparator" colspan="2">&#160;</td></tr>
  183. <tr class="memitem:a121bc17537c3ff7841d8e684e84fbb7a inherit pro_methods_classRingBufferControl"><td class="memItemLeft" align="right" valign="top"><a id="a121bc17537c3ff7841d8e684e84fbb7a"></a>
  184. bool&#160;</td><td class="memItemRight" valign="bottom"><b>tryWrite</b> (const void *const buf, const uint32_t size) noexcept</td></tr>
  185. <tr class="separator:a121bc17537c3ff7841d8e684e84fbb7a inherit pro_methods_classRingBufferControl"><td class="memSeparator" colspan="2">&#160;</td></tr>
  186. </table>
  187. <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
  188. <div class="textblock"><p><a class="el" href="classRingBufferControl.html">RingBufferControl</a> with a heap buffer. This is a convenience class that provides a method for creating and destroying the heap data. Requires the use of <a class="el" href="classHeapRingBuffer.html#ab7d60a3acc757e88e1c7254626ce9709">createBuffer(uint32_t)</a> to make the ring buffer usable. </p>
  189. </div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
  190. <a id="a6a3c03b584b5b20ad2829e26f5e6ed0e"></a>
  191. <h2 class="memtitle"><span class="permalink"><a href="#a6a3c03b584b5b20ad2829e26f5e6ed0e">&#9670;&nbsp;</a></span>HeapRingBuffer()</h2>
  192. <div class="memitem">
  193. <div class="memproto">
  194. <table class="mlabels">
  195. <tr>
  196. <td class="mlabels-left">
  197. <table class="memname">
  198. <tr>
  199. <td class="memname">HeapRingBuffer::HeapRingBuffer </td>
  200. <td>(</td>
  201. <td class="paramname"></td><td>)</td>
  202. <td></td>
  203. </tr>
  204. </table>
  205. </td>
  206. <td class="mlabels-right">
  207. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">noexcept</span></span> </td>
  208. </tr>
  209. </table>
  210. </div><div class="memdoc">
  211. <p>Constructor. </p>
  212. </div>
  213. </div>
  214. <a id="ae2e25c610073d35998efd7106b5eb8a0"></a>
  215. <h2 class="memtitle"><span class="permalink"><a href="#ae2e25c610073d35998efd7106b5eb8a0">&#9670;&nbsp;</a></span>~HeapRingBuffer()</h2>
  216. <div class="memitem">
  217. <div class="memproto">
  218. <table class="mlabels">
  219. <tr>
  220. <td class="mlabels-left">
  221. <table class="memname">
  222. <tr>
  223. <td class="memname">HeapRingBuffer::~HeapRingBuffer </td>
  224. <td>(</td>
  225. <td class="paramname"></td><td>)</td>
  226. <td></td>
  227. </tr>
  228. </table>
  229. </td>
  230. <td class="mlabels-right">
  231. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">noexcept</span></span> </td>
  232. </tr>
  233. </table>
  234. </div><div class="memdoc">
  235. <p>Destructor. </p>
  236. </div>
  237. </div>
  238. <h2 class="groupheader">Member Function Documentation</h2>
  239. <a id="ab7d60a3acc757e88e1c7254626ce9709"></a>
  240. <h2 class="memtitle"><span class="permalink"><a href="#ab7d60a3acc757e88e1c7254626ce9709">&#9670;&nbsp;</a></span>createBuffer()</h2>
  241. <div class="memitem">
  242. <div class="memproto">
  243. <table class="mlabels">
  244. <tr>
  245. <td class="mlabels-left">
  246. <table class="memname">
  247. <tr>
  248. <td class="memname">bool HeapRingBuffer::createBuffer </td>
  249. <td>(</td>
  250. <td class="paramtype">const uint32_t&#160;</td>
  251. <td class="paramname"><em>size</em></td><td>)</td>
  252. <td></td>
  253. </tr>
  254. </table>
  255. </td>
  256. <td class="mlabels-right">
  257. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">noexcept</span></span> </td>
  258. </tr>
  259. </table>
  260. </div><div class="memdoc">
  261. <p>Create a buffer of the specified size. </p>
  262. </div>
  263. </div>
  264. <a id="a940bc4c023a53a0d511d6f99186d8224"></a>
  265. <h2 class="memtitle"><span class="permalink"><a href="#a940bc4c023a53a0d511d6f99186d8224">&#9670;&nbsp;</a></span>deleteBuffer()</h2>
  266. <div class="memitem">
  267. <div class="memproto">
  268. <table class="mlabels">
  269. <tr>
  270. <td class="mlabels-left">
  271. <table class="memname">
  272. <tr>
  273. <td class="memname">void HeapRingBuffer::deleteBuffer </td>
  274. <td>(</td>
  275. <td class="paramname"></td><td>)</td>
  276. <td></td>
  277. </tr>
  278. </table>
  279. </td>
  280. <td class="mlabels-right">
  281. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">noexcept</span></span> </td>
  282. </tr>
  283. </table>
  284. </div><div class="memdoc">
  285. <p>Delete the previously allocated buffer. </p>
  286. </div>
  287. </div>
  288. <hr/>The documentation for this class was generated from the following file:<ul>
  289. <li>distrho/extra/<a class="el" href="RingBuffer_8hpp_source.html">RingBuffer.hpp</a></li>
  290. </ul>
  291. </div><!-- contents -->
  292. <!-- start footer part -->
  293. <hr class="footer"/><address class="footer"><small>
  294. Generated on Mon Jun 14 2021 12:26:12 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
  295. <img class="footer" src="doxygen.png" alt="doxygen"/>
  296. </a> 1.8.17
  297. </small></address>
  298. </body>
  299. </html>