SOEM/doc/html/ethercatdc_8c.html
2014-11-25 16:10:29 +01:00

527 lines
22 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://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.8.3.1"/>
<title>SOEM: ethercatdc.c File 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="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 style="padding-left: 0.5em;">
<div id="projectname">SOEM
&#160;<span id="projectnumber">v1.3.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.3.1 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>Globals</span></a></li>
</ul>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_3012a2599d87e3128fe81d8c5dd7e75c.html">soem</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#define-members">Macros</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">ethercatdc.c File Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>Distributed Clock EtherCAT functions.
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &quot;oshw.h&quot;</code><br/>
<code>#include &quot;osal.h&quot;</code><br/>
<code>#include &quot;<a class="el" href="ethercattype_8h.html">ethercattype.h</a>&quot;</code><br/>
<code>#include &quot;<a class="el" href="ethercatbase_8h.html">ethercatbase.h</a>&quot;</code><br/>
<code>#include &quot;<a class="el" href="ethercatmain_8h.html">ethercatmain.h</a>&quot;</code><br/>
<code>#include &quot;<a class="el" href="ethercatdc_8h.html">ethercatdc.h</a>&quot;</code><br/>
</div><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:a1ac17d3ca25f56e8c48cca0af5fbd122"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatdc_8c.html#a1ac17d3ca25f56e8c48cca0af5fbd122">PORTM0</a>&#160;&#160;&#160;0x01</td></tr>
<tr class="separator:a1ac17d3ca25f56e8c48cca0af5fbd122"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae04502881d2daa6af2054c8059573f30"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatdc_8c.html#ae04502881d2daa6af2054c8059573f30">PORTM1</a>&#160;&#160;&#160;0x02</td></tr>
<tr class="separator:ae04502881d2daa6af2054c8059573f30"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3b4158f391a6df70087540dc769bc89c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatdc_8c.html#a3b4158f391a6df70087540dc769bc89c">PORTM2</a>&#160;&#160;&#160;0x04</td></tr>
<tr class="separator:a3b4158f391a6df70087540dc769bc89c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2eb3d8f8b211f9baba094785d5f66c3d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatdc_8c.html#a2eb3d8f8b211f9baba094785d5f66c3d">PORTM3</a>&#160;&#160;&#160;0x08</td></tr>
<tr class="separator:a2eb3d8f8b211f9baba094785d5f66c3d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7aec534e63f6fe476241f41580dc1691"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatdc_8c.html#a7aec534e63f6fe476241f41580dc1691">SyncDelay</a>&#160;&#160;&#160;((int32)100000000)</td></tr>
<tr class="separator:a7aec534e63f6fe476241f41580dc1691"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a582e93eeadab9b63cec059b1bb024a56"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatdc_8c.html#a582e93eeadab9b63cec059b1bb024a56">ecx_dcsync0</a> (<a class="el" href="structecx__contextt.html">ecx_contextt</a> *context, uint16 <a class="el" href="eepromtool_8c.html#a7f46665d1fe6d01a75a90942bb34cfaf">slave</a>, boolean act, uint32 CyclTime, uint32 CyclShift)</td></tr>
<tr class="separator:a582e93eeadab9b63cec059b1bb024a56"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6642a9859ce23e1dd027044bf56848ea"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatdc_8c.html#a6642a9859ce23e1dd027044bf56848ea">ecx_dcsync01</a> (<a class="el" href="structecx__contextt.html">ecx_contextt</a> *context, uint16 <a class="el" href="eepromtool_8c.html#a7f46665d1fe6d01a75a90942bb34cfaf">slave</a>, boolean act, uint32 CyclTime0, uint32 CyclTime1, uint32 CyclShift)</td></tr>
<tr class="separator:a6642a9859ce23e1dd027044bf56848ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2ae35493ab155181f2e3eaa058efdb13"><td class="memItemLeft" align="right" valign="top">static int32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatdc_8c.html#a2ae35493ab155181f2e3eaa058efdb13">ecx_porttime</a> (<a class="el" href="structecx__contextt.html">ecx_contextt</a> *context, uint16 <a class="el" href="eepromtool_8c.html#a7f46665d1fe6d01a75a90942bb34cfaf">slave</a>, uint8 port)</td></tr>
<tr class="separator:a2ae35493ab155181f2e3eaa058efdb13"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab7cfa25080d575449ebc7450d0c01948"><td class="memItemLeft" align="right" valign="top">static uint8&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatdc_8c.html#ab7cfa25080d575449ebc7450d0c01948">ecx_prevport</a> (<a class="el" href="structecx__contextt.html">ecx_contextt</a> *context, uint16 <a class="el" href="eepromtool_8c.html#a7f46665d1fe6d01a75a90942bb34cfaf">slave</a>, uint8 port)</td></tr>
<tr class="separator:ab7cfa25080d575449ebc7450d0c01948"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abacbbb945fbeab95271e8f0a612fc973"><td class="memItemLeft" align="right" valign="top">static uint8&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatdc_8c.html#abacbbb945fbeab95271e8f0a612fc973">ecx_parentport</a> (<a class="el" href="structecx__contextt.html">ecx_contextt</a> *context, uint16 parent)</td></tr>
<tr class="separator:abacbbb945fbeab95271e8f0a612fc973"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa9593f8c1b4c397c8b9ebdcd99a42838"><td class="memItemLeft" align="right" valign="top">boolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatdc_8c.html#aa9593f8c1b4c397c8b9ebdcd99a42838">ecx_configdc</a> (<a class="el" href="structecx__contextt.html">ecx_contextt</a> *context)</td></tr>
<tr class="separator:aa9593f8c1b4c397c8b9ebdcd99a42838"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a39fe8b9490690f066c59179e65af981c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatdc_8c.html#a39fe8b9490690f066c59179e65af981c">ec_dcsync0</a> (uint16 <a class="el" href="eepromtool_8c.html#a7f46665d1fe6d01a75a90942bb34cfaf">slave</a>, boolean act, uint32 CyclTime, uint32 CyclShift)</td></tr>
<tr class="separator:a39fe8b9490690f066c59179e65af981c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a42ad5c4b3c82a6a151c4ee17fe121e57"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatdc_8c.html#a42ad5c4b3c82a6a151c4ee17fe121e57">ec_dcsync01</a> (uint16 <a class="el" href="eepromtool_8c.html#a7f46665d1fe6d01a75a90942bb34cfaf">slave</a>, boolean act, uint32 CyclTime0, uint32 CyclTime1, uint32 CyclShift)</td></tr>
<tr class="separator:a42ad5c4b3c82a6a151c4ee17fe121e57"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1d811e329c093385d00fcdd48522fc21"><td class="memItemLeft" align="right" valign="top">boolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatdc_8c.html#a1d811e329c093385d00fcdd48522fc21">ec_configdc</a> (void)</td></tr>
<tr class="separator:a1d811e329c093385d00fcdd48522fc21"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Distributed Clock EtherCAT functions. </p>
</div><h2 class="groupheader">Macro Definition Documentation</h2>
<a class="anchor" id="a1ac17d3ca25f56e8c48cca0af5fbd122"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define PORTM0&#160;&#160;&#160;0x01</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="ae04502881d2daa6af2054c8059573f30"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define PORTM1&#160;&#160;&#160;0x02</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a3b4158f391a6df70087540dc769bc89c"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define PORTM2&#160;&#160;&#160;0x04</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a2eb3d8f8b211f9baba094785d5f66c3d"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define PORTM3&#160;&#160;&#160;0x08</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a7aec534e63f6fe476241f41580dc1691"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define SyncDelay&#160;&#160;&#160;((int32)100000000)</td>
</tr>
</table>
</div><div class="memdoc">
<p>1st sync pulse delay in ns here 100ms </p>
</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="a1d811e329c093385d00fcdd48522fc21"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">boolean ec_configdc </td>
<td>(</td>
<td class="paramtype">void&#160;</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a39fe8b9490690f066c59179e65af981c"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ec_dcsync0 </td>
<td>(</td>
<td class="paramtype">uint16&#160;</td>
<td class="paramname"><em>slave</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">boolean&#160;</td>
<td class="paramname"><em>act</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32&#160;</td>
<td class="paramname"><em>CyclTime</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32&#160;</td>
<td class="paramname"><em>CyclShift</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a42ad5c4b3c82a6a151c4ee17fe121e57"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ec_dcsync01 </td>
<td>(</td>
<td class="paramtype">uint16&#160;</td>
<td class="paramname"><em>slave</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">boolean&#160;</td>
<td class="paramname"><em>act</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32&#160;</td>
<td class="paramname"><em>CyclTime0</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32&#160;</td>
<td class="paramname"><em>CyclTime1</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32&#160;</td>
<td class="paramname"><em>CyclShift</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="aa9593f8c1b4c397c8b9ebdcd99a42838"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">boolean ecx_configdc </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structecx__contextt.html">ecx_contextt</a> *&#160;</td>
<td class="paramname"><em>context</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Locate DC slaves, measure propagation delays.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">context</td><td>= context struct </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>boolean if slaves are found with DC </dd></dl>
</div>
</div>
<a class="anchor" id="a582e93eeadab9b63cec059b1bb024a56"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ecx_dcsync0 </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structecx__contextt.html">ecx_contextt</a> *&#160;</td>
<td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint16&#160;</td>
<td class="paramname"><em>slave</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">boolean&#160;</td>
<td class="paramname"><em>act</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32&#160;</td>
<td class="paramname"><em>CyclTime</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32&#160;</td>
<td class="paramname"><em>CyclShift</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Set DC of slave to fire sync0 at CyclTime interval with CyclShift offset.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">context</td><td>= context struct </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">slave</td><td>Slave number. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">act</td><td>TRUE = active, FALSE = deactivated </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">CyclTime</td><td>Cycltime in ns. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">CyclShift</td><td>CyclShift in ns. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="a6642a9859ce23e1dd027044bf56848ea"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ecx_dcsync01 </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structecx__contextt.html">ecx_contextt</a> *&#160;</td>
<td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint16&#160;</td>
<td class="paramname"><em>slave</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">boolean&#160;</td>
<td class="paramname"><em>act</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32&#160;</td>
<td class="paramname"><em>CyclTime0</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32&#160;</td>
<td class="paramname"><em>CyclTime1</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32&#160;</td>
<td class="paramname"><em>CyclShift</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Set DC of slave to fire sync0 and sync1 at CyclTime interval with CyclShift offset.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">context</td><td>= context struct </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">slave</td><td>Slave number. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">act</td><td>TRUE = active, FALSE = deactivated </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">CyclTime0</td><td>Cycltime SYNC0 in ns. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">CyclTime1</td><td>Cycltime SYNC1 in ns. This time is a delta time in relation to the SYNC0 fire. If CylcTime1 = 0 then SYNC1 fires a the same time as SYNC0. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">CyclShift</td><td>CyclShift in ns. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="abacbbb945fbeab95271e8f0a612fc973"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static uint8 ecx_parentport </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structecx__contextt.html">ecx_contextt</a> *&#160;</td>
<td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint16&#160;</td>
<td class="paramname"><em>parent</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a2ae35493ab155181f2e3eaa058efdb13"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static int32 ecx_porttime </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structecx__contextt.html">ecx_contextt</a> *&#160;</td>
<td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint16&#160;</td>
<td class="paramname"><em>slave</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8&#160;</td>
<td class="paramname"><em>port</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="ab7cfa25080d575449ebc7450d0c01948"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static uint8 ecx_prevport </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structecx__contextt.html">ecx_contextt</a> *&#160;</td>
<td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint16&#160;</td>
<td class="paramname"><em>slave</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8&#160;</td>
<td class="paramname"><em>port</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Feb 26 2013 13:57:51 for SOEM by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.3.1
</small></address>
</body>
</html>