blob: 27ad23537b4830b1060a8bf86062e68c0ad9a511 [file] [log] [blame] [edit]
<!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">
<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.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>32blit API: blit::Timer Struct 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="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">32blit API
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'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:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('structblit_1_1Timer.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- 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="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="structblit_1_1Timer-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">blit::Timer Struct Reference</div> </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:aded26d1a630bc5b96c393e6677508094"><td class="memItemLeft" align="right" valign="top"><a id="aded26d1a630bc5b96c393e6677508094"></a>enum &#160;</td><td class="memItemRight" valign="bottom"><b>state</b> { <br />
&#160;&#160;<b>UNINITIALISED</b>
, <b>STOPPED</b>
, <b>RUNNING</b>
, <b>PAUSED</b>
, <br />
&#160;&#160;<b>FINISHED</b>
<br />
}</td></tr>
<tr class="separator:aded26d1a630bc5b96c393e6677508094"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a81a7443183dcf1d0bc2fef34cc819f73"><td class="memItemLeft" align="right" valign="top"><a id="a81a7443183dcf1d0bc2fef34cc819f73"></a>
using&#160;</td><td class="memItemRight" valign="bottom"><b>TimerCallback</b> = std::function&lt; void(<a class="el" href="structblit_1_1Timer.html">Timer</a> &amp;timer)&gt;</td></tr>
<tr class="separator:a81a7443183dcf1d0bc2fef34cc819f73"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:afef8e53a4aaa0be11e6acd9286ac0856"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structblit_1_1Timer.html#afef8e53a4aaa0be11e6acd9286ac0856">init</a> (TimerCallback callback, uint32_t duration, int32_t loops=-1)</td></tr>
<tr class="separator:afef8e53a4aaa0be11e6acd9286ac0856"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2f86dbc0263ba0281a4fe19588169749"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structblit_1_1Timer.html#a2f86dbc0263ba0281a4fe19588169749">start</a> ()</td></tr>
<tr class="separator:a2f86dbc0263ba0281a4fe19588169749"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aff99d19fafabe9afe98ed4694e39a9d3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structblit_1_1Timer.html#aff99d19fafabe9afe98ed4694e39a9d3">pause</a> ()</td></tr>
<tr class="separator:aff99d19fafabe9afe98ed4694e39a9d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a581d2e2926103c2a0594b2ed07a73e58"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structblit_1_1Timer.html#a581d2e2926103c2a0594b2ed07a73e58">stop</a> ()</td></tr>
<tr class="separator:a581d2e2926103c2a0594b2ed07a73e58"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3b0c4a078d125fbd065991fd63f4bde6"><td class="memItemLeft" align="right" valign="top"><a id="a3b0c4a078d125fbd065991fd63f4bde6"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>is_running</b> ()</td></tr>
<tr class="separator:a3b0c4a078d125fbd065991fd63f4bde6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aefb5be598d0e32c3cc68fb6b53d9e0de"><td class="memItemLeft" align="right" valign="top"><a id="aefb5be598d0e32c3cc68fb6b53d9e0de"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>is_paused</b> ()</td></tr>
<tr class="separator:aefb5be598d0e32c3cc68fb6b53d9e0de"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaf39d7fd4617922b1e927643c8ed8e44"><td class="memItemLeft" align="right" valign="top"><a id="aaf39d7fd4617922b1e927643c8ed8e44"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>is_stopped</b> ()</td></tr>
<tr class="separator:aaf39d7fd4617922b1e927643c8ed8e44"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adde89e5b775a3275f9e8c6b78cfdc6aa"><td class="memItemLeft" align="right" valign="top"><a id="adde89e5b775a3275f9e8c6b78cfdc6aa"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>is_finished</b> ()</td></tr>
<tr class="separator:adde89e5b775a3275f9e8c6b78cfdc6aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa24f498bf2079862eaf5af1c3d690d0d"><td class="memItemLeft" align="right" valign="top"><a id="aa24f498bf2079862eaf5af1c3d690d0d"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>Timer</b> (TimerCallback callback, uint32_t duration, int32_t loops=-1)</td></tr>
<tr class="separator:aa24f498bf2079862eaf5af1c3d690d0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:a4f290f418da0e8862b09d096cf4b841b"><td class="memItemLeft" align="right" valign="top"><a id="a4f290f418da0e8862b09d096cf4b841b"></a>
TimerCallback&#160;</td><td class="memItemRight" valign="bottom"><b>callback</b> = nullptr</td></tr>
<tr class="separator:a4f290f418da0e8862b09d096cf4b841b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac1b49ea1da05aeadafed013842c4b70a"><td class="memItemLeft" align="right" valign="top"><a id="ac1b49ea1da05aeadafed013842c4b70a"></a>
uint32_t&#160;</td><td class="memItemRight" valign="bottom"><b>duration</b> = 0</td></tr>
<tr class="separator:ac1b49ea1da05aeadafed013842c4b70a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acf6476d7e862e380104ee3d1b9ff5ed6"><td class="memItemLeft" align="right" valign="top"><a id="acf6476d7e862e380104ee3d1b9ff5ed6"></a>
uint32_t&#160;</td><td class="memItemRight" valign="bottom"><b>started</b> = 0</td></tr>
<tr class="separator:acf6476d7e862e380104ee3d1b9ff5ed6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acd6a7aefddebb5320439ce440f59c21e"><td class="memItemLeft" align="right" valign="top"><a id="acd6a7aefddebb5320439ce440f59c21e"></a>
uint32_t&#160;</td><td class="memItemRight" valign="bottom"><b>paused</b> = 0</td></tr>
<tr class="separator:acd6a7aefddebb5320439ce440f59c21e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8071d426c2378316f0682818d5c21569"><td class="memItemLeft" align="right" valign="top"><a id="a8071d426c2378316f0682818d5c21569"></a>
int32_t&#160;</td><td class="memItemRight" valign="bottom"><b>loops</b> = -1</td></tr>
<tr class="separator:a8071d426c2378316f0682818d5c21569"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aceade62473e9f3fe8c5dc2b1d9b9fb88"><td class="memItemLeft" align="right" valign="top"><a id="aceade62473e9f3fe8c5dc2b1d9b9fb88"></a>
int32_t&#160;</td><td class="memItemRight" valign="bottom"><b>loop_count</b> = 0</td></tr>
<tr class="separator:aceade62473e9f3fe8c5dc2b1d9b9fb88"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a716a93a55fe73893515d77c3de9da2f5"><td class="memItemLeft" align="right" valign="top"><a id="a716a93a55fe73893515d77c3de9da2f5"></a>
uint8_t&#160;</td><td class="memItemRight" valign="bottom"><b>state</b> = UNINITIALISED</td></tr>
<tr class="separator:a716a93a55fe73893515d77c3de9da2f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="afef8e53a4aaa0be11e6acd9286ac0856"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afef8e53a4aaa0be11e6acd9286ac0856">&#9670;&nbsp;</a></span>init()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void blit::Timer::init </td>
<td>(</td>
<td class="paramtype">TimerCallback&#160;</td>
<td class="paramname"><em>callback</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>duration</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int32_t&#160;</td>
<td class="paramname"><em>loops</em> = <code>-1</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Initialize the timer.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">callback</td><td>Callback function to trigger when timer has elapsed. </td></tr>
<tr><td class="paramname">duration</td><td>Duration of the timer in milliseconds. </td></tr>
<tr><td class="paramname">loops</td><td>Number of times the timer should repeat, -1 = forever. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="aff99d19fafabe9afe98ed4694e39a9d3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aff99d19fafabe9afe98ed4694e39a9d3">&#9670;&nbsp;</a></span>pause()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void blit::Timer::pause </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Pause the timer. </p>
</div>
</div>
<a id="a2f86dbc0263ba0281a4fe19588169749"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2f86dbc0263ba0281a4fe19588169749">&#9670;&nbsp;</a></span>start()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void blit::Timer::start </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Start the timer. </p>
</div>
</div>
<a id="a581d2e2926103c2a0594b2ed07a73e58"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a581d2e2926103c2a0594b2ed07a73e58">&#9670;&nbsp;</a></span>stop()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void blit::Timer::stop </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Stop the running timer. </p>
</div>
</div>
<hr/>The documentation for this struct was generated from the following files:<ul>
<li>engine/<a class="el" href="timer_8hpp_source.html">timer.hpp</a></li>
<li>engine/<a class="el" href="timer_8cpp.html">timer.cpp</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespaceblit.html">blit</a></li><li class="navelem"><a class="el" href="structblit_1_1Timer.html">Timer</a></li>
<li class="footer">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.1 </li>
</ul>
</div>
</body>
</html>