Mercurial > hg > btrack
view doc/html/class_circular_buffer.html @ 114:d6d9df2db3e1
Update documentation
author | Adam Stark <adamstark.uk@gmail.com> |
---|---|
date | Fri, 18 Aug 2023 10:48:26 +0200 |
parents | |
children |
line wrap: on
line source
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="en-US"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <meta http-equiv="X-UA-Compatible" content="IE=11"/> <meta name="generator" content="Doxygen 1.9.7"/> <meta name="viewport" content="width=device-width, initial-scale=1"/> <title>BTrack - A Real-Time Beat Tracker: CircularBuffer Class Reference</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> <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 id="projectrow"> <td id="projectalign"> <div id="projectname">BTrack - A Real-Time Beat Tracker </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.9.7 --> <script type="text/javascript"> /* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */ var searchBox = new SearchBox("searchBox", "search/",'.html'); /* @license-end */ </script> <script type="text/javascript" src="menudata.js"></script> <script type="text/javascript" src="menu.js"></script> <script type="text/javascript"> /* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */ $(function() { initMenu('',true,false,'search.php','Search'); $(document).ready(function() { init_search(); }); }); /* @license-end */ </script> <div id="main-nav"></div> <!-- 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"> <div id="MSearchResults"> <div class="SRPage"> <div id="SRIndex"> <div id="SRResults"></div> <div class="SRStatus" id="Loading">Loading...</div> <div class="SRStatus" id="Searching">Searching...</div> <div class="SRStatus" id="NoMatches">No Matches</div> </div> </div> </div> </div> </div><!-- top --> <div class="header"> <div class="summary"> <a href="#pub-methods">Public Member Functions</a> | <a href="class_circular_buffer-members.html">List of all members</a> </div> <div class="headertitle"><div class="title">CircularBuffer Class Reference</div></div> </div><!--header--> <div class="contents"> <p><code>#include <<a class="el" href="_circular_buffer_8h_source.html">CircularBuffer.h</a>></code></p> <table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a> Public Member Functions</h2></td></tr> <tr class="memitem:a8c5de0e610bb50bac684f4707e23431c"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_circular_buffer.html#a8c5de0e610bb50bac684f4707e23431c">CircularBuffer</a> ()</td></tr> <tr class="separator:a8c5de0e610bb50bac684f4707e23431c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a5b0c486a7eb76bae0d1a0d6e459d0f5a"><td class="memItemLeft" align="right" valign="top">double & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_circular_buffer.html#a5b0c486a7eb76bae0d1a0d6e459d0f5a">operator[]</a> (int i)</td></tr> <tr class="separator:a5b0c486a7eb76bae0d1a0d6e459d0f5a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a8e6fa8bf39215a466876a7a2daa1ce22"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_circular_buffer.html#a8e6fa8bf39215a466876a7a2daa1ce22">addSampleToEnd</a> (double v)</td></tr> <tr class="separator:a8e6fa8bf39215a466876a7a2daa1ce22"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a09d74c64e5e9e0ee13c84663ba9523ea"><td class="memItemLeft" align="right" valign="top">void </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> <tr class="separator:a09d74c64e5e9e0ee13c84663ba9523ea"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad452b3b0f7703927ce1f3befd8f7512f"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="class_circular_buffer.html#ad452b3b0f7703927ce1f3befd8f7512f">size</a> ()</td></tr> <tr class="separator:ad452b3b0f7703927ce1f3befd8f7512f"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <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> </div><h2 class="groupheader">Constructor & Destructor Documentation</h2> <a id="a8c5de0e610bb50bac684f4707e23431c" name="a8c5de0e610bb50bac684f4707e23431c"></a> <h2 class="memtitle"><span class="permalink"><a href="#a8c5de0e610bb50bac684f4707e23431c">◆ </a></span>CircularBuffer()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">CircularBuffer::CircularBuffer </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Constructor </p> </div> </div> <h2 class="groupheader">Member Function Documentation</h2> <a id="a8e6fa8bf39215a466876a7a2daa1ce22" name="a8e6fa8bf39215a466876a7a2daa1ce22"></a> <h2 class="memtitle"><span class="permalink"><a href="#a8e6fa8bf39215a466876a7a2daa1ce22">◆ </a></span>addSampleToEnd()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">void CircularBuffer::addSampleToEnd </td> <td>(</td> <td class="paramtype">double </td> <td class="paramname"><em>v</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Add a new sample to the end of the buffer </p> </div> </div> <a id="a5b0c486a7eb76bae0d1a0d6e459d0f5a" name="a5b0c486a7eb76bae0d1a0d6e459d0f5a"></a> <h2 class="memtitle"><span class="permalink"><a href="#a5b0c486a7eb76bae0d1a0d6e459d0f5a">◆ </a></span>operator[]()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">double & CircularBuffer::operator[] </td> <td>(</td> <td class="paramtype">int </td> <td class="paramname"><em>i</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Access the ith element in the buffer </p> </div> </div> <a id="a09d74c64e5e9e0ee13c84663ba9523ea" name="a09d74c64e5e9e0ee13c84663ba9523ea"></a> <h2 class="memtitle"><span class="permalink"><a href="#a09d74c64e5e9e0ee13c84663ba9523ea">◆ </a></span>resize()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">void CircularBuffer::resize </td> <td>(</td> <td class="paramtype">int </td> <td class="paramname"><em>size</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Resize the buffer </p> </div> </div> <a id="ad452b3b0f7703927ce1f3befd8f7512f" name="ad452b3b0f7703927ce1f3befd8f7512f"></a> <h2 class="memtitle"><span class="permalink"><a href="#ad452b3b0f7703927ce1f3befd8f7512f">◆ </a></span>size()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">int CircularBuffer::size </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Returns the size of the buffer </p> </div> </div> <hr/>The documentation for this class was generated from the following file:<ul> <li>src/<a class="el" href="_circular_buffer_8h_source.html">CircularBuffer.h</a></li> </ul> </div><!-- contents --> <!-- start footer part --> <hr class="footer"/><address class="footer"><small> Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.7 </small></address> </body> </html>