doc/doxygen/html/drivers__win32_8cpp.html
author etisserant
Fri, 01 Feb 2008 18:06:55 +0100
changeset 378 d2abf6c8c27b
parent 240 34654679f262
permissions -rw-r--r--
As requested long ago, added CoData* parameter to all this applications callback, let application designer use identical callback for multiple nodes, and reduce source code length.

Concerned callbacks :

initialisation
preOperational
operational
stopped
heartbeatError
post_sync
post_TPDO
post_SlaveBootup
storeODSubIndex
post_emcy
<!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/drivers_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&nbsp;Page</span></a></li>
    <li><a href="annotated.html"><span>Data&nbsp;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&nbsp;List</span></a></li>
    <li><a href="globals.html"><span>Globals</span></a></li>
  </ul></div>
<div class="nav">
<a class="el" href="dir_65dd258ff9b9ef4cd7bd0d22f5e58dba.html">drivers</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_b3944654cff8658babe25b47a3a522e3.html">win32</a></div>
<h1>drivers_win32.cpp File Reference</h1><code>#include &lt;windows.h&gt;</code><br>
<code>#include &quot;<a class="el" href="win32_2canfestival_8h-source.html">canfestival.h</a>&quot;</code><br>
<code>#include &quot;<a class="el" href="timer_8h-source.html">timer.h</a>&quot;</code><br>
<code>#include &quot;<a class="el" href="timers__driver_8h-source.html">timers_driver.h</a>&quot;</code><br>

<p>
Include dependency graph for drivers_win32.cpp:<p><center><img src="drivers__win32_8cpp__incl.png" border="0" usemap="#drivers/win32/drivers_win32.cpp_map" alt=""></center>
<map name="drivers/win32/drivers_win32.cpp_map">
<area href="win32_2canfestival_8h.html" shape="rect" coords="255,664,343,691" alt="">
<area href="timer_8h.html" shape="rect" coords="647,613,705,640" alt="">
<area href="timers__driver_8h.html" shape="rect" coords="495,765,596,792" alt="">
<area href="win32_2timerscfg_8h.html" shape="rect" coords="756,689,836,716" alt="">
<area href="can__driver_8h.html" shape="rect" coords="501,5,589,32" alt="">
<area href="data_8h.html" shape="rect" coords="392,360,445,387" alt="">
<area href="win32_2applicfg_8h.html" shape="rect" coords="759,208,833,235" alt="">
<area href="can_8h.html" shape="rect" coords="652,157,700,184" alt="">
<area href="def_8h.html" shape="rect" coords="652,436,700,463" alt="">
<area href="objdictdef_8h.html" shape="rect" coords="503,309,588,336" alt="">
<area href="objacces_8h.html" shape="rect" coords="507,411,584,437" alt="">
<area href="sdo_8h.html" shape="rect" coords="521,613,569,640" alt="">
<area href="pdo_8h.html" shape="rect" coords="520,208,571,235" alt="">
<area href="states_8h.html" shape="rect" coords="515,56,576,83" alt="">
<area href="lifegrd_8h.html" shape="rect" coords="512,107,579,133" alt="">
<area href="sync_8h.html" shape="rect" coords="517,360,573,387" alt="">
<area href="nmtMaster_8h.html" shape="rect" coords="501,512,589,539" alt="">
<area href="config_8h.html" shape="rect" coords="764,436,828,463" alt="">
</map>

<p>
<a href="drivers__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 &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdriver__procs.html">driver_procs</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structdriver__data.html">driver_data</a></td></tr>

