doc/doxygen/html/unix_8c.html
author etisserant
Fri, 29 Jun 2007 19:51:39 +0200
changeset 235 f812bf6b7237
parent 215 f49e5a6b7804
child 240 34654679f262
permissions -rw-r--r--
Preliminary implementation of Event Timer and Inhibit Timer driven TPDO
+ re-organisation and cleanup of pdo.c.
<!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/unix/unix.c 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_d58fb241e647de6212c31ecccf9cbace.html">drivers</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_6da7fb7606ab88af9c782bbceb5cfb77.html">unix</a></div>
<h1>unix.c File Reference</h1><code>#include &lt;unistd.h&gt;</code><br>
<code>#include &lt;stdio.h&gt;</code><br>
<code>#include &lt;stdlib.h&gt;</code><br>
<code>#include &quot;<a class="el" href="data_8h-source.html">data.h</a>&quot;</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="timers__driver_8h-source.html">timers_driver.h</a>&quot;</code><br>
<code>#include &quot;<a class="el" href="can__driver_8h-source.html">can_driver.h</a>&quot;</code><br>

<p>
Include dependency graph for unix.c:<p><center><img src="unix_8c__incl.png" border="0" usemap="#drivers/unix/unix.c_map" alt=""></center>
<map name="drivers/unix/unix.c_map">
<area href="data_8h.html" shape="rect" coords="394,176,458,200" alt="">
<area href="win32_2canfestival_8h.html" shape="rect" coords="211,200,318,224" alt="">
<area href="can__driver_8h.html" shape="rect" coords="374,224,478,248" alt="">
<area href="timers__driver_8h.html" shape="rect" coords="203,299,326,323" alt="">
</map>

<p>
<a href="unix_8c-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">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structCANPort.html">CANPort</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="unix_8c.html#74c6a27b44fd54de5cb021299ffce612">DLL_CALL</a>(funcname)&nbsp;&nbsp;&nbsp;(* funcname##_driver)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="unix_8c.html#7f7ce94bf48fde67f4af7b64c7ca4c85">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="unix_8c.html#2af8b26c5600696a026aa95fe49b9dc9">DLSYM</a>(name)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="unix_8c.html#c2f10bc5b98269f33af8a74299236e03">MAX_NB_CAN_PORTS</a>&nbsp;&nbsp;&nbsp;16</td></tr>

<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">UNS8&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="unix_8c.html#cb4f394ec0e040c5962d3dc1957505fb">UnLoadCanDriver</a> (<a class="el" href="win32_2canfestival_8h.html#c4a0f44120dee396ab6bb57e23effaa8">LIB_HANDLE</a> handle)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="win32_2canfestival_8h.html#c4a0f44120dee396ab6bb57e23effaa8">LIB_HANDLE</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="unix_8c.html#a6eed61fc15f41f772d4645d7a5edeb5">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="unix_8c.html#8d1909a09c50c750e4d8626595acd9f6">canSend</a> (<a class="el" href="win32_2applicfg_8h.html#7ef59f941603c6680e74fc335523f17e">CAN_PORT</a> port, <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="unix_8c.html#45ceca3727c2fb7ac93958a215efb827">canReceiveLoop</a> (<a class="el" href="win32_2applicfg_8h.html#7ef59f941603c6680e74fc335523f17e">CAN_PORT</a> port)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="win32_2applicfg_8h.html#7ef59f941603c6680e74fc335523f17e">CAN_PORT</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="unix_8c.html#7476146ad15948a22e7f80a00c89c40a">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="unix_8c.html#02957f72a9b951603adb98a142bd447b">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="structCANPort.html">CANPort</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="unix_8c.html#0b740cf913752262ceb23d51648da86a">canports</a> [MAX_NB_CAN_PORTS] = {{0,},{0,},{0,},{0,},{0,},{0,},{0,},{0,},{0,},{0,},{0,},{0,},{0,},{0,},{0,},{0,}}</td></tr>

