annotate doc/html/class_circular_buffer.html @ 117:ca2d83d29814 tip master

Merge branch 'release/1.0.5'
author Adam Stark <adamstark.uk@gmail.com>
date Fri, 18 Aug 2023 20:07:33 +0200
parents d6d9df2db3e1
children
rev   line source
adamstark@114 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
adamstark@114 2 <html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
adamstark@114 3 <head>
adamstark@114 4 <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
adamstark@114 5 <meta http-equiv="X-UA-Compatible" content="IE=11"/>
adamstark@114 6 <meta name="generator" content="Doxygen 1.9.7"/>
adamstark@114 7 <meta name="viewport" content="width=device-width, initial-scale=1"/>
adamstark@114 8 <title>BTrack - A Real-Time Beat Tracker: CircularBuffer Class Reference</title>
adamstark@114 9 <link href="tabs.css" rel="stylesheet" type="text/css"/>
adamstark@114 10 <script type="text/javascript" src="jquery.js"></script>
adamstark@114 11 <script type="text/javascript" src="dynsections.js"></script>
adamstark@114 12 <link href="search/search.css" rel="stylesheet" type="text/css"/>
adamstark@114 13 <script type="text/javascript" src="search/searchdata.js"></script>
adamstark@114 14 <script type="text/javascript" src="search/search.js"></script>
adamstark@114 15 <link href="doxygen.css" rel="stylesheet" type="text/css" />
adamstark@114 16 </head>
adamstark@114 17 <body>
adamstark@114 18 <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
adamstark@114 19 <div id="titlearea">
adamstark@114 20 <table cellspacing="0" cellpadding="0">
adamstark@114 21 <tbody>
adamstark@114 22 <tr id="projectrow">
adamstark@114 23 <td id="projectalign">
adamstark@114 24 <div id="projectname">BTrack - A Real-Time Beat Tracker
adamstark@114 25 </div>
adamstark@114 26 </td>
adamstark@114 27 </tr>
adamstark@114 28 </tbody>
adamstark@114 29 </table>
adamstark@114 30 </div>
adamstark@114 31 <!-- end header part -->
adamstark@114 32 <!-- Generated by Doxygen 1.9.7 -->
adamstark@114 33 <script type="text/javascript">
adamstark@114 34 /* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
adamstark@114 35 var searchBox = new SearchBox("searchBox", "search/",'.html');
adamstark@114 36 /* @license-end */
adamstark@114 37 </script>
adamstark@114 38 <script type="text/javascript" src="menudata.js"></script>
adamstark@114 39 <script type="text/javascript" src="menu.js"></script>
adamstark@114 40 <script type="text/javascript">
adamstark@114 41 /* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
adamstark@114 42 $(function() {
adamstark@114 43 initMenu('',true,false,'search.php','Search');
adamstark@114 44 $(document).ready(function() { init_search(); });
adamstark@114 45 });
adamstark@114 46 /* @license-end */
adamstark@114 47 </script>
adamstark@114 48 <div id="main-nav"></div>
adamstark@114 49 <!-- window showing the filter options -->
adamstark@114 50 <div id="MSearchSelectWindow"
adamstark@114 51 onmouseover="return searchBox.OnSearchSelectShow()"
adamstark@114 52 onmouseout="return searchBox.OnSearchSelectHide()"
adamstark@114 53 onkeydown="return searchBox.OnSearchSelectKey(event)">
adamstark@114 54 </div>
adamstark@114 55
adamstark@114 56 <!-- iframe showing the search results (closed by default) -->
adamstark@114 57 <div id="MSearchResultsWindow">
adamstark@114 58 <div id="MSearchResults">
adamstark@114 59 <div class="SRPage">
adamstark@114 60 <div id="SRIndex">
adamstark@114 61 <div id="SRResults"></div>
adamstark@114 62 <div class="SRStatus" id="Loading">Loading...</div>
adamstark@114 63 <div class="SRStatus" id="Searching">Searching...</div>
adamstark@114 64 <div class="SRStatus" id="NoMatches">No Matches</div>
adamstark@114 65 </div>
adamstark@114 66 </div>
adamstark@114 67 </div>
adamstark@114 68 </div>
adamstark@114 69
adamstark@114 70 </div><!-- top -->
adamstark@114 71 <div class="header">
adamstark@114 72 <div class="summary">
adamstark@114 73 <a href="#pub-methods">Public Member Functions</a> &#124;
adamstark@114 74 <a href="class_circular_buffer-members.html">List of all members</a> </div>
adamstark@114 75 <div class="headertitle"><div class="title">CircularBuffer Class Reference</div></div>
adamstark@114 76 </div><!--header-->
adamstark@114 77 <div class="contents">
adamstark@114 78
adamstark@114 79 <p><code>#include &lt;<a class="el" href="_circular_buffer_8h_source.html">CircularBuffer.h</a>&gt;</code></p>
adamstark@114 80 <table class="memberdecls">
adamstark@114 81 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
adamstark@114 82 Public Member Functions</h2></td></tr>
adamstark@114 83 <tr class="memitem:a8c5de0e610bb50bac684f4707e23431c"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_circular_buffer.html#a8c5de0e610bb50bac684f4707e23431c">CircularBuffer</a> ()</td></tr>
adamstark@114 84 <tr class="separator:a8c5de0e610bb50bac684f4707e23431c"><td class="memSeparator" colspan="2">&#160;</td></tr>
adamstark@114 85 <tr class="memitem:a5b0c486a7eb76bae0d1a0d6e459d0f5a"><td class="memItemLeft" align="right" valign="top">double &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_circular_buffer.html#a5b0c486a7eb76bae0d1a0d6e459d0f5a">operator[]</a> (int i)</td></tr>
adamstark@114 86 <tr class="separator:a5b0c486a7eb76bae0d1a0d6e459d0f5a"><td class="memSeparator" colspan="2">&#160;</td></tr>
adamstark@114 87 <tr class="memitem:a8e6fa8bf39215a466876a7a2daa1ce22"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_circular_buffer.html#a8e6fa8bf39215a466876a7a2daa1ce22">addSampleToEnd</a> (double v)</td></tr>
adamstark@114 88 <tr class="separator:a8e6fa8bf39215a466876a7a2daa1ce22"><td class="memSeparator" colspan="2">&#160;</td></tr>
adamstark@114 89 <tr class="memitem:a09d74c64e5e9e0ee13c84663ba9523ea"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_circular_buffer.html#a09d74c64e5e9e0ee13c84663ba9523ea">resize</a> (int <a class="el" href="class_circular_buffer.html#ad452b3b0f7703927ce1f3befd8f7512f">size</a>)</td></tr>
adamstark@114 90 <tr class="separator:a09d74c64e5e9e0ee13c84663ba9523ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
adamstark@114 91 <tr class="memitem:ad452b3b0f7703927ce1f3befd8f7512f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_circular_buffer.html#ad452b3b0f7703927ce1f3befd8f7512f">size</a> ()</td></tr>
adamstark@114 92 <tr class="separator:ad452b3b0f7703927ce1f3befd8f7512f"><td class="memSeparator" colspan="2">&#160;</td></tr>
adamstark@114 93 </table>
adamstark@114 94 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
adamstark@114 95 <div class="textblock"><p>A circular buffer that allows you to add new samples to the end whilst removing them from the beginning. This is implemented in an efficient way which doesn't involve any memory allocation as samples are added to the end of the buffer </p>
adamstark@114 96 </div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
adamstark@114 97 <a id="a8c5de0e610bb50bac684f4707e23431c" name="a8c5de0e610bb50bac684f4707e23431c"></a>
adamstark@114 98 <h2 class="memtitle"><span class="permalink"><a href="#a8c5de0e610bb50bac684f4707e23431c">&#9670;&#160;</a></span>CircularBuffer()</h2>
adamstark@114 99
adamstark@114 100 <div class="memitem">
adamstark@114 101 <div class="memproto">
adamstark@114 102 <table class="mlabels">
adamstark@114 103 <tr>
adamstark@114 104 <td class="mlabels-left">
adamstark@114 105 <table class="memname">
adamstark@114 106 <tr>
adamstark@114 107 <td class="memname">CircularBuffer::CircularBuffer </td>
adamstark@114 108 <td>(</td>
adamstark@114 109 <td class="paramname"></td><td>)</td>
adamstark@114 110 <td></td>
adamstark@114 111 </tr>
adamstark@114 112 </table>
adamstark@114 113 </td>
adamstark@114 114 <td class="mlabels-right">
adamstark@114 115 <span class="mlabels"><span class="mlabel">inline</span></span> </td>
adamstark@114 116 </tr>
adamstark@114 117 </table>
adamstark@114 118 </div><div class="memdoc">
adamstark@114 119 <p>Constructor </p>
adamstark@114 120
adamstark@114 121 </div>
adamstark@114 122 </div>
adamstark@114 123 <h2 class="groupheader">Member Function Documentation</h2>
adamstark@114 124 <a id="a8e6fa8bf39215a466876a7a2daa1ce22" name="a8e6fa8bf39215a466876a7a2daa1ce22"></a>
adamstark@114 125 <h2 class="memtitle"><span class="permalink"><a href="#a8e6fa8bf39215a466876a7a2daa1ce22">&#9670;&#160;</a></span>addSampleToEnd()</h2>
adamstark@114 126
adamstark@114 127 <div class="memitem">
adamstark@114 128 <div class="memproto">
adamstark@114 129 <table class="mlabels">
adamstark@114 130 <tr>
adamstark@114 131 <td class="mlabels-left">
adamstark@114 132 <table class="memname">
adamstark@114 133 <tr>
adamstark@114 134 <td class="memname">void CircularBuffer::addSampleToEnd </td>
adamstark@114 135 <td>(</td>
adamstark@114 136 <td class="paramtype">double&#160;</td>
adamstark@114 137 <td class="paramname"><em>v</em></td><td>)</td>
adamstark@114 138 <td></td>
adamstark@114 139 </tr>
adamstark@114 140 </table>
adamstark@114 141 </td>
adamstark@114 142 <td class="mlabels-right">
adamstark@114 143 <span class="mlabels"><span class="mlabel">inline</span></span> </td>
adamstark@114 144 </tr>
adamstark@114 145 </table>
adamstark@114 146 </div><div class="memdoc">
adamstark@114 147 <p>Add a new sample to the end of the buffer </p>
adamstark@114 148
adamstark@114 149 </div>
adamstark@114 150 </div>
adamstark@114 151 <a id="a5b0c486a7eb76bae0d1a0d6e459d0f5a" name="a5b0c486a7eb76bae0d1a0d6e459d0f5a"></a>
adamstark@114 152 <h2 class="memtitle"><span class="permalink"><a href="#a5b0c486a7eb76bae0d1a0d6e459d0f5a">&#9670;&#160;</a></span>operator[]()</h2>
adamstark@114 153
adamstark@114 154 <div class="memitem">
adamstark@114 155 <div class="memproto">
adamstark@114 156 <table class="mlabels">
adamstark@114 157 <tr>
adamstark@114 158 <td class="mlabels-left">
adamstark@114 159 <table class="memname">
adamstark@114 160 <tr>
adamstark@114 161 <td class="memname">double &amp; CircularBuffer::operator[] </td>
adamstark@114 162 <td>(</td>
adamstark@114 163 <td class="paramtype">int&#160;</td>
adamstark@114 164 <td class="paramname"><em>i</em></td><td>)</td>
adamstark@114 165 <td></td>
adamstark@114 166 </tr>
adamstark@114 167 </table>
adamstark@114 168 </td>
adamstark@114 169 <td class="mlabels-right">
adamstark@114 170 <span class="mlabels"><span class="mlabel">inline</span></span> </td>
adamstark@114 171 </tr>
adamstark@114 172 </table>
adamstark@114 173 </div><div class="memdoc">
adamstark@114 174 <p>Access the ith element in the buffer </p>
adamstark@114 175
adamstark@114 176 </div>
adamstark@114 177 </div>
adamstark@114 178 <a id="a09d74c64e5e9e0ee13c84663ba9523ea" name="a09d74c64e5e9e0ee13c84663ba9523ea"></a>
adamstark@114 179 <h2 class="memtitle"><span class="permalink"><a href="#a09d74c64e5e9e0ee13c84663ba9523ea">&#9670;&#160;</a></span>resize()</h2>
adamstark@114 180
adamstark@114 181 <div class="memitem">
adamstark@114 182 <div class="memproto">
adamstark@114 183 <table class="mlabels">
adamstark@114 184 <tr>
adamstark@114 185 <td class="mlabels-left">
adamstark@114 186 <table class="memname">
adamstark@114 187 <tr>
adamstark@114 188 <td class="memname">void CircularBuffer::resize </td>
adamstark@114 189 <td>(</td>
adamstark@114 190 <td class="paramtype">int&#160;</td>
adamstark@114 191 <td class="paramname"><em>size</em></td><td>)</td>
adamstark@114 192 <td></td>
adamstark@114 193 </tr>
adamstark@114 194 </table>
adamstark@114 195 </td>
adamstark@114 196 <td class="mlabels-right">
adamstark@114 197 <span class="mlabels"><span class="mlabel">inline</span></span> </td>
adamstark@114 198 </tr>
adamstark@114 199 </table>
adamstark@114 200 </div><div class="memdoc">
adamstark@114 201 <p>Resize the buffer </p>
adamstark@114 202
adamstark@114 203 </div>
adamstark@114 204 </div>
adamstark@114 205 <a id="ad452b3b0f7703927ce1f3befd8f7512f" name="ad452b3b0f7703927ce1f3befd8f7512f"></a>
adamstark@114 206 <h2 class="memtitle"><span class="permalink"><a href="#ad452b3b0f7703927ce1f3befd8f7512f">&#9670;&#160;</a></span>size()</h2>
adamstark@114 207
adamstark@114 208 <div class="memitem">
adamstark@114 209 <div class="memproto">
adamstark@114 210 <table class="mlabels">
adamstark@114 211 <tr>
adamstark@114 212 <td class="mlabels-left">
adamstark@114 213 <table class="memname">
adamstark@114 214 <tr>
adamstark@114 215 <td class="memname">int CircularBuffer::size </td>
adamstark@114 216 <td>(</td>
adamstark@114 217 <td class="paramname"></td><td>)</td>
adamstark@114 218 <td></td>
adamstark@114 219 </tr>
adamstark@114 220 </table>
adamstark@114 221 </td>
adamstark@114 222 <td class="mlabels-right">
adamstark@114 223 <span class="mlabels"><span class="mlabel">inline</span></span> </td>
adamstark@114 224 </tr>
adamstark@114 225 </table>
adamstark@114 226 </div><div class="memdoc">
adamstark@114 227 <p>Returns the size of the buffer </p>
adamstark@114 228
adamstark@114 229 </div>
adamstark@114 230 </div>
adamstark@114 231 <hr/>The documentation for this class was generated from the following file:<ul>
adamstark@114 232 <li>src/<a class="el" href="_circular_buffer_8h_source.html">CircularBuffer.h</a></li>
adamstark@114 233 </ul>
adamstark@114 234 </div><!-- contents -->
adamstark@114 235 <!-- start footer part -->
adamstark@114 236 <hr class="footer"/><address class="footer"><small>
adamstark@114 237 Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.7
adamstark@114 238 </small></address>
adamstark@114 239 </body>
adamstark@114 240 </html>