1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://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<title>SDL_gfx: I:/Sources/sdlgfx/SDL_framerate.c File Reference</title> 7 8<link href="tabs.css" rel="stylesheet" type="text/css"/> 9<link href="doxygen.css" rel="stylesheet" type="text/css" /> 10 11 12 13</head> 14<body> 15<div id="top"><!-- do not remove this div! --> 16 17 18<div id="titlearea"> 19<table cellspacing="0" cellpadding="0"> 20 <tbody> 21 <tr style="height: 56px;"> 22 23 24 <td style="padding-left: 0.5em;"> 25 <div id="projectname">SDL_gfx 26  <span id="projectnumber">2.0.25</span> 27 </div> 28 29 </td> 30 31 32 33 </tr> 34 </tbody> 35</table> 36</div> 37 38<!-- Generated by Doxygen 1.8.0 --> 39 <div id="navrow1" class="tabs"> 40 <ul class="tablist"> 41 <li><a href="index.html"><span>Main Page</span></a></li> 42 <li><a href="annotated.html"><span>Data Structures</span></a></li> 43 <li class="current"><a href="files.html"><span>Files</span></a></li> 44 </ul> 45 </div> 46 <div id="navrow2" class="tabs2"> 47 <ul class="tablist"> 48 <li><a href="files.html"><span>File List</span></a></li> 49 <li><a href="globals.html"><span>Globals</span></a></li> 50 </ul> 51 </div> 52</div> 53<div class="header"> 54 <div class="summary"> 55<a href="#func-members">Functions</a> </div> 56 <div class="headertitle"> 57<div class="title">I:/Sources/sdlgfx/SDL_framerate.c File Reference</div> </div> 58</div><!--header--> 59<div class="contents"> 60<div class="textblock"><code>#include "<a class="el" href="_s_d_l__framerate_8h_source.html">SDL_framerate.h</a>"</code><br/> 61</div> 62<p><a href="_s_d_l__framerate_8c_source.html">Go to the source code of this file.</a></p> 63<table class="memberdecls"> 64<tr><td colspan="2"><h2><a name="func-members"></a> 65Functions</h2></td></tr> 66<tr class="memitem:a3bed31ab61648f7d69c8f47c90161cfe"><td class="memItemLeft" align="right" valign="top">Uint32 </td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__framerate_8c.html#a3bed31ab61648f7d69c8f47c90161cfe">_getTicks</a> ()</td></tr> 67<tr class="memdesc:a3bed31ab61648f7d69c8f47c90161cfe"><td class="mdescLeft"> </td><td class="mdescRight">Internal wrapper to SDL_GetTicks that ensures a non-zero return value. <a href="#a3bed31ab61648f7d69c8f47c90161cfe"></a><br/></td></tr> 68<tr class="memitem:a444ebaaaa6b1ceeafa921562bdab1a44"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__framerate_8c.html#a444ebaaaa6b1ceeafa921562bdab1a44">SDL_initFramerate</a> (<a class="el" href="struct_f_p_smanager.html">FPSmanager</a> *manager)</td></tr> 69<tr class="memdesc:a444ebaaaa6b1ceeafa921562bdab1a44"><td class="mdescLeft"> </td><td class="mdescRight">Initialize the framerate manager. <a href="#a444ebaaaa6b1ceeafa921562bdab1a44"></a><br/></td></tr> 70<tr class="memitem:afad4b503cf9719daced45fa4d9653d72"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__framerate_8c.html#afad4b503cf9719daced45fa4d9653d72">SDL_setFramerate</a> (<a class="el" href="struct_f_p_smanager.html">FPSmanager</a> *manager, Uint32 rate)</td></tr> 71<tr class="memdesc:afad4b503cf9719daced45fa4d9653d72"><td class="mdescLeft"> </td><td class="mdescRight">Set the framerate in Hz. <a href="#afad4b503cf9719daced45fa4d9653d72"></a><br/></td></tr> 72<tr class="memitem:a575bb511d6f817ad846a788cbd08ae91"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__framerate_8c.html#a575bb511d6f817ad846a788cbd08ae91">SDL_getFramerate</a> (<a class="el" href="struct_f_p_smanager.html">FPSmanager</a> *manager)</td></tr> 73<tr class="memdesc:a575bb511d6f817ad846a788cbd08ae91"><td class="mdescLeft"> </td><td class="mdescRight">Return the current target framerate in Hz. <a href="#a575bb511d6f817ad846a788cbd08ae91"></a><br/></td></tr> 74<tr class="memitem:a96b13e26f8436222e866904a592a6eec"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__framerate_8c.html#a96b13e26f8436222e866904a592a6eec">SDL_getFramecount</a> (<a class="el" href="struct_f_p_smanager.html">FPSmanager</a> *manager)</td></tr> 75<tr class="memdesc:a96b13e26f8436222e866904a592a6eec"><td class="mdescLeft"> </td><td class="mdescRight">Return the current framecount. <a href="#a96b13e26f8436222e866904a592a6eec"></a><br/></td></tr> 76<tr class="memitem:afce13fa3dd37130deb4975d8b230c3ba"><td class="memItemLeft" align="right" valign="top">Uint32 </td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__framerate_8c.html#afce13fa3dd37130deb4975d8b230c3ba">SDL_framerateDelay</a> (<a class="el" href="struct_f_p_smanager.html">FPSmanager</a> *manager)</td></tr> 77<tr class="memdesc:afce13fa3dd37130deb4975d8b230c3ba"><td class="mdescLeft"> </td><td class="mdescRight">Delay execution to maintain a constant framerate and calculate fps. <a href="#afce13fa3dd37130deb4975d8b230c3ba"></a><br/></td></tr> 78</table> 79<hr/><h2>Function Documentation</h2> 80<a class="anchor" id="a3bed31ab61648f7d69c8f47c90161cfe"></a> 81<div class="memitem"> 82<div class="memproto"> 83 <table class="memname"> 84 <tr> 85 <td class="memname">Uint32 <a class="el" href="_s_d_l__framerate_8c.html#a3bed31ab61648f7d69c8f47c90161cfe">_getTicks</a> </td> 86 <td>(</td> 87 <td class="paramname"></td><td>)</td> 88 <td></td> 89 </tr> 90 </table> 91</div> 92<div class="memdoc"> 93 94<p>Internal wrapper to SDL_GetTicks that ensures a non-zero return value. </p> 95<dl class="section return"><dt>Returns:</dt><dd>The tick count. </dd></dl> 96 97<p>Definition at line <a class="el" href="_s_d_l__framerate_8c_source.html#l00037">37</a> of file <a class="el" href="_s_d_l__framerate_8c_source.html">SDL_framerate.c</a>.</p> 98 99</div> 100</div> 101<a class="anchor" id="afce13fa3dd37130deb4975d8b230c3ba"></a> 102<div class="memitem"> 103<div class="memproto"> 104 <table class="memname"> 105 <tr> 106 <td class="memname">Uint32 <a class="el" href="_s_d_l__framerate_8h.html#a2c452933d7376dbb0083304b760ed63b">SDL_framerateDelay</a> </td> 107 <td>(</td> 108 <td class="paramtype"><a class="el" href="struct_f_p_smanager.html">FPSmanager</a> * </td> 109 <td class="paramname"><em>manager</em></td><td>)</td> 110 <td></td> 111 </tr> 112 </table> 113</div> 114<div class="memdoc"> 115 116<p>Delay execution to maintain a constant framerate and calculate fps. </p> 117<p>Generate a delay to accomodate currently set framerate. Call once in the graphics/rendering loop. If the computer cannot keep up with the rate (i.e. drawing too slow), the delay is zero and the delay interpolation is reset.</p> 118<dl class="params"><dt><b>Parameters:</b></dt><dd> 119 <table class="params"> 120 <tr><td class="paramname">manager</td><td>Pointer to the framerate manager.</td></tr> 121 </table> 122 </dd> 123</dl> 124<dl class="section return"><dt>Returns:</dt><dd>The time that passed since the last call to the function in ms. May return 0. </dd></dl> 125 126<p>Definition at line <a class="el" href="_s_d_l__framerate_8c_source.html#l00146">146</a> of file <a class="el" href="_s_d_l__framerate_8c_source.html">SDL_framerate.c</a>.</p> 127 128</div> 129</div> 130<a class="anchor" id="a96b13e26f8436222e866904a592a6eec"></a> 131<div class="memitem"> 132<div class="memproto"> 133 <table class="memname"> 134 <tr> 135 <td class="memname">int <a class="el" href="_s_d_l__framerate_8h.html#a3f3b7da73f3d92ff82b069b6108aa7ad">SDL_getFramecount</a> </td> 136 <td>(</td> 137 <td class="paramtype"><a class="el" href="struct_f_p_smanager.html">FPSmanager</a> * </td> 138 <td class="paramname"><em>manager</em></td><td>)</td> 139 <td></td> 140 </tr> 141 </table> 142</div> 143<div class="memdoc"> 144 145<p>Return the current framecount. </p> 146<p>Get the current framecount from the framerate manager. A frame is counted each time SDL_framerateDelay is called.</p> 147<dl class="params"><dt><b>Parameters:</b></dt><dd> 148 <table class="params"> 149 <tr><td class="paramname">manager</td><td>Pointer to the framerate manager.</td></tr> 150 </table> 151 </dd> 152</dl> 153<dl class="section return"><dt>Returns:</dt><dd>Current frame count or -1 for error. </dd></dl> 154 155<p>Definition at line <a class="el" href="_s_d_l__framerate_8c_source.html#l00126">126</a> of file <a class="el" href="_s_d_l__framerate_8c_source.html">SDL_framerate.c</a>.</p> 156 157</div> 158</div> 159<a class="anchor" id="a575bb511d6f817ad846a788cbd08ae91"></a> 160<div class="memitem"> 161<div class="memproto"> 162 <table class="memname"> 163 <tr> 164 <td class="memname">int <a class="el" href="_s_d_l__framerate_8h.html#adeb2ddd02412527aad226ba453a21999">SDL_getFramerate</a> </td> 165 <td>(</td> 166 <td class="paramtype"><a class="el" href="struct_f_p_smanager.html">FPSmanager</a> * </td> 167 <td class="paramname"><em>manager</em></td><td>)</td> 168 <td></td> 169 </tr> 170 </table> 171</div> 172<div class="memdoc"> 173 174<p>Return the current target framerate in Hz. </p> 175<p>Get the currently set framerate of the manager.</p> 176<dl class="params"><dt><b>Parameters:</b></dt><dd> 177 <table class="params"> 178 <tr><td class="paramname">manager</td><td>Pointer to the framerate manager.</td></tr> 179 </table> 180 </dd> 181</dl> 182<dl class="section return"><dt>Returns:</dt><dd>Current framerate in Hz or -1 for error. </dd></dl> 183 184<p>Definition at line <a class="el" href="_s_d_l__framerate_8c_source.html#l00107">107</a> of file <a class="el" href="_s_d_l__framerate_8c_source.html">SDL_framerate.c</a>.</p> 185 186</div> 187</div> 188<a class="anchor" id="a444ebaaaa6b1ceeafa921562bdab1a44"></a> 189<div class="memitem"> 190<div class="memproto"> 191 <table class="memname"> 192 <tr> 193 <td class="memname">void <a class="el" href="_s_d_l__framerate_8h.html#a3ca69231486837c809fdcbe5b0a10787">SDL_initFramerate</a> </td> 194 <td>(</td> 195 <td class="paramtype"><a class="el" href="struct_f_p_smanager.html">FPSmanager</a> * </td> 196 <td class="paramname"><em>manager</em></td><td>)</td> 197 <td></td> 198 </tr> 199 </table> 200</div> 201<div class="memdoc"> 202 203<p>Initialize the framerate manager. </p> 204<p>Initialize the framerate manager, set default framerate of 30Hz and reset delay interpolation.</p> 205<dl class="params"><dt><b>Parameters:</b></dt><dd> 206 <table class="params"> 207 <tr><td class="paramname">manager</td><td>Pointer to the framerate manager. </td></tr> 208 </table> 209 </dd> 210</dl> 211 212<p>Definition at line <a class="el" href="_s_d_l__framerate_8c_source.html#l00062">62</a> of file <a class="el" href="_s_d_l__framerate_8c_source.html">SDL_framerate.c</a>.</p> 213 214</div> 215</div> 216<a class="anchor" id="afad4b503cf9719daced45fa4d9653d72"></a> 217<div class="memitem"> 218<div class="memproto"> 219 <table class="memname"> 220 <tr> 221 <td class="memname">int <a class="el" href="_s_d_l__framerate_8h.html#a186ef8e6b1ee4ab36e05b162545fb0e4">SDL_setFramerate</a> </td> 222 <td>(</td> 223 <td class="paramtype"><a class="el" href="struct_f_p_smanager.html">FPSmanager</a> * </td> 224 <td class="paramname"><em>manager</em>, </td> 225 </tr> 226 <tr> 227 <td class="paramkey"></td> 228 <td></td> 229 <td class="paramtype">Uint32 </td> 230 <td class="paramname"><em>rate</em> </td> 231 </tr> 232 <tr> 233 <td></td> 234 <td>)</td> 235 <td></td><td></td> 236 </tr> 237 </table> 238</div> 239<div class="memdoc"> 240 241<p>Set the framerate in Hz. </p> 242<p>Sets a new framerate for the manager and reset delay interpolation. Rate values must be between FPS_LOWER_LIMIT and FPS_UPPER_LIMIT inclusive to be accepted.</p> 243<dl class="params"><dt><b>Parameters:</b></dt><dd> 244 <table class="params"> 245 <tr><td class="paramname">manager</td><td>Pointer to the framerate manager. </td></tr> 246 <tr><td class="paramname">rate</td><td>The new framerate in Hz (frames per second).</td></tr> 247 </table> 248 </dd> 249</dl> 250<dl class="section return"><dt>Returns:</dt><dd>0 for sucess and -1 for error. </dd></dl> 251 252<p>Definition at line <a class="el" href="_s_d_l__framerate_8c_source.html#l00086">86</a> of file <a class="el" href="_s_d_l__framerate_8c_source.html">SDL_framerate.c</a>.</p> 253 254</div> 255</div> 256</div><!-- contents --> 257 258 259<hr class="footer"/><address class="footer"><small> 260Generated by  <a href="http://www.doxygen.org/index.html"> 261<img class="footer" src="doxygen.png" alt="doxygen"/> 262</a> 1.8.0 263</small></address> 264 265</body> 266</html> 267