</table>
<hr><h2>Define Documentation</h2>
<a class="anchor" name="74c6a27b44fd54de5cb021299ffce612"></a><!-- doxytag: member="unix.c::DLL_CALL" ref="74c6a27b44fd54de5cb021299ffce612" 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##_driver)</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="unix_8c-source.html#l00027">27</a> of file <a class="el" href="unix_8c-source.html">unix.c</a>.
<p>
Referenced by <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="unix_8c-source.html#l00132">canReceiveLoop()</a>, and <a class="el" href="unix_8c-source.html#l00120">canSend()</a>.
</div>
</div><p>
<a class="anchor" name="2af8b26c5600696a026aa95fe49b9dc9"></a><!-- doxytag: member="unix.c::DLSYM" ref="2af8b26c5600696a026aa95fe49b9dc9" args="(name)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define DLSYM          </td>
          <td>(</td>
          <td class="paramtype">name&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<b>Value:</b><div class="fragment"><pre class="fragment">*(<span class="keywordtype">void</span> **) (&amp;name##_driver) = dlsym(handle, #name<span class="stringliteral">"_driver"</span>);\
        <span class="keywordflow">if</span> ((error = dlerror()) != NULL)  {\
                fprintf (stderr, <span class="stringliteral">"%s\n"</span>, error);\
                <a class="code" href="unix_8c.html#cb4f394ec0e040c5962d3dc1957505fb">UnLoadCanDriver</a>(handle);\
                <span class="keywordflow">return</span> NULL;\
        }
</pre></div>
<p>
Definition at line <a class="el" href="unix_8c-source.html#l00030">30</a> of file <a class="el" href="unix_8c-source.html">unix.c</a>.
<p>
Referenced by <a class="el" href="unix_8c-source.html#l00084">LoadCanDriver()</a>.
</div>
</div><p>
<a class="anchor" name="7f7ce94bf48fde67f4af7b64c7ca4c85"></a><!-- doxytag: member="unix.c::FCT_PTR_INIT" ref="7f7ce94bf48fde67f4af7b64c7ca4c85" 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="unix_8c-source.html#l00028">28</a> of file <a class="el" href="unix_8c-source.html">unix.c</a>.
</div>
</div><p>
<a class="anchor" name="c2f10bc5b98269f33af8a74299236e03"></a><!-- doxytag: member="unix.c::MAX_NB_CAN_PORTS" ref="c2f10bc5b98269f33af8a74299236e03" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MAX_NB_CAN_PORTS&nbsp;&nbsp;&nbsp;16          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="unix_8c-source.html#l00049">49</a> of file <a class="el" href="unix_8c-source.html">unix.c</a>.
<p>
Referenced by <a class="el" href="unix_8c-source.html#l00145">canOpen()</a>.
</div>
</div><p>
<hr><h2>Function Documentation</h2>
<a class="anchor" name="02957f72a9b951603adb98a142bd447b"></a><!-- doxytag: member="unix.c::canClose" ref="02957f72a9b951603adb98a142bd447b" 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="unix_8c-source.html#l00178">178</a> of file <a class="el" href="unix_8c-source.html">unix.c</a>.
<p>
Referenced by <a class="el" href="unix_8c-source.html#l00178">canClose()</a>, <a class="el" href="unix_8c-source.html#l00084">LoadCanDriver()</a>, and <a class="el" href="TestMasterMicroMod_8c-source.html#l00397">main()</a>.
</div>
</div><p>
<a class="anchor" name="7476146ad15948a22e7f80a00c89c40a"></a><!-- doxytag: member="unix.c::canOpen" ref="7476146ad15948a22e7f80a00c89c40a" 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#7ef59f941603c6680e74fc335523f17e">CAN_PORT</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="unix_8c-source.html#l00145">145</a> of file <a class="el" href="unix_8c-source.html">unix.c</a>.
<p>
Referenced by <a class="el" href="unix_8c-source.html#l00145">canOpen()</a>, <a class="el" href="unix_8c-source.html#l00084">LoadCanDriver()</a>, and <a class="el" href="TestMasterMicroMod_8c-source.html#l00397">main()</a>.
</div>
</div><p>
<a class="anchor" name="45ceca3727c2fb7ac93958a215efb827"></a><!-- doxytag: member="unix.c::canReceiveLoop" ref="45ceca3727c2fb7ac93958a215efb827" args="(CAN_PORT port)" -->
<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#7ef59f941603c6680e74fc335523f17e">CAN_PORT</a>&nbsp;</td>
          <td class="paramname"> <em>port</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="unix_8c-source.html#l00132">132</a> of file <a class="el" href="unix_8c-source.html">unix.c</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="unix_8c-source.html#l00027">DLL_CALL</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>
Referenced by <a class="el" href="unix_8c-source.html#l00145">canOpen()</a>.
<p>
Here is the call graph for this function:<p><center><img src="unix_8c_45ceca3727c2fb7ac93958a215efb827_cgraph.png" border="0" usemap="#unix_8c_45ceca3727c2fb7ac93958a215efb827_cgraph_map" alt=""></center>
<map name="unix_8c_45ceca3727c2fb7ac93958a215efb827_cgraph_map">
<area href="states_8c.html#3f8975650604cc23582f19a43fd4e518" shape="rect" coords="188,102,292,126" alt="">
<area href="drivers__win32_8cpp.html#c608a4ba478a809fd963a342a24226fd" shape="rect" coords="191,150,290,174" alt="">
<area href="timers__unix_8c.html#d7fee43b8a44cf8b7036853593044037" shape="rect" coords="191,198,290,222" alt="">
<area href="timers__unix_8c.html#73d9a4eb941fb20cf6b597840510394b" shape="rect" coords="188,246,292,270" alt="">
<area href="nmtSlave_8c.html#97d175ea168c149c99b01dcde0989743" shape="rect" coords="343,6,532,30" alt="">
<area href="lifegrd_8c.html#b3248945e06e8b05518beddf665f174d" shape="rect" coords="352,54,523,78" alt="">
<area href="pdo_8c.html#ae7d661cd3ef7adf93a0d08fdb15b7f2" shape="rect" coords="386,102,490,126" alt="">
<area href="sdo_8c.html#2a93a7c780472b1d8666d89aa270f661" shape="rect" coords="384,150,491,174" alt="">
<area href="sync_8c.html#80cadcba23dc859db8a8d3f52789d6d1" shape="rect" coords="382,198,494,222" alt="">
</map>

</div>
</div><p>
<a class="anchor" name="8d1909a09c50c750e4d8626595acd9f6"></a><!-- doxytag: member="unix.c::canSend" ref="8d1909a09c50c750e4d8626595acd9f6" args="(CAN_PORT port, 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#7ef59f941603c6680e74fc335523f17e">CAN_PORT</a>&nbsp;</td>
          <td class="paramname"> <em>port</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="unix_8c-source.html#l00120">120</a> of file <a class="el" href="unix_8c-source.html">unix.c</a>.
</div>
</div><p>
<a class="anchor" name="a6eed61fc15f41f772d4645d7a5edeb5"></a><!-- doxytag: member="unix.c::LoadCanDriver" ref="a6eed61fc15f41f772d4645d7a5edeb5" 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#c4a0f44120dee396ab6bb57e23effaa8">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="unix_8c-source.html#l00084">84</a> of file <a class="el" href="unix_8c-source.html">unix.c</a>.
<p>
Referenced by <a class="el" href="TestMasterMicroMod_8c-source.html#l00397">main()</a>.
</div>
</div><p>
<a class="anchor" name="cb4f394ec0e040c5962d3dc1957505fb"></a><!-- doxytag: member="unix.c::UnLoadCanDriver" ref="cb4f394ec0e040c5962d3dc1957505fb" args="(LIB_HANDLE handle)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">UNS8 UnLoadCanDriver           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="win32_2canfestival_8h.html#c4a0f44120dee396ab6bb57e23effaa8">LIB_HANDLE</a>&nbsp;</td>
          <td class="paramname"> <em>handle</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="unix_8c-source.html#l00071">71</a> of file <a class="el" href="unix_8c-source.html">unix.c</a>.
</div>
</div><p>
<hr><h2>Variable Documentation</h2>
<a class="anchor" name="0b740cf913752262ceb23d51648da86a"></a><!-- doxytag: member="unix.c::canports" ref="0b740cf913752262ceb23d51648da86a" args="[MAX_NB_CAN_PORTS]" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structCANPort.html">CANPort</a> <a class="el" href="unix_8c.html#0b740cf913752262ceb23d51648da86a">canports</a>[MAX_NB_CAN_PORTS] = {{0,},{0,},{0,},{0,},{0,},{0,},{0,},{0,},{0,},{0,},{0,},{0,},{0,},{0,},{0,},{0,}}          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="unix_8c-source.html#l00066">66</a> of file <a class="el" href="unix_8c-source.html">unix.c</a>.
<p>
Referenced by <a class="el" href="unix_8c-source.html#l00145">canOpen()</a>.
</div>
</div><p>
<hr size="1"><address style="align: right;"><small>Generated on Fri Jun 8 08:51:43 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>