Better EMCY support. Now EMCY COB-ID depend on OD 1014h entry, as told in DS-301.
<!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: src/lifegrd.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 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_0aa10e4f705947227e11e7ccb081fbe4.html">src</a></div>
<h1>lifegrd.c File Reference</h1><code>#include <<a class="el" href="data_8h-source.html">data.h</a>></code><br>
<code>#include "<a class="el" href="lifegrd_8h-source.html">lifegrd.h</a>"</code><br>
<code>#include "<a class="el" href="win32_2canfestival_8h-source.html">canfestival.h</a>"</code><br>
<p>
Include dependency graph for lifegrd.c:<p><center><img src="lifegrd_8c__incl.png" border="0" usemap="#src/lifegrd.c_map" alt=""></center>
<map name="src/lifegrd.c_map">
<area href="data_8h.html" shape="rect" coords="277,309,331,336" alt="">
<area href="lifegrd_8h.html" shape="rect" coords="391,5,457,32" alt="">
<area href="win32_2canfestival_8h.html" shape="rect" coords="140,613,228,640" alt="">
<area href="win32_2applicfg_8h.html" shape="rect" coords="631,360,705,387" alt="">
<area href="def_8h.html" shape="rect" coords="524,95,572,121" alt="">
<area href="can_8h.html" shape="rect" coords="524,233,572,260" alt="">
<area href="objdictdef_8h.html" shape="rect" coords="381,208,467,235" alt="">
<area href="objacces_8h.html" shape="rect" coords="385,411,463,437" alt="">
<area href="sdo_8h.html" shape="rect" coords="400,512,448,539" alt="">
<area href="pdo_8h.html" shape="rect" coords="399,107,449,133" alt="">
<area href="states_8h.html" shape="rect" coords="393,309,455,336" alt="">
<area href="sync_8h.html" shape="rect" coords="396,259,452,285" alt="">
<area href="nmtMaster_8h.html" shape="rect" coords="380,461,468,488" alt="">
<area href="config_8h.html" shape="rect" coords="636,95,700,121" alt="">
<area href="timer_8h.html" shape="rect" coords="519,524,577,551" alt="">
<area href="win32_2timerscfg_8h.html" shape="rect" coords="628,595,708,621" alt="">
<area href="can__driver_8h.html" shape="rect" coords="380,613,468,640" alt="">
</map>
<p>
<a href="lifegrd_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>Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="lifegrd_8c.html#f01de9def215369ece4214cce5871508">ConsumerHearbeatAlarm</a> (<a class="el" href="structstruct__CO__Data.html">CO_Data</a> *d, UNS32 id)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="lifegrd_8c.html#a296a819d9aedc0d7781774390908000">ProducerHearbeatAlarm</a> (<a class="el" href="structstruct__CO__Data.html">CO_Data</a> *d, UNS32 id)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">UNS32 </td><td class="memItemRight" valign="bottom"><a class="el" href="lifegrd_8c.html#e80d1f6da5bdaca8aada0aa50812c18a">OnHearbeatProducerUpdate</a> (<a class="el" href="structstruct__CO__Data.html">CO_Data</a> *d, const <a class="el" href="structtd__indextable.html">indextable</a> *unsused_indextable, UNS8 unsused_bSubindex)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="states_8h.html#424131de4b91e21fa281d2c8913d9282">e_nodeState</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="lifegrd_8c.html#efc37a2f9a8c56f18d7569bfb0f02554">getNodeState</a> (<a class="el" href="structstruct__CO__Data.html">CO_Data</a> *d, UNS8 nodeId)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="lifegrd_8c.html#5b34a311b7b97bb79db8e729c2dcbf36">proceedNODE_GUARD</a> (<a class="el" href="structstruct__CO__Data.html">CO_Data</a> *d, <a class="el" href="structMessage.html">Message</a> *m)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">UNS32 </td><td class="memItemRight" valign="bottom"><a class="el" href="lifegrd_8c.html#9b31f862dd95cc430757f30a0306205b">OnHeartbeatProducerUpdate</a> (<a class="el" href="structstruct__CO__Data.html">CO_Data</a> *d, const <a class="el" href="structtd__indextable.html">indextable</a> *unsused_indextable, UNS8 unsused_bSubindex)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="lifegrd_8c.html#03fbd3b6910b8058535d3e94242cb80e">heartbeatInit</a> (<a class="el" href="structstruct__CO__Data.html">CO_Data</a> *d)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="lifegrd_8c.html#007b1f27fd9f0d6814498093f424f82e">heartbeatStop</a> (<a class="el" href="structstruct__CO__Data.html">CO_Data</a> *d)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="lifegrd_8c.html#9f9eaba98473f87f91bb8bc9654a0351">_heartbeatError</a> (UNS8 heartbeatID)</td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Edouard TISSERANT </dd></dl>
<dl class="date" compact><dt><b>Date:</b></dt><dd>Mon Jun 4 17:19:24 2007 </dd></dl>
<p>
Definition in file <a class="el" href="lifegrd_8c-source.html">lifegrd.c</a>.<hr><h2>Function Documentation</h2>
<a class="anchor" name="9f9eaba98473f87f91bb8bc9654a0351"></a><!-- doxytag: member="lifegrd.c::_heartbeatError" ref="9f9eaba98473f87f91bb8bc9654a0351" args="(UNS8 heartbeatID)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void _heartbeatError </td>
<td>(</td>
<td class="paramtype">UNS8 </td>
<td class="paramname"> <em>heartbeatID</em> </td>
<td> ) </td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>heartbeatID</em> </td><td></td></tr>
</table>
</dl>
<p>
Definition at line <a class="el" href="lifegrd_8c-source.html#l00252">252</a> of file <a class="el" href="lifegrd_8c-source.html">lifegrd.c</a>.
</div>
</div><p>
<a class="anchor" name="f01de9def215369ece4214cce5871508"></a><!-- doxytag: member="lifegrd.c::ConsumerHearbeatAlarm" ref="f01de9def215369ece4214cce5871508" args="(CO_Data *d, UNS32 id)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ConsumerHearbeatAlarm </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structstruct__CO__Data.html">CO_Data</a> * </td>
<td class="paramname"> <em>d</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">UNS32 </td>
<td class="paramname"> <em>id</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>
The Consumer Timer Callback<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>d</em> </td><td></td></tr>
<tr><td valign="top"></td><td valign="top"><em>id</em> </td><td></td></tr>
</table>
</dl>
<p>
call heartbeat error with NodeId
<p>
Definition at line <a class="el" href="lifegrd_8c-source.html#l00067">67</a> of file <a class="el" href="lifegrd_8c-source.html">lifegrd.c</a>.
<p>
References <a class="el" href="data_8h-source.html#l00070">struct_CO_Data::ConsumerHeartbeatEntries</a>, <a class="el" href="timer_8h-source.html#l00045">struct_s_timer_entry::d</a>, <a class="el" href="data_8h-source.html#l00074">struct_CO_Data::heartbeatError</a>, <a class="el" href="hcs12_2applicfg_8h-source.html#l00141">UNS32</a>, and <a class="el" href="hcs12_2applicfg_8h-source.html#l00139">UNS8</a>.
<p>
Referenced by <a class="el" href="lifegrd_8c-source.html#l00206">heartbeatInit()</a>, and <a class="el" href="lifegrd_8c-source.html#l00081">proceedNODE_GUARD()</a>.
</div>
</div><p>
<a class="anchor" name="efc37a2f9a8c56f18d7569bfb0f02554"></a><!-- doxytag: member="lifegrd.c::getNodeState" ref="efc37a2f9a8c56f18d7569bfb0f02554" args="(CO_Data *d, UNS8 nodeId)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="states_8h.html#424131de4b91e21fa281d2c8913d9282">e_nodeState</a> getNodeState </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structstruct__CO__Data.html">CO_Data</a> * </td>
<td class="paramname"> <em>d</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">UNS8 </td>
<td class="paramname"> <em>nodeId</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>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>d</em> </td><td></td></tr>
<tr><td valign="top"></td><td valign="top"><em>nodeId</em> </td><td></td></tr>
</table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd></dd></dl>
<p>
Definition at line <a class="el" href="lifegrd_8c-source.html#l00055">55</a> of file <a class="el" href="lifegrd_8c-source.html">lifegrd.c</a>.
<p>
References <a class="el" href="timer_8h-source.html#l00045">struct_s_timer_entry::d</a>, and <a class="el" href="data_8h-source.html#l00075">struct_CO_Data::NMTable</a>.
<p>
Referenced by <a class="el" href="main_8c-source.html#l00037">GetChangeStateResults()</a>.
</div>
</div><p>
<a class="anchor" name="03fbd3b6910b8058535d3e94242cb80e"></a><!-- doxytag: member="lifegrd.c::heartbeatInit" ref="03fbd3b6910b8058535d3e94242cb80e" args="(CO_Data *d)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void heartbeatInit </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structstruct__CO__Data.html">CO_Data</a> * </td>
<td class="paramname"> <em>d</em> </td>
<td> ) </td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>d</em> </td><td></td></tr>
</table>
</dl>
<p>
Definition at line <a class="el" href="lifegrd_8c-source.html#l00206">206</a> of file <a class="el" href="lifegrd_8c-source.html">lifegrd.c</a>.
<p>
References <a class="el" href="lifegrd_8c-source.html#l00067">ConsumerHearbeatAlarm()</a>, <a class="el" href="data_8h-source.html#l00069">struct_CO_Data::ConsumerHeartbeatCount</a>, <a class="el" href="data_8h-source.html#l00070">struct_CO_Data::ConsumerHeartbeatEntries</a>, <a class="el" href="data_8h-source.html#l00071">struct_CO_Data::ConsumerHeartBeatTimers</a>, <a class="el" href="timer_8h-source.html#l00045">struct_s_timer_entry::d</a>, <a class="el" href="hcs12_2applicfg_8h-source.html#l00156">MS_TO_TIMEVAL</a>, <a class="el" href="lifegrd_8c-source.html#l00194">OnHeartbeatProducerUpdate()</a>, <a class="el" href="lifegrd_8c-source.html#l00161">ProducerHearbeatAlarm()</a>, <a class="el" href="data_8h-source.html#l00072">struct_CO_Data::ProducerHeartBeatTime</a>, <a class="el" href="data_8h-source.html#l00073">struct_CO_Data::ProducerHeartBeatTimer</a>, <a class="el" href="objacces_8c-source.html#l00419">RegisterSetODentryCallBack()</a>, <a class="el" href="timer_8c-source.html#l00057">SetAlarm()</a>, <a class="el" href="hcs12_2applicfg_8h-source.html#l00150">TIMEVAL</a>, <a class="el" href="data_8h-source.html#l00086">struct_CO_Data::toggle</a>, <a class="el" href="hcs12_2applicfg_8h-source.html#l00140">UNS16</a>, <a class="el" href="hcs12_2applicfg_8h-source.html#l00141">UNS32</a>, and <a class="el" href="hcs12_2applicfg_8h-source.html#l00139">UNS8</a>.
<p>
Referenced by <a class="el" href="lifegrd_8c-source.html#l00194">OnHeartbeatProducerUpdate()</a>, and <a class="el" href="states_8c-source.html#l00120">switchCommunicationState()</a>.
<p>
Here is the call graph for this function:<p><center><img src="lifegrd_8c_03fbd3b6910b8058535d3e94242cb80e_cgraph.png" border="0" usemap="#lifegrd_8c_03fbd3b6910b8058535d3e94242cb80e_cgraph_map" alt=""></center>
<map name="lifegrd_8c_03fbd3b6910b8058535d3e94242cb80e_cgraph_map">
<area href="lifegrd_8c.html#f01de9def215369ece4214cce5871508" shape="rect" coords="155,5,312,32" alt="">
<area href="lifegrd_8c.html#9b31f862dd95cc430757f30a0306205b" shape="rect" coords="145,56,321,83" alt="">
<area href="lifegrd_8c.html#a296a819d9aedc0d7781774390908000" shape="rect" coords="157,107,309,133" alt="">
<area href="objacces_8c.html#9a512a966532e40f35d3a4201bf54ead" shape="rect" coords="144,157,323,184" alt="">
<area href="timer_8c.html#956b22f24089db4c367f40199f838a20" shape="rect" coords="197,208,269,235" alt="">
<area href="lifegrd_8c.html#007b1f27fd9f0d6814498093f424f82e" shape="rect" coords="372,31,465,57" alt="">
<area href="timer_8c.html#12fe6467e1df03cc40dd6f76123c99f6" shape="rect" coords="533,56,608,83" alt="">
<area href="canOpenDriver_8c.html#fab789b9b2ee0ab6c6f27e67d6c03661" shape="rect" coords="385,132,452,159" alt="">
<area href="canOpenDriver_8c.html#cd855997446329e6b6338fe8644edf11" shape="rect" coords="515,132,627,159" alt="">
<area href="objacces_8c.html#b2839d53051e322c12605c1d7f3dc4e5" shape="rect" coords="372,183,465,209" alt="">
</map>
</div>
</div><p>
<a class="anchor" name="007b1f27fd9f0d6814498093f424f82e"></a><!-- doxytag: member="lifegrd.c::heartbeatStop" ref="007b1f27fd9f0d6814498093f424f82e" args="(CO_Data *d)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void heartbeatStop </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structstruct__CO__Data.html">CO_Data</a> * </td>
<td class="paramname"> <em>d</em> </td>
<td> ) </td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>d</em> </td><td></td></tr>
</table>
</dl>
<p>
Definition at line <a class="el" href="lifegrd_8c-source.html#l00236">236</a> of file <a class="el" href="lifegrd_8c-source.html">lifegrd.c</a>.
<p>
References <a class="el" href="data_8h-source.html#l00069">struct_CO_Data::ConsumerHeartbeatCount</a>, <a class="el" href="data_8h-source.html#l00071">struct_CO_Data::ConsumerHeartBeatTimers</a>, <a class="el" href="timer_8h-source.html#l00045">struct_s_timer_entry::d</a>, <a class="el" href="timer_8c-source.html#l00112">DelAlarm()</a>, <a class="el" href="data_8h-source.html#l00073">struct_CO_Data::ProducerHeartBeatTimer</a>, and <a class="el" href="hcs12_2applicfg_8h-source.html#l00139">UNS8</a>.
<p>
Referenced by <a class="el" href="lifegrd_8c-source.html#l00194">OnHeartbeatProducerUpdate()</a>, and <a class="el" href="states_8c-source.html#l00120">switchCommunicationState()</a>.
<p>
Here is the call graph for this function:<p><center><img src="lifegrd_8c_007b1f27fd9f0d6814498093f424f82e_cgraph.png" border="0" usemap="#lifegrd_8c_007b1f27fd9f0d6814498093f424f82e_cgraph_map" alt=""></center>
<map name="lifegrd_8c_007b1f27fd9f0d6814498093f424f82e_cgraph_map">
<area href="timer_8c.html#12fe6467e1df03cc40dd6f76123c99f6" shape="rect" coords="149,5,224,32" alt="">
</map>
</div>
</div><p>
<a class="anchor" name="e80d1f6da5bdaca8aada0aa50812c18a"></a><!-- doxytag: member="lifegrd.c::OnHearbeatProducerUpdate" ref="e80d1f6da5bdaca8aada0aa50812c18a" args="(CO_Data *d, const indextable *unsused_indextable, UNS8 unsused_bSubindex)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">UNS32 OnHearbeatProducerUpdate </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structstruct__CO__Data.html">CO_Data</a> * </td>
<td class="paramname"> <em>d</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structtd__indextable.html">indextable</a> * </td>
<td class="paramname"> <em>unsused_indextable</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">UNS8 </td>
<td class="paramname"> <em>unsused_bSubindex</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>
</div>
</div><p>
<a class="anchor" name="9b31f862dd95cc430757f30a0306205b"></a><!-- doxytag: member="lifegrd.c::OnHeartbeatProducerUpdate" ref="9b31f862dd95cc430757f30a0306205b" args="(CO_Data *d, const indextable *unsused_indextable, UNS8 unsused_bSubindex)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">UNS32 OnHeartbeatProducerUpdate </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structstruct__CO__Data.html">CO_Data</a> * </td>
<td class="paramname"> <em>d</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structtd__indextable.html">indextable</a> * </td>
<td class="paramname"> <em>unsused_indextable</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">UNS8 </td>
<td class="paramname"> <em>unsused_bSubindex</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>
This is called when Index 0x1017 is updated.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>d</em> </td><td></td></tr>
<tr><td valign="top"></td><td valign="top"><em>unsused_indextable</em> </td><td></td></tr>
<tr><td valign="top"></td><td valign="top"><em>unsused_bSubindex</em> </td><td></td></tr>
</table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd></dd></dl>
<p>
Definition at line <a class="el" href="lifegrd_8c-source.html#l00194">194</a> of file <a class="el" href="lifegrd_8c-source.html">lifegrd.c</a>.
<p>
References <a class="el" href="timer_8h-source.html#l00045">struct_s_timer_entry::d</a>, <a class="el" href="lifegrd_8c-source.html#l00206">heartbeatInit()</a>, and <a class="el" href="lifegrd_8c-source.html#l00236">heartbeatStop()</a>.
<p>
Referenced by <a class="el" href="lifegrd_8c-source.html#l00206">heartbeatInit()</a>.
<p>
Here is the call graph for this function:<p><center><img src="lifegrd_8c_9b31f862dd95cc430757f30a0306205b_cgraph.png" border="0" usemap="#lifegrd_8c_9b31f862dd95cc430757f30a0306205b_cgraph_map" alt=""></center>
<map name="lifegrd_8c_9b31f862dd95cc430757f30a0306205b_cgraph_map">
<area href="lifegrd_8c.html#03fbd3b6910b8058535d3e94242cb80e" shape="rect" coords="233,107,321,133" alt="">
<area href="lifegrd_8c.html#007b1f27fd9f0d6814498093f424f82e" shape="rect" coords="231,183,324,209" alt="">
<area href="lifegrd_8c.html#f01de9def215369ece4214cce5871508" shape="rect" coords="384,56,541,83" alt="">
<area href="lifegrd_8c.html#a296a819d9aedc0d7781774390908000" shape="rect" coords="387,157,539,184" alt="">
<area href="objacces_8c.html#9a512a966532e40f35d3a4201bf54ead" shape="rect" coords="373,107,552,133" alt="">
<area href="timer_8c.html#956b22f24089db4c367f40199f838a20" shape="rect" coords="427,5,499,32" alt="">
<area href="canOpenDriver_8c.html#fab789b9b2ee0ab6c6f27e67d6c03661" shape="rect" coords="615,157,681,184" alt="">
<area href="timer_8c.html#12fe6467e1df03cc40dd6f76123c99f6" shape="rect" coords="611,208,685,235" alt="">
<area href="canOpenDriver_8c.html#cd855997446329e6b6338fe8644edf11" shape="rect" coords="744,157,856,184" alt="">
<area href="objacces_8c.html#b2839d53051e322c12605c1d7f3dc4e5" shape="rect" coords="601,107,695,133" alt="">
</map>
</div>
</div><p>
<a class="anchor" name="5b34a311b7b97bb79db8e729c2dcbf36"></a><!-- doxytag: member="lifegrd.c::proceedNODE_GUARD" ref="5b34a311b7b97bb79db8e729c2dcbf36" args="(CO_Data *d, Message *m)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void proceedNODE_GUARD </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structstruct__CO__Data.html">CO_Data</a> * </td>
<td class="paramname"> <em>d</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structMessage.html">Message</a> * </td>
<td class="paramname"> <em>m</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>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>d</em> </td><td></td></tr>
<tr><td valign="top"></td><td valign="top"><em>m</em> </td><td></td></tr>
</table>
</dl>
<p>
Notice that only the master can have sent this node guarding request<p>
Receiving a NMT NodeGuarding (request of the state by the master) Only answer to the NMT NodeGuarding request, the master is not checked (not implemented)
<p>
Definition at line <a class="el" href="lifegrd_8c-source.html#l00081">81</a> of file <a class="el" href="lifegrd_8c-source.html">lifegrd.c</a>.
<p>
References <a class="el" href="data_8h-source.html#l00047">struct_CO_Data::bDeviceNodeId</a>, <a class="el" href="data_8h-source.html#l00087">struct_CO_Data::canHandle</a>, <a class="el" href="canOpenDriver_8c-source.html#l00505">canSend()</a>, <a class="el" href="can_8h-source.html#l00042">Message::cob_id</a>, <a class="el" href="lifegrd_8c-source.html#l00067">ConsumerHearbeatAlarm()</a>, <a class="el" href="data_8h-source.html#l00069">struct_CO_Data::ConsumerHeartbeatCount</a>, <a class="el" href="data_8h-source.html#l00070">struct_CO_Data::ConsumerHeartbeatEntries</a>, <a class="el" href="data_8h-source.html#l00071">struct_CO_Data::ConsumerHeartBeatTimers</a>, <a class="el" href="timer_8h-source.html#l00045">struct_s_timer_entry::d</a>, <a class="el" href="can_8h-source.html#l00046">Message::data</a>, <a class="el" href="timer_8c-source.html#l00112">DelAlarm()</a>, <a class="el" href="objdictdef_8h-source.html#l00120">GET_NODE_ID</a>, <a class="el" href="states_8h.html#80401a8f6d29787e07427b2baf630538de69e6bdd47a9d7dae023237acdaad5e">Initialisation</a>, <a class="el" href="can_8h-source.html#l00045">Message::len</a>, <a class="el" href="hcs12_2applicfg_8h-source.html#l00156">MS_TO_TIMEVAL</a>, <a class="el" href="hcs12_2applicfg_8h-source.html#l00190">MSG_WAR</a>, <a class="el" href="data_8h-source.html#l00075">struct_CO_Data::NMTable</a>, <a class="el" href="data_8h-source.html#l00061">struct_CO_Data::nodeState</a>, <a class="el" href="can_8h-source.html#l00043">Message::rtr</a>, <a class="el" href="timer_8c-source.html#l00057">SetAlarm()</a>, <a class="el" href="hcs12_2applicfg_8h-source.html#l00150">TIMEVAL</a>, <a class="el" href="data_8h-source.html#l00086">struct_CO_Data::toggle</a>, <a class="el" href="states_8h.html#80401a8f6d29787e07427b2baf630538c10f9d2ed7c3268d46023240e3bef9b9">Unknown_state</a>, <a class="el" href="hcs12_2applicfg_8h-source.html#l00141">UNS32</a>, <a class="el" href="hcs12_2applicfg_8h-source.html#l00139">UNS8</a>, and <a class="el" href="can_8h-source.html#l00036">SHORT_CAN::w</a>.
<p>
Referenced by <a class="el" href="states_8c-source.html#l00065">canDispatch()</a>.
<p>
Here is the call graph for this function:<p><center><img src="lifegrd_8c_5b34a311b7b97bb79db8e729c2dcbf36_cgraph.png" border="0" usemap="#lifegrd_8c_5b34a311b7b97bb79db8e729c2dcbf36_cgraph_map" alt=""></center>
<map name="lifegrd_8c_5b34a311b7b97bb79db8e729c2dcbf36_cgraph_map">
<area href="canOpenDriver_8c.html#fab789b9b2ee0ab6c6f27e67d6c03661" shape="rect" coords="255,5,321,32" alt="">
<area href="lifegrd_8c.html#f01de9def215369ece4214cce5871508" shape="rect" coords="209,56,367,83" alt="">
<area href="timer_8c.html#12fe6467e1df03cc40dd6f76123c99f6" shape="rect" coords="251,107,325,133" alt="">
<area href="timer_8c.html#956b22f24089db4c367f40199f838a20" shape="rect" coords="252,157,324,184" alt="">
<area href="canOpenDriver_8c.html#cd855997446329e6b6338fe8644edf11" shape="rect" coords="416,5,528,32" alt="">
</map>
</div>
</div><p>
<a class="anchor" name="a296a819d9aedc0d7781774390908000"></a><!-- doxytag: member="lifegrd.c::ProducerHearbeatAlarm" ref="a296a819d9aedc0d7781774390908000" args="(CO_Data *d, UNS32 id)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ProducerHearbeatAlarm </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structstruct__CO__Data.html">CO_Data</a> * </td>
<td class="paramname"> <em>d</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">UNS32 </td>
<td class="paramname"> <em>id</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>
The Consumer Timer Callback<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>d</em> </td><td></td></tr>
<tr><td valign="top"></td><td valign="top"><em>id</em> </td><td></td></tr>
</table>
</dl>
<p>
Definition at line <a class="el" href="lifegrd_8c-source.html#l00161">161</a> of file <a class="el" href="lifegrd_8c-source.html">lifegrd.c</a>.
<p>
References <a class="el" href="data_8h-source.html#l00047">struct_CO_Data::bDeviceNodeId</a>, <a class="el" href="data_8h-source.html#l00087">struct_CO_Data::canHandle</a>, <a class="el" href="canOpenDriver_8c-source.html#l00505">canSend()</a>, <a class="el" href="can_8h-source.html#l00042">Message::cob_id</a>, <a class="el" href="timer_8h-source.html#l00045">struct_s_timer_entry::d</a>, <a class="el" href="can_8h-source.html#l00046">Message::data</a>, <a class="el" href="timer_8c-source.html#l00112">DelAlarm()</a>, <a class="el" href="can_8h-source.html#l00045">Message::len</a>, <a class="el" href="hcs12_2applicfg_8h-source.html#l00190">MSG_WAR</a>, <a class="el" href="data_8h-source.html#l00061">struct_CO_Data::nodeState</a>, <a class="el" href="data_8h-source.html#l00072">struct_CO_Data::ProducerHeartBeatTime</a>, <a class="el" href="data_8h-source.html#l00073">struct_CO_Data::ProducerHeartBeatTimer</a>, <a class="el" href="can_8h-source.html#l00043">Message::rtr</a>, <a class="el" href="hcs12_2applicfg_8h-source.html#l00139">UNS8</a>, and <a class="el" href="can_8h-source.html#l00036">SHORT_CAN::w</a>.
<p>
Referenced by <a class="el" href="lifegrd_8c-source.html#l00206">heartbeatInit()</a>.
<p>
Here is the call graph for this function:<p><center><img src="lifegrd_8c_a296a819d9aedc0d7781774390908000_cgraph.png" border="0" usemap="#lifegrd_8c_a296a819d9aedc0d7781774390908000_cgraph_map" alt=""></center>
<map name="lifegrd_8c_a296a819d9aedc0d7781774390908000_cgraph_map">
<area href="canOpenDriver_8c.html#fab789b9b2ee0ab6c6f27e67d6c03661" shape="rect" coords="209,5,276,32" alt="">
<area href="timer_8c.html#12fe6467e1df03cc40dd6f76123c99f6" shape="rect" coords="205,56,280,83" alt="">
<area href="canOpenDriver_8c.html#cd855997446329e6b6338fe8644edf11" shape="rect" coords="328,5,440,32" alt="">
</map>
</div>
</div><p>
<hr size="1"><address style="align: right;"><small>Generated on Mon Jul 2 19:10:37 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>