<tr><td colspan="2"><br><h2>Defines</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="drivers__win32_8cpp.html#89cf6df671ff9d1386748dfd3efe3675">DLL_CALL</a>(funcname)&nbsp;&nbsp;&nbsp;(*_##funcname)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="drivers__win32_8cpp.html#7e34e187b01b3c6623af4ea0344ac92f">FCT_PTR_INIT</a>&nbsp;&nbsp;&nbsp;=NULL</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="drivers__win32_8cpp.html#47fbd32f85fe61059faf1f51612cb148">myTEXT</a>(str)&nbsp;&nbsp;&nbsp;str</td></tr>

<tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef UNS8(*)&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="drivers__win32_8cpp.html#f084e2643d0202ed5a81103ff6f0cdfe">CANRECEIVE_DRIVER_PROC</a> (void *inst, <a class="el" href="structMessage.html">Message</a> *m)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef UNS8(*)&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="drivers__win32_8cpp.html#c9224a2239420f92234b56962b019437">CANSEND_DRIVER_PROC</a> (void *inst, const <a class="el" href="structMessage.html">Message</a> *m)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef void *(*)&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="drivers__win32_8cpp.html#439a7bd1e4e394dc84ef67cd453991ad">CANOPEN_DRIVER_PROC</a> (<a class="el" href="structstruct__s__BOARD.html">s_BOARD</a> *board)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef int(*)&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="drivers__win32_8cpp.html#3e63ef23c9ac2e9e93ab7d0bfe857583">CANCLOSE_DRIVER_PROC</a> (void *inst)</td></tr>

<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="win32_2canfestival_8h.html#df21ab161742c7137cd3bcbe1f9145b7">LIB_HANDLE</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="drivers__win32_8cpp.html#0012a2aa42ef694bd275c6b5be5c89c7">LoadCanDriver</a> (char *driver_name)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">UNS8&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="drivers__win32_8cpp.html#3fcc13134ab40e532057273c24fadeb3">canReceive</a> (<a class="el" href="win32_2applicfg_8h.html#c5a917a8cacf5edd42ba6486c0c8a243">CAN_PORT</a> fd0, <a class="el" href="structMessage.html">Message</a> *m)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="drivers__win32_8cpp.html#12c44dbd367dfeac596805d68d661a4e">canReceiveLoop</a> (<a class="el" href="win32_2applicfg_8h.html#c5a917a8cacf5edd42ba6486c0c8a243">CAN_PORT</a> fd0)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">UNS8&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="drivers__win32_8cpp.html#fad02b18ec22a31f09ef7fe921d71881">canSend</a> (<a class="el" href="win32_2applicfg_8h.html#c5a917a8cacf5edd42ba6486c0c8a243">CAN_PORT</a> fd0, <a class="el" href="structMessage.html">Message</a> *m)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="win32_2applicfg_8h.html#324227f7b01d51ee83a883174769ac8f">CAN_HANDLE</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="drivers__win32_8cpp.html#a1b1a8dd15860b7dfb6efb5943988bd6">canOpen</a> (<a class="el" href="structstruct__s__BOARD.html">s_BOARD</a> *board, <a class="el" href="structstruct__CO__Data.html">CO_Data</a> *d)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="drivers__win32_8cpp.html#6d6b692e726dee0a5726e6d3db1b1693">canClose</a> (<a class="el" href="structstruct__CO__Data.html">CO_Data</a> *d)</td></tr>

<tr><td colspan="2"><br><h2>Variables</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classdriver__procs.html">driver_procs</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="drivers__win32_8cpp.html#b22fab20028dc0276f74c904a6585287">s_driver_procs</a></td></tr>

</table>
<hr><h2>Define Documentation</h2>
<a class="anchor" name="89cf6df671ff9d1386748dfd3efe3675"></a><!-- doxytag: member="drivers_win32.cpp::DLL_CALL" ref="89cf6df671ff9d1386748dfd3efe3675" args="(funcname)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define DLL_CALL          </td>
          <td>(</td>
          <td class="paramtype">funcname&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%">&nbsp;&nbsp;&nbsp;(*_##funcname)</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="drivers__win32_8cpp-source.html#l00032">32</a> of file <a class="el" href="drivers__win32_8cpp-source.html">drivers_win32.cpp</a>.
</div>
</div><p>
<a class="anchor" name="7e34e187b01b3c6623af4ea0344ac92f"></a><!-- doxytag: member="drivers_win32.cpp::FCT_PTR_INIT" ref="7e34e187b01b3c6623af4ea0344ac92f" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define FCT_PTR_INIT&nbsp;&nbsp;&nbsp;=NULL          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="drivers__win32_8cpp-source.html#l00033">33</a> of file <a class="el" href="drivers__win32_8cpp-source.html">drivers_win32.cpp</a>.
</div>
</div><p>
<a class="anchor" name="47fbd32f85fe61059faf1f51612cb148"></a><!-- doxytag: member="drivers_win32.cpp::myTEXT" ref="47fbd32f85fe61059faf1f51612cb148" args="(str)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define myTEXT          </td>
          <td>(</td>
          <td class="paramtype">str&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%">&nbsp;&nbsp;&nbsp;str</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="drivers__win32_8cpp-source.html#l00091">91</a> of file <a class="el" href="drivers__win32_8cpp-source.html">drivers_win32.cpp</a>.
<p>
Referenced by <a class="el" href="drivers__win32_8cpp-source.html#l00094">driver_procs::load_canfestival_driver()</a>.
</div>
</div><p>
<hr><h2>Typedef Documentation</h2>
<a class="anchor" name="3e63ef23c9ac2e9e93ab7d0bfe857583"></a><!-- doxytag: member="drivers_win32.cpp::CANCLOSE_DRIVER_PROC" ref="3e63ef23c9ac2e9e93ab7d0bfe857583" args="(void *inst)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef int(*) <a class="el" href="drivers__win32_8cpp.html#3e63ef23c9ac2e9e93ab7d0bfe857583">CANCLOSE_DRIVER_PROC</a>(void *inst)          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="drivers__win32_8cpp-source.html#l00043">43</a> of file <a class="el" href="drivers__win32_8cpp-source.html">drivers_win32.cpp</a>.
</div>
</div><p>
<a class="anchor" name="439a7bd1e4e394dc84ef67cd453991ad"></a><!-- doxytag: member="drivers_win32.cpp::CANOPEN_DRIVER_PROC" ref="439a7bd1e4e394dc84ef67cd453991ad" args="(s_BOARD *board)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void*(*) <a class="el" href="drivers__win32_8cpp.html#439a7bd1e4e394dc84ef67cd453991ad">CANOPEN_DRIVER_PROC</a>(<a class="el" href="structstruct__s__BOARD.html">s_BOARD</a> *board)          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="drivers__win32_8cpp-source.html#l00042">42</a> of file <a class="el" href="drivers__win32_8cpp-source.html">drivers_win32.cpp</a>.
</div>
</div><p>
<a class="anchor" name="f084e2643d0202ed5a81103ff6f0cdfe"></a><!-- doxytag: member="drivers_win32.cpp::CANRECEIVE_DRIVER_PROC" ref="f084e2643d0202ed5a81103ff6f0cdfe" args="(void *inst, Message *m)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef UNS8(*) <a class="el" href="drivers__win32_8cpp.html#f084e2643d0202ed5a81103ff6f0cdfe">CANRECEIVE_DRIVER_PROC</a>(void *inst, <a class="el" href="structMessage.html">Message</a> *m)          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="drivers__win32_8cpp-source.html#l00040">40</a> of file <a class="el" href="drivers__win32_8cpp-source.html">drivers_win32.cpp</a>.
</div>
</div><p>
<a class="anchor" name="c9224a2239420f92234b56962b019437"></a><!-- doxytag: member="drivers_win32.cpp::CANSEND_DRIVER_PROC" ref="c9224a2239420f92234b56962b019437" args="(void *inst, const Message *m)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef UNS8(*) <a class="el" href="drivers__win32_8cpp.html#c9224a2239420f92234b56962b019437">CANSEND_DRIVER_PROC</a>(void *inst, const <a class="el" href="structMessage.html">Message</a> *m)          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="drivers__win32_8cpp-source.html#l00041">41</a> of file <a class="el" href="drivers__win32_8cpp-source.html">drivers_win32.cpp</a>.
</div>
</div><p>
<hr><h2>Function Documentation</h2>
<a class="anchor" name="6d6b692e726dee0a5726e6d3db1b1693"></a><!-- doxytag: member="drivers_win32.cpp::canClose" ref="6d6b692e726dee0a5726e6d3db1b1693" args="(CO_Data *d)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int canClose           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structstruct__CO__Data.html">CO_Data</a> *&nbsp;</td>
          <td class="paramname"> <em>d</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="drivers__win32_8cpp-source.html#l00194">194</a> of file <a class="el" href="drivers__win32_8cpp-source.html">drivers_win32.cpp</a>.
<p>
References <a class="el" href="unix_8c-source.html#l00178">canClose()</a>, <a class="el" href="data_8h-source.html#l00087">struct_CO_Data::canHandle</a>, <a class="el" href="drivers__win32_8cpp-source.html#l00114">driver_data::continue_receive_thread</a>, <a class="el" href="unix_8c-source.html#l00027">DLL_CALL</a>, <a class="el" href="timers__unix_8c-source.html#l00020">EnterMutex()</a>, <a class="el" href="unix_8c-source.html#l00053">CANPort::fd</a>, <a class="el" href="drivers__win32_8cpp-source.html#l00113">driver_data::inst</a>, <a class="el" href="timers__unix_8c-source.html#l00025">LeaveMutex()</a>, <a class="el" href="drivers__win32_8cpp-source.html#l00060">driver_procs::m_canClose</a>, <a class="el" href="drivers__win32_8cpp-source.html#l00112">driver_data::receive_thread</a>, <a class="el" href="unix_8c-source.html#l00054">CANPort::receiveTask</a>, <a class="el" href="drivers__win32_8cpp-source.html#l00117">s_driver_procs</a>, and <a class="el" href="timers__unix_8c-source.html#l00076">WaitReceiveTaskEnd()</a>.
<p>
Here is the call graph for this function:<p><center><img src="drivers__win32_8cpp_6d6b692e726dee0a5726e6d3db1b1693_cgraph.png" border="0" usemap="#drivers__win32_8cpp_6d6b692e726dee0a5726e6d3db1b1693_cgraph_map" alt=""></center>
<map name="drivers__win32_8cpp_6d6b692e726dee0a5726e6d3db1b1693_cgraph_map">
<area href="unix_8c.html#6d6b692e726dee0a5726e6d3db1b1693" shape="rect" coords="160,5,229,32" alt="">
<area href="timers__unix_8c.html#aa3c568288a54a9398524255602bbce8" shape="rect" coords="152,56,237,83" alt="">
<area href="timers__unix_8c.html#887d197b991c23bc11f626ae688abec7" shape="rect" coords="151,107,239,133" alt="">
<area href="timers__unix_8c.html#b21b041545f4dfc5660514fbc3c2f89c" shape="rect" coords="127,157,263,184" alt="">
</map>

</div>
</div><p>
<a class="anchor" name="a1b1a8dd15860b7dfb6efb5943988bd6"></a><!-- doxytag: member="drivers_win32.cpp::canOpen" ref="a1b1a8dd15860b7dfb6efb5943988bd6" args="(s_BOARD *board, CO_Data *d)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="win32_2applicfg_8h.html#324227f7b01d51ee83a883174769ac8f">CAN_HANDLE</a> canOpen           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structstruct__s__BOARD.html">s_BOARD</a> *&nbsp;</td>
          <td class="paramname"> <em>board</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structstruct__CO__Data.html">CO_Data</a> *&nbsp;</td>
          <td class="paramname"> <em>d</em></td><td>&nbsp;</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="drivers__win32_8cpp-source.html#l00172">172</a> of file <a class="el" href="drivers__win32_8cpp-source.html">drivers_win32.cpp</a>.
<p>
References <a class="el" href="can__driver_8h-source.html#l00035">struct_s_BOARD::baudrate</a>, <a class="el" href="can__driver_8h-source.html#l00034">struct_s_BOARD::busname</a>, <a class="el" href="data_8h-source.html#l00087">struct_CO_Data::canHandle</a>, <a class="el" href="unix_8c-source.html#l00145">canOpen()</a>, <a class="el" href="unix_8c-source.html#l00066">canports</a>, <a class="el" href="unix_8c-source.html#l00132">canReceiveLoop()</a>, <a class="el" href="drivers__win32_8cpp-source.html#l00114">driver_data::continue_receive_thread</a>, <a class="el" href="timers__unix_8c-source.html#l00071">CreateReceiveTask()</a>, <a class="el" href="unix_8c-source.html#l00055">CANPort::d</a>, <a class="el" href="drivers__win32_8cpp-source.html#l00111">driver_data::d</a>, <a class="el" href="unix_8c-source.html#l00027">DLL_CALL</a>, <a class="el" href="timers__unix_8c-source.html#l00020">EnterMutex()</a>, <a class="el" href="unix_8c-source.html#l00053">CANPort::fd</a>, <a class="el" href="drivers__win32_8cpp-source.html#l00113">driver_data::inst</a>, <a class="el" href="timers__unix_8c-source.html#l00025">LeaveMutex()</a>, <a class="el" href="drivers__win32_8cpp-source.html#l00059">driver_procs::m_canOpen</a>, <a class="el" href="unix_8c-source.html#l00049">MAX_NB_CAN_PORTS</a>, <a class="el" href="drivers__win32_8cpp-source.html#l00112">driver_data::receive_thread</a>, <a class="el" href="drivers__win32_8cpp-source.html#l00117">s_driver_procs</a>, and <a class="el" href="unix_8c-source.html#l00052">CANPort::used</a>.
<p>
Here is the call graph for this function:<p><center><img src="drivers__win32_8cpp_a1b1a8dd15860b7dfb6efb5943988bd6_cgraph.png" border="0" usemap="#drivers__win32_8cpp_a1b1a8dd15860b7dfb6efb5943988bd6_cgraph_map" alt=""></center>
<map name="drivers__win32_8cpp_a1b1a8dd15860b7dfb6efb5943988bd6_cgraph_map">
<area href="unix_8c.html#c32083e9caa1b02f7726a8b87d10ce33" shape="rect" coords="151,107,220,133" alt="">
<area href="unix_8c.html#f6396866bcbfb45d7272b70731ab39cf" shape="rect" coords="131,157,240,184" alt="">
<area href="timers__unix_8c.html#aa3c568288a54a9398524255602bbce8" shape="rect" coords="299,208,384,235" alt="">
<area href="timers__unix_8c.html#887d197b991c23bc11f626ae688abec7" shape="rect" coords="297,259,385,285" alt="">
<area href="timers__unix_8c.html#09c921f9537f26895843a3c21620855b" shape="rect" coords="123,309,248,336" alt="">
<area href="states_8c.html#5903338b79e219eeb27f61974419fc12" shape="rect" coords="299,107,384,133" alt="">
<area href="drivers__win32_8cpp.html#3fcc13134ab40e532057273c24fadeb3" shape="rect" coords="300,157,383,184" alt="">
<area href="nmtSlave_8c.html#078a76722e34eb36a14a39ecf16f3a9d" shape="rect" coords="436,5,593,32" alt="">
<area href="lifegrd_8c.html#5b34a311b7b97bb79db8e729c2dcbf36" shape="rect" coords="437,56,592,83" alt="">
<area href="pdo_8c.html#f653b9e9cc46d8290b3ce2d6392b5a52" shape="rect" coords="469,107,560,133" alt="">
<area href="sdo_8c.html#c93bfdbec900f0b60386f0a2a5256826" shape="rect" coords="469,157,560,184" alt="">
<area href="sync_8c.html#89ae8cfbfc53c26248d5d91f689c7197" shape="rect" coords="465,208,564,235" alt="">
</map>

</div>
</div><p>
<a class="anchor" name="3fcc13134ab40e532057273c24fadeb3"></a><!-- doxytag: member="drivers_win32.cpp::canReceive" ref="3fcc13134ab40e532057273c24fadeb3" args="(CAN_PORT fd0, Message *m)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">UNS8 canReceive           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="win32_2applicfg_8h.html#c5a917a8cacf5edd42ba6486c0c8a243">CAN_PORT</a>&nbsp;</td>
          <td class="paramname"> <em>fd0</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structMessage.html">Message</a> *&nbsp;</td>
          <td class="paramname"> <em>m</em></td><td>&nbsp;</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="drivers__win32_8cpp-source.html#l00124">124</a> of file <a class="el" href="drivers__win32_8cpp-source.html">drivers_win32.cpp</a>.
<p>
References <a class="el" href="drivers__win32_8cpp-source.html#l00113">driver_data::inst</a>, <a class="el" href="drivers__win32_8cpp-source.html#l00057">driver_procs::m_canReceive</a>, and <a class="el" href="drivers__win32_8cpp-source.html#l00117">s_driver_procs</a>.
<p>
Referenced by <a class="el" href="unix_8c-source.html#l00132">canReceiveLoop()</a>, and <a class="el" href="unix_8c-source.html#l00084">LoadCanDriver()</a>.
</div>
</div><p>
<a class="anchor" name="12c44dbd367dfeac596805d68d661a4e"></a><!-- doxytag: member="drivers_win32.cpp::canReceiveLoop" ref="12c44dbd367dfeac596805d68d661a4e" args="(CAN_PORT fd0)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void* canReceiveLoop           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="win32_2applicfg_8h.html#c5a917a8cacf5edd42ba6486c0c8a243">CAN_PORT</a>&nbsp;</td>
          <td class="paramname"> <em>fd0</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="drivers__win32_8cpp-source.html#l00134">134</a> of file <a class="el" href="drivers__win32_8cpp-source.html">drivers_win32.cpp</a>.
<p>
References <a class="el" href="states_8c-source.html#l00065">canDispatch()</a>, <a class="el" href="drivers__win32_8cpp-source.html#l00124">canReceive()</a>, <a class="el" href="drivers__win32_8cpp-source.html#l00114">driver_data::continue_receive_thread</a>, <a class="el" href="drivers__win32_8cpp-source.html#l00111">driver_data::d</a>, <a class="el" href="timers__unix_8c-source.html#l00020">EnterMutex()</a>, and <a class="el" href="timers__unix_8c-source.html#l00025">LeaveMutex()</a>.
<p>
Here is the call graph for this function:<p><center><img src="drivers__win32_8cpp_12c44dbd367dfeac596805d68d661a4e_cgraph.png" border="0" usemap="#drivers__win32_8cpp_12c44dbd367dfeac596805d68d661a4e_cgraph_map" alt=""></center>
<map name="drivers__win32_8cpp_12c44dbd367dfeac596805d68d661a4e_cgraph_map">
<area href="states_8c.html#5903338b79e219eeb27f61974419fc12" shape="rect" coords="168,247,253,273" alt="">
<area href="drivers__win32_8cpp.html#3fcc13134ab40e532057273c24fadeb3" shape="rect" coords="169,297,252,324" alt="">
<area href="timers__unix_8c.html#aa3c568288a54a9398524255602bbce8" shape="rect" coords="168,348,253,375" alt="">
<area href="timers__unix_8c.html#887d197b991c23bc11f626ae688abec7" shape="rect" coords="167,399,255,425" alt="">
<area href="nmtSlave_8c.html#078a76722e34eb36a14a39ecf16f3a9d" shape="rect" coords="305,69,463,96" alt="">
<area href="lifegrd_8c.html#5b34a311b7b97bb79db8e729c2dcbf36" shape="rect" coords="512,113,667,140" alt="">
<area href="pdo_8c.html#f653b9e9cc46d8290b3ce2d6392b5a52" shape="rect" coords="544,247,635,273" alt="">
<area href="sdo_8c.html#c93bfdbec900f0b60386f0a2a5256826" shape="rect" coords="339,537,429,564" alt="">
<area href="sync_8c.html#89ae8cfbfc53c26248d5d91f689c7197" shape="rect" coords="335,588,433,615" alt="">
<area href="states_8c.html#cfb53d66c2360cd55b1d968f0e5c270f" shape="rect" coords="559,63,620,89" alt="">
<area href="canOpenDriver_8c.html#fab789b9b2ee0ab6c6f27e67d6c03661" shape="rect" coords="761,107,828,133" alt="">
<area href="lifegrd_8c.html#f01de9def215369ece4214cce5871508" shape="rect" coords="716,56,873,83" alt="">
<area href="timer_8c.html#12fe6467e1df03cc40dd6f76123c99f6" shape="rect" coords="757,157,832,184" alt="">
<area href="timer_8c.html#956b22f24089db4c367f40199f838a20" shape="rect" coords="759,5,831,32" alt="">
<area href="pdo_8c.html#06b1b812ca18d3167243fb2b2acb6414" shape="rect" coords="757,208,832,235" alt="">
<area href="pdo_8c.html#ad755ad656fe0f661ca6bd17acb1245a" shape="rect" coords="929,233,1001,260" alt="">
<area href="pdo_8c.html#1e6f0540474e95f2928151efec83ccb6" shape="rect" coords="723,309,867,336" alt="">
<area href="objacces_8c.html#dad5d2f7890168cade2fbb7e0e4c6200" shape="rect" coords="753,360,836,387" alt="">
<area href="sdo_8c.html#85872a68746c862b8771045ef45385a5" shape="rect" coords="551,816,628,843" alt="">
<area href="sdo_8c.html#93b0dc6875fffd911a7b0dc1ba96a8d1" shape="rect" coords="735,841,855,868" alt="">
<area href="sdo_8c.html#0d8fa7ef68e2d40eb014d9b89abf5448" shape="rect" coords="748,461,841,488" alt="">
<area href="sdo_8c.html#397e3c42e4165191c97fe342ae02e184" shape="rect" coords="923,436,1008,463" alt="">
<area href="sdo_8c.html#cb77818f302f413301728d27c091fa03" shape="rect" coords="535,512,644,539" alt="">
<area href="sdo_8c.html#8e536d3bb6ddd6da6da2148a39f00c5a" shape="rect" coords="520,563,659,589" alt="">
<area href="sdo_8c.html#ed2846a6b2403ab9f0b69712f0411d66" shape="rect" coords="548,613,631,640" alt="">
<area href="sdo_8c.html#57448321a7e327ac8264dfed071a1f90" shape="rect" coords="529,664,649,691" alt="">
<area href="sdo_8c.html#6603431e4ce111d365118681a3b80653" shape="rect" coords="528,360,651,387" alt="">
<area href="sdo_8c.html#bd7fd1f216960f4765749ff21b8c40fb" shape="rect" coords="548,715,631,741" alt="">
<area href="sdo_8c.html#b708fa701e4afbb7b63c6e658317e6dc" shape="rect" coords="553,183,625,209" alt="">
<area href="sdo_8c.html#6d81cdca911a4ea0234ab4b620a554f3" shape="rect" coords="521,765,657,792" alt="">
</map>

</div>
</div><p>
<a class="anchor" name="fad02b18ec22a31f09ef7fe921d71881"></a><!-- doxytag: member="drivers_win32.cpp::canSend" ref="fad02b18ec22a31f09ef7fe921d71881" args="(CAN_PORT fd0, Message *m)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">UNS8 canSend           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="win32_2applicfg_8h.html#c5a917a8cacf5edd42ba6486c0c8a243">CAN_PORT</a>&nbsp;</td>
          <td class="paramname"> <em>fd0</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structMessage.html">Message</a> *&nbsp;</td>
          <td class="paramname"> <em>m</em></td><td>&nbsp;</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="drivers__win32_8cpp-source.html#l00156">156</a> of file <a class="el" href="drivers__win32_8cpp-source.html">drivers_win32.cpp</a>.
<p>
References <a class="el" href="canOpenDriver_8c-source.html#l00505">canSend()</a>, <a class="el" href="unix_8c-source.html#l00027">DLL_CALL</a>, <a class="el" href="timers__unix_8c-source.html#l00020">EnterMutex()</a>, <a class="el" href="drivers__win32_8cpp-source.html#l00113">driver_data::inst</a>, <a class="el" href="timers__unix_8c-source.html#l00025">LeaveMutex()</a>, <a class="el" href="drivers__win32_8cpp-source.html#l00058">driver_procs::m_canSend</a>, <a class="el" href="drivers__win32_8cpp-source.html#l00117">s_driver_procs</a>, and <a class="el" href="hcs12_2applicfg_8h-source.html#l00139">UNS8</a>.
<p>
Here is the call graph for this function:<p><center><img src="drivers__win32_8cpp_fad02b18ec22a31f09ef7fe921d71881_cgraph.png" border="0" usemap="#drivers__win32_8cpp_fad02b18ec22a31f09ef7fe921d71881_cgraph_map" alt=""></center>
<map name="drivers__win32_8cpp_fad02b18ec22a31f09ef7fe921d71881_cgraph_map">
<area href="canOpenDriver_8c.html#fab789b9b2ee0ab6c6f27e67d6c03661" shape="rect" coords="132,5,199,32" alt="">
<area href="timers__unix_8c.html#aa3c568288a54a9398524255602bbce8" shape="rect" coords="123,56,208,83" alt="">
<area href="timers__unix_8c.html#887d197b991c23bc11f626ae688abec7" shape="rect" coords="121,107,209,133" alt="">
<area href="canOpenDriver_8c.html#cd855997446329e6b6338fe8644edf11" shape="rect" coords="259,5,371,32" alt="">
</map>

</div>
</div><p>
<a class="anchor" name="0012a2aa42ef694bd275c6b5be5c89c7"></a><!-- doxytag: member="drivers_win32.cpp::LoadCanDriver" ref="0012a2aa42ef694bd275c6b5be5c89c7" args="(char *driver_name)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="win32_2canfestival_8h.html#df21ab161742c7137cd3bcbe1f9145b7">LIB_HANDLE</a> LoadCanDriver           </td>
          <td>(</td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>driver_name</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="drivers__win32_8cpp-source.html#l00119">119</a> of file <a class="el" href="drivers__win32_8cpp-source.html">drivers_win32.cpp</a>.
<p>
References <a class="el" href="unix_8c-source.html#l00178">canClose()</a>, <a class="el" href="unix_8c-source.html#l00145">canOpen()</a>, <a class="el" href="drivers__win32_8cpp-source.html#l00124">canReceive()</a>, <a class="el" href="canOpenDriver_8c-source.html#l00505">canSend()</a>, <a class="el" href="unix_8c-source.html#l00030">DLSYM</a>, <a class="el" href="drivers__win32_8cpp-source.html#l00094">driver_procs::load_canfestival_driver()</a>, and <a class="el" href="drivers__win32_8cpp-source.html#l00117">s_driver_procs</a>.
<p>
Here is the call graph for this function:<p><center><img src="drivers__win32_8cpp_0012a2aa42ef694bd275c6b5be5c89c7_cgraph.png" border="0" usemap="#drivers__win32_8cpp_0012a2aa42ef694bd275c6b5be5c89c7_cgraph_map" alt=""></center>
<map name="drivers__win32_8cpp_0012a2aa42ef694bd275c6b5be5c89c7_cgraph_map">
<area href="unix_8c.html#6d6b692e726dee0a5726e6d3db1b1693" shape="rect" coords="236,5,305,32" alt="">
<area href="unix_8c.html#c32083e9caa1b02f7726a8b87d10ce33" shape="rect" coords="236,56,305,83" alt="">
<area href="drivers__win32_8cpp.html#3fcc13134ab40e532057273c24fadeb3" shape="rect" coords="229,107,312,133" alt="">
<area href="canOpenDriver_8c.html#fab789b9b2ee0ab6c6f27e67d6c03661" shape="rect" coords="237,157,304,184" alt="">
<area href="classdriver__procs.html#b89079a77f4b4576e9affdad131eae47" shape="rect" coords="160,208,381,235" alt="">
<area href="canOpenDriver_8c.html#cd855997446329e6b6338fe8644edf11" shape="rect" coords="467,157,579,184" alt="">
<area href="classdriver__procs.html#3846a104ee383928288c15421e4c4da7" shape="rect" coords="429,208,616,235" alt="">
</map>

</div>
</div><p>
<hr><h2>Variable Documentation</h2>
<a class="anchor" name="b22fab20028dc0276f74c904a6585287"></a><!-- doxytag: member="drivers_win32.cpp::s_driver_procs" ref="b22fab20028dc0276f74c904a6585287" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classdriver__procs.html">driver_procs</a> <a class="el" href="drivers__win32_8cpp.html#b22fab20028dc0276f74c904a6585287">s_driver_procs</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="drivers__win32_8cpp-source.html#l00117">117</a> of file <a class="el" href="drivers__win32_8cpp-source.html">drivers_win32.cpp</a>.
<p>
Referenced by <a class="el" href="drivers__win32_8cpp-source.html#l00194">canClose()</a>, <a class="el" href="drivers__win32_8cpp-source.html#l00172">canOpen()</a>, <a class="el" href="drivers__win32_8cpp-source.html#l00124">canReceive()</a>, <a class="el" href="drivers__win32_8cpp-source.html#l00156">canSend()</a>, and <a class="el" href="drivers__win32_8cpp-source.html#l00119">LoadCanDriver()</a>.
</div>
</div><p>
<hr size="1"><address style="align: right;"><small>Generated on Mon Jul 2 19:10:20 2007 for CanFestival by&nbsp;
<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>