<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>CanFestival: drivers/win32/timers_win32.cpp File Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.1 -->
<div class="tabs">
<ul>
<li><a href="main.html"><span>Main Page</span></a></li>
<li><a href="annotated.html"><span>Data Structures</span></a></li>
<li id="current"><a href="files.html"><span>Files</span></a></li>
<li><a href="dirs.html"><span>Directories</span></a></li>
</ul></div>
<div class="tabs">
<ul>
<li><a href="files.html"><span>File List</span></a></li>
<li><a href="globals.html"><span>Globals</span></a></li>
</ul></div>
<div class="nav">
<a class="el" href="dir_d58fb241e647de6212c31ecccf9cbace.html">drivers</a> » <a class="el" href="dir_e67188945a11754d0713bc6f89228027.html">win32</a></div>
<h1>timers_win32.cpp File Reference</h1><code>#include <windows.h></code><br>
<code>#include <stdlib.h></code><br>
<code>#include "<a class="el" href="win32_2applicfg_8h-source.html">applicfg.h</a>"</code><br>
<code>#include "<a class="el" href="can__driver_8h-source.html">can_driver.h</a>"</code><br>
<code>#include "<a class="el" href="timer_8h-source.html">timer.h</a>"</code><br>
<code>#include "<a class="el" href="timers__driver_8h-source.html">timers_driver.h</a>"</code><br>
<p>
Include dependency graph for timers_win32.cpp:<p><center><img src="timers__win32_8cpp__incl.png" border="0" usemap="#drivers/win32/timers_win32.cpp_map" alt=""></center>
<map name="drivers/win32/timers_win32.cpp_map">
<area href="win32_2applicfg_8h.html" shape="rect" coords="615,133,703,157" alt="">
<area href="can__driver_8h.html" shape="rect" coords="462,157,566,181" alt="">
<area href="timer_8h.html" shape="rect" coords="479,209,548,233" alt="">
<area href="timers__driver_8h.html" shape="rect" coords="291,259,414,283" alt="">
</map>
<p>
<a href="timers__win32_8cpp-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Data Structures</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classccritical__section.html">ccritical_section</a></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classclass__timers.html">class_timers</a></td></tr>
<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="timers__win32_8cpp.html#d7fee43b8a44cf8b7036853593044037">EnterMutex</a> (void)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="timers__win32_8cpp.html#73d9a4eb941fb20cf6b597840510394b">LeaveMutex</a> (void)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="timers__win32_8cpp.html#998a8436651e6990d3922ebdc3eebf8b">CreateReceiveTask</a> (<a class="el" href="win32_2applicfg_8h.html#712c7b28987b12b8d400df19c92d0f5e">CAN_HANDLE</a> fd0, TASK_HANDLE *Thread, void *ReceiveLoopPtr)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="timers__win32_8cpp.html#4b2486891ee01e06e2deead4cf963727">WaitReceiveTaskEnd</a> (TASK_HANDLE Thread)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="timers__win32_8cpp.html#c9e1731843825eb55e7a94894e6a8ec5">StartTimerLoop</a> (<a class="el" href="timer_8h.html#f7d102e060339d3730ceae5fea03691b">TimerCallback_t</a> init_callback)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="timers__win32_8cpp.html#8758484f3cebb0cd44bb247c3f23d5e3">StopTimerLoop</a> (void)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="timers__win32_8cpp.html#b8d05dee70f04b5c5190ab00e84da106">setTimer</a> (TIMEVAL value)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">TIMEVAL </td><td class="memItemRight" valign="bottom"><a class="el" href="timers__win32_8cpp.html#4dccc204d52176bd547ab34d6858f5ba">getElapsedTime</a> (void)</td></tr>
</table>
<hr><h2>Function Documentation</h2>
<a class="anchor" name="998a8436651e6990d3922ebdc3eebf8b"></a><!-- doxytag: member="timers_win32.cpp::CreateReceiveTask" ref="998a8436651e6990d3922ebdc3eebf8b" args="(CAN_HANDLE fd0, TASK_HANDLE *Thread, void *ReceiveLoopPtr)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void CreateReceiveTask </td>
<td>(</td>
<td class="paramtype"><a class="el" href="win32_2applicfg_8h.html#712c7b28987b12b8d400df19c92d0f5e">CAN_HANDLE</a> </td>
<td class="paramname"> <em>fd0</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">TASK_HANDLE * </td>
<td class="paramname"> <em>Thread</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void * </td>
<td class="paramname"> <em>ReceiveLoopPtr</em></td><td> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<p>
Definition at line <a class="el" href="timers__win32_8cpp-source.html#l00078">78</a> of file <a class="el" href="timers__win32_8cpp-source.html">timers_win32.cpp</a>.
</div>
</div><p>
<a class="anchor" name="d7fee43b8a44cf8b7036853593044037"></a><!-- doxytag: member="timers_win32.cpp::EnterMutex" ref="d7fee43b8a44cf8b7036853593044037" args="(void)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void EnterMutex </td>
<td>(</td>
<td class="paramtype">void </td>
<td class="paramname"> </td>
<td> ) </td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<p>
Definition at line <a class="el" href="timers__win32_8cpp-source.html#l00064">64</a> of file <a class="el" href="timers__win32_8cpp-source.html">timers_win32.cpp</a>.
<p>
References <a class="el" href="timers__unix_8c-source.html#l00010">CanFestival_mutex</a>, and <a class="el" href="timers__win32_8cpp-source.html#l00049">ccritical_section::enter()</a>.
<p>
Here is the call graph for this function:<p><center><img src="timers__win32_8cpp_d7fee43b8a44cf8b7036853593044037_cgraph.png" border="0" usemap="#timers__win32_8cpp_d7fee43b8a44cf8b7036853593044037_cgraph_map" alt=""></center>
<map name="timers__win32_8cpp_d7fee43b8a44cf8b7036853593044037_cgraph_map">
<area href="classccritical__section.html#94af8f7f73229ecc82a303be7e2b0ad0" shape="rect" coords="156,6,329,30" alt="">
</map>
</div>
</div><p>
<a class="anchor" name="4dccc204d52176bd547ab34d6858f5ba"></a><!-- doxytag: member="timers_win32.cpp::getElapsedTime" ref="4dccc204d52176bd547ab34d6858f5ba" args="(void)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">TIMEVAL getElapsedTime </td>
<td>(</td>
<td class="paramtype">void </td>
<td class="paramname"> </td>
<td> ) </td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<p>
Definition at line <a class="el" href="timers__win32_8cpp-source.html#l00238">238</a> of file <a class="el" href="timers__win32_8cpp-source.html">timers_win32.cpp</a>.
<p>
References <a class="el" href="timers__win32_8cpp-source.html#l00210">class_timers::get_elapsed_time()</a>, <a class="el" href="portsaccess_8h-source.html#l00046">IO_PORTS_16</a>, and <a class="el" href="ports__def_8h-source.html#l00119">TC4H</a>.
<p>
Here is the call graph for this function:<p><center><img src="timers__win32_8cpp_4dccc204d52176bd547ab34d6858f5ba_cgraph.png" border="0" usemap="#timers__win32_8cpp_4dccc204d52176bd547ab34d6858f5ba_cgraph_map" alt=""></center>
<map name="timers__win32_8cpp_4dccc204d52176bd547ab34d6858f5ba_cgraph_map">
<area href="classclass__timers.html#0fa5bd5d1d4012bf9eef3ffabe990dfb" shape="rect" coords="186,6,418,30" alt="">
<area href="classclass__timers.html#e4fe19b5b56b72ce2601d74f6519bd0b" shape="rect" coords="467,6,646,30" alt="">
</map>
</div>
</div><p>
<a class="anchor" name="73d9a4eb941fb20cf6b597840510394b"></a><!-- doxytag: member="timers_win32.cpp::LeaveMutex" ref="73d9a4eb941fb20cf6b597840510394b" args="(void)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void LeaveMutex </td>
<td>(</td>
<td class="paramtype">void </td>
<td class="paramname"> </td>
<td> ) </td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<p>
Definition at line <a class="el" href="timers__win32_8cpp-source.html#l00069">69</a> of file <a class="el" href="timers__win32_8cpp-source.html">timers_win32.cpp</a>.
<p>
References <a class="el" href="timers__unix_8c-source.html#l00010">CanFestival_mutex</a>, and <a class="el" href="timers__win32_8cpp-source.html#l00053">ccritical_section::leave()</a>.
<p>
Here is the call graph for this function:<p><center><img src="timers__win32_8cpp_73d9a4eb941fb20cf6b597840510394b_cgraph.png" border="0" usemap="#timers__win32_8cpp_73d9a4eb941fb20cf6b597840510394b_cgraph_map" alt=""></center>
<map name="timers__win32_8cpp_73d9a4eb941fb20cf6b597840510394b_cgraph_map">
<area href="classccritical__section.html#e1f542404005a2f0696ced6c52a8ce3b" shape="rect" coords="158,6,334,30" alt="">
</map>
</div>
</div><p>
<a class="anchor" name="b8d05dee70f04b5c5190ab00e84da106"></a><!-- doxytag: member="timers_win32.cpp::setTimer" ref="b8d05dee70f04b5c5190ab00e84da106" args="(TIMEVAL value)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void setTimer </td>
<td>(</td>
<td class="paramtype">TIMEVAL </td>
<td class="paramname"> <em>value</em> </td>
<td> ) </td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<p>
Definition at line <a class="el" href="timers__win32_8cpp-source.html#l00233">233</a> of file <a class="el" href="timers__win32_8cpp-source.html">timers_win32.cpp</a>.
<p>
References <a class="el" href="timers__unix_8c-source.html#l00082">maxval</a>, <a class="el" href="timers__win32_8cpp-source.html#l00204">class_timers::set_timer()</a>, and <a class="el" href="timers__unix_8c-source.html#l00018">timer</a>.
<p>
Here is the call graph for this function:<p><center><img src="timers__win32_8cpp_b8d05dee70f04b5c5190ab00e84da106_cgraph.png" border="0" usemap="#timers__win32_8cpp_b8d05dee70f04b5c5190ab00e84da106_cgraph_map" alt=""></center>
<map name="timers__win32_8cpp_b8d05dee70f04b5c5190ab00e84da106_cgraph_map">
<area href="classclass__timers.html#a27df6346a38fb25acc394cb7998a3f8" shape="rect" coords="138,6,314,30" alt="">
<area href="classclass__timers.html#e4fe19b5b56b72ce2601d74f6519bd0b" shape="rect" coords="363,6,542,30" alt="">
</map>
</div>
</div><p>
<a class="anchor" name="c9e1731843825eb55e7a94894e6a8ec5"></a><!-- doxytag: member="timers_win32.cpp::StartTimerLoop" ref="c9e1731843825eb55e7a94894e6a8ec5" args="(TimerCallback_t init_callback)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void StartTimerLoop </td>
<td>(</td>
<td class="paramtype"><a class="el" href="timer_8h.html#f7d102e060339d3730ceae5fea03691b">TimerCallback_t</a> </td>
<td class="paramname"> <em>init_callback</em> </td>
<td> ) </td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<p>
Definition at line <a class="el" href="timers__win32_8cpp-source.html#l00219">219</a> of file <a class="el" href="timers__win32_8cpp-source.html">timers_win32.cpp</a>.
<p>
References <a class="el" href="timers__unix_8c-source.html#l00020">EnterMutex()</a>, <a class="el" href="canOpenDriver_8c-source.html#l00079">initTimer()</a>, <a class="el" href="timers__unix_8c-source.html#l00025">LeaveMutex()</a>, <a class="el" href="timers__win32_8cpp-source.html#l00184">class_timers::resume_timer_thread()</a>, <a class="el" href="timer_8c-source.html#l00057">SetAlarm()</a>, <a class="el" href="timers__win32_8cpp-source.html#l00173">class_timers::start_timer_thread()</a>, and <a class="el" href="hcs12_2applicfg_8h-source.html#l00150">TIMEVAL</a>.
<p>
Here is the call graph for this function:<p><center><img src="timers__win32_8cpp_c9e1731843825eb55e7a94894e6a8ec5_cgraph.png" border="0" usemap="#timers__win32_8cpp_c9e1731843825eb55e7a94894e6a8ec5_cgraph_map" alt=""></center>
<map name="timers__win32_8cpp_c9e1731843825eb55e7a94894e6a8ec5_cgraph_map">
<area href="timers__unix_8c.html#d7fee43b8a44cf8b7036853593044037" shape="rect" coords="848,27,947,51" alt="">
<area href="canOpenDriver_8c.html#02922529b60419a94afe8f369dda070b" shape="rect" coords="267,224,349,248" alt="">
<area href="timers__unix_8c.html#73d9a4eb941fb20cf6b597840510394b" shape="rect" coords="845,173,949,197" alt="">
<area href="classclass__timers.html#e0066fac671c6adb997d6c075487af89" shape="rect" coords="179,272,437,296" alt="">
<area href="timer_8c.html#11c2616d78f06ed9144ef662f757b128" shape="rect" coords="267,320,349,344" alt="">
<area href="classclass__timers.html#d857a63670354f41759f68d4ea29a0f5" shape="rect" coords="189,124,427,148" alt="">
<area href="classclass__timers.html#e4fe19b5b56b72ce2601d74f6519bd0b" shape="rect" coords="808,124,987,148" alt="">
<area href="classclass__timers.html#a68dd5b6225b3519b4bc2a0280683c87" shape="rect" coords="487,75,759,99" alt="">
<area href="timer_8c.html#fa75192a3238525618f8cb83004930cc" shape="rect" coords="840,75,955,99" alt="">
</map>
</div>
</div><p>
<a class="anchor" name="8758484f3cebb0cd44bb247c3f23d5e3"></a><!-- doxytag: member="timers_win32.cpp::StopTimerLoop" ref="8758484f3cebb0cd44bb247c3f23d5e3" args="(void)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void StopTimerLoop </td>
<td>(</td>
<td class="paramtype">void </td>
<td class="paramname"> </td>
<td> ) </td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<p>
Definition at line <a class="el" href="timers__win32_8cpp-source.html#l00228">228</a> of file <a class="el" href="timers__win32_8cpp-source.html">timers_win32.cpp</a>.
<p>
References <a class="el" href="timers__unix_8c-source.html#l00020">EnterMutex()</a>, <a class="el" href="timers__unix_8c-source.html#l00025">LeaveMutex()</a>, <a class="el" href="timers__win32_8cpp-source.html#l00193">class_timers::stop_timer_thread()</a>, and <a class="el" href="timers__unix_8c-source.html#l00018">timer</a>.
<p>
Here is the call graph for this function:<p><center><img src="timers__win32_8cpp_8758484f3cebb0cd44bb247c3f23d5e3_cgraph.png" border="0" usemap="#timers__win32_8cpp_8758484f3cebb0cd44bb247c3f23d5e3_cgraph_map" alt=""></center>
<map name="timers__win32_8cpp_8758484f3cebb0cd44bb247c3f23d5e3_cgraph_map">
<area href="timers__unix_8c.html#d7fee43b8a44cf8b7036853593044037" shape="rect" coords="248,6,347,30" alt="">
<area href="timers__unix_8c.html#73d9a4eb941fb20cf6b597840510394b" shape="rect" coords="245,54,349,78" alt="">
<area href="classclass__timers.html#a78d9f5ab159ec6b11b4dc4c8f351697" shape="rect" coords="179,102,416,126" alt="">
</map>
</div>
</div><p>
<a class="anchor" name="4b2486891ee01e06e2deead4cf963727"></a><!-- doxytag: member="timers_win32.cpp::WaitReceiveTaskEnd" ref="4b2486891ee01e06e2deead4cf963727" args="(TASK_HANDLE Thread)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void WaitReceiveTaskEnd </td>
<td>(</td>
<td class="paramtype">TASK_HANDLE </td>
<td class="paramname"> <em>Thread</em> </td>
<td> ) </td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<p>
Definition at line <a class="el" href="timers__win32_8cpp-source.html#l00084">84</a> of file <a class="el" href="timers__win32_8cpp-source.html">timers_win32.cpp</a>.
</div>
</div><p>
<hr size="1"><address style="align: right;"><small>Generated on Fri Jun 8 08:51:45 2007 for CanFestival by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.1 </small></address>
</body>
</html>