<!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: include/lifegrd.h 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_2209bfb26110ae52d50da4cefad5e72f.html">include</a></div>
<h1>lifegrd.h File Reference</h1><code>#include <<a class="el" href="win32_2applicfg_8h-source.html">applicfg.h</a>></code><br>
<code>#include "<a class="el" href="data_8h-source.html">data.h</a>"</code><br>
<p>
Include dependency graph for lifegrd.h:<p><center><img src="lifegrd_8h__incl.png" border="0" usemap="#include/lifegrd.h_map" alt=""></center>
<map name="include/lifegrd.h_map">
<area href="win32_2applicfg_8h.html" shape="rect" coords="579,323,667,347" alt="">
<area href="data_8h.html" shape="rect" coords="188,299,252,323" alt="">
<area href="def_8h.html" shape="rect" coords="463,448,519,472" alt="">
<area href="can_8h.html" shape="rect" coords="462,127,520,151" alt="">
<area href="objdictdef_8h.html" shape="rect" coords="304,107,406,131" alt="">
<area href="objacces_8h.html" shape="rect" coords="308,251,402,275" alt="">
<area href="sdo_8h.html" shape="rect" coords="326,496,384,520" alt="">
<area href="pdo_8h.html" shape="rect" coords="326,397,384,421" alt="">
<area href="states_8h.html" shape="rect" coords="318,299,392,323" alt="">
<area href="sync_8h.html" shape="rect" coords="322,155,388,179" alt="">
<area href="nmtMaster_8h.html" shape="rect" coords="302,203,408,227" alt="">
<area href="config_8h.html" shape="rect" coords="586,448,660,472" alt="">
<area href="timer_8h.html" shape="rect" coords="456,496,526,520" alt="">
<area href="win32_2timerscfg_8h.html" shape="rect" coords="574,496,672,520" alt="">
</map>
<p>
This graph shows which files directly or indirectly include this file:<p><center><img src="lifegrd_8h__dep__incl.png" border="0" usemap="#include/lifegrd.hdep_map" alt=""></center>
<map name="include/lifegrd.hdep_map">
<area href="lifegrd_8c.html" shape="rect" coords="744,228,846,252" alt="">
<area href="data_8h.html" shape="rect" coords="188,475,306,499" alt="">
<area href="sync_8c.html" shape="rect" coords="751,303,839,327" alt="">
<area href="unix_8c.html" shape="rect" coords="722,364,868,388" alt="">
<area href="objdict_8h.html" shape="rect" coords="372,427,655,451" alt="">
<area href="TestMasterSlave_2TestMaster_8h.html" shape="rect" coords="370,475,658,499" alt="">
<area href="TestSlave_8h.html" shape="rect" coords="372,523,655,547" alt="">
<area href="TestMasterMicroMod_2TestMaster_8h.html" shape="rect" coords="355,571,672,595" alt="">
<area href="win32test_8h.html" shape="rect" coords="394,619,634,643" alt="">
<area href="objacces_8h.html" shape="rect" coords="440,667,587,691" alt="">
<area href="nmtMaster_8h.html" shape="rect" coords="434,715,594,739" alt="">
<area href="nmtSlave_8h.html" shape="rect" coords="438,763,590,787" alt="">
<area href="timer_8h.html" shape="rect" coords="452,886,575,910" alt="">
<area href="sdo_8h.html" shape="rect" coords="739,824,851,848" alt="">
<area href="pdo_8h.html" shape="rect" coords="456,83,571,107" alt="">
<area href="states_8h.html" shape="rect" coords="450,131,578,155" alt="">
<area href="unix_2canfestival_8h.html" shape="rect" coords="416,179,611,203" alt="">
<area href="win32_2canfestival_8h.html" shape="rect" coords="410,278,618,302" alt="">
</map>
<p>
<a href="lifegrd_8h-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>Typedefs</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef void(*) </td><td class="memItemRight" valign="bottom"><a class="el" href="lifegrd_8h.html#eca3959d33fceb33487363a0493d3b7d">heartbeatError_t</a> (UNS8)</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_8h.html#5249eb891f5677b80ccf01e604748524">_heartbeatError</a> (UNS8 heartbeatID)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="states_8h.html#5891f63a4c9243179838389a93d084e2">e_nodeState</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="lifegrd_8h.html#627254070e45c23f1776e12c524492ff">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_8h.html#8896f6846e4d020390f6953f3d98aa21">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_8h.html#1b73047269c2a02065e12af18c6053c7">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_8h.html#b3248945e06e8b05518beddf665f174d">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>
</table>
<hr><h2>Typedef Documentation</h2>
<a class="anchor" name="eca3959d33fceb33487363a0493d3b7d"></a><!-- doxytag: member="lifegrd.h::heartbeatError_t" ref="eca3959d33fceb33487363a0493d3b7d" args="(UNS8)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef void(*) <a class="el" href="lifegrd_8h.html#eca3959d33fceb33487363a0493d3b7d">heartbeatError_t</a>(UNS8) </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<p>
Definition at line <a class="el" href="lifegrd_8h-source.html#l00029">29</a> of file <a class="el" href="lifegrd_8h-source.html">lifegrd.h</a>.
</div>
</div><p>
<hr><h2>Function Documentation</h2>
<a class="anchor" name="5249eb891f5677b80ccf01e604748524"></a><!-- doxytag: member="lifegrd.h::_heartbeatError" ref="5249eb891f5677b80ccf01e604748524" 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="627254070e45c23f1776e12c524492ff"></a><!-- doxytag: member="lifegrd.h::getNodeState" ref="627254070e45c23f1776e12c524492ff" 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#5891f63a4c9243179838389a93d084e2">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="8896f6846e4d020390f6953f3d98aa21"></a><!-- doxytag: member="lifegrd.h::heartbeatInit" ref="8896f6846e4d020390f6953f3d98aa21" 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#l00089">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_8h_8896f6846e4d020390f6953f3d98aa21_cgraph.png" border="0" usemap="#lifegrd_8h_8896f6846e4d020390f6953f3d98aa21_cgraph_map" alt=""></center>
<map name="lifegrd_8h_8896f6846e4d020390f6953f3d98aa21_cgraph_map">
<area href="lifegrd_8c.html#e3cd4656f5b2a37d4b8d364293538198" shape="rect" coords="608,107,800,131" alt="">
<area href="lifegrd_8c.html#098c81fb9326fb2c7b43e88a55ce1368" shape="rect" coords="164,155,380,179" alt="">
<area href="lifegrd_8c.html#626b7d9e527a898682d9122f91454de9" shape="rect" coords="612,155,796,179" alt="">
<area href="objacces_8c.html#514e7b9c13835a86446b1cd38fa34049" shape="rect" coords="597,204,811,228" alt="">
<area href="timer_8c.html#11c2616d78f06ed9144ef662f757b128" shape="rect" coords="663,253,745,277" alt="">
<area href="lifegrd_8c.html#8896f6846e4d020390f6953f3d98aa21" shape="rect" coords="435,155,544,179" alt="">
<area href="lifegrd_8c.html#1b73047269c2a02065e12af18c6053c7" shape="rect" coords="431,107,548,131" alt="">
<area href="canOpenDriver_8c.html#b57b4b3c000e9f61135175495e874977" shape="rect" coords="875,155,955,179" alt="">
<area href="timer_8c.html#991b3cfaac2f201b14d5530f75985c21" shape="rect" coords="873,83,956,107" alt="">
<area href="objacces_8c.html#11e9f24840d05a6a622955b51f91af53" shape="rect" coords="859,204,971,228" alt="">
</map>
</div>
</div><p>
<a class="anchor" name="1b73047269c2a02065e12af18c6053c7"></a><!-- doxytag: member="lifegrd.h::heartbeatStop" ref="1b73047269c2a02065e12af18c6053c7" 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_8h_1b73047269c2a02065e12af18c6053c7_cgraph.png" border="0" usemap="#lifegrd_8h_1b73047269c2a02065e12af18c6053c7_cgraph_map" alt=""></center>
<map name="lifegrd_8h_1b73047269c2a02065e12af18c6053c7_cgraph_map">
<area href="timer_8c.html#991b3cfaac2f201b14d5530f75985c21" shape="rect" coords="175,6,257,30" alt="">
</map>
</div>
</div><p>
<a class="anchor" name="b3248945e06e8b05518beddf665f174d"></a><!-- doxytag: member="lifegrd.h::proceedNODE_GUARD" ref="b3248945e06e8b05518beddf665f174d" 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#l00090">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#l00132">GET_NODE_ID</a>, <a class="el" href="states_8h.html#3136d2815abe9d284f985e0a7ec68646eb3ae26d7a1629aa0fc6c83f46306cf5">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#l00089">struct_CO_Data::toggle</a>, <a class="el" href="states_8h.html#3136d2815abe9d284f985e0a7ec68646cb4b5cb64be091d76f846380eb0afe59">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_8h_b3248945e06e8b05518beddf665f174d_cgraph.png" border="0" usemap="#lifegrd_8h_b3248945e06e8b05518beddf665f174d_cgraph_map" alt=""></center>
<map name="lifegrd_8h_b3248945e06e8b05518beddf665f174d_cgraph_map">
<area href="canOpenDriver_8c.html#b57b4b3c000e9f61135175495e874977" shape="rect" coords="284,6,364,30" alt="">
<area href="lifegrd_8c.html#e3cd4656f5b2a37d4b8d364293538198" shape="rect" coords="228,54,420,78" alt="">
<area href="timer_8c.html#991b3cfaac2f201b14d5530f75985c21" shape="rect" coords="283,102,365,126" alt="">
<area href="timer_8c.html#11c2616d78f06ed9144ef662f757b128" shape="rect" coords="283,150,365,174" alt="">
<area href="canOpenDriver_8c.html#2f2d1ed55cfd9d7f85883f8d70d318ba" shape="rect" coords="471,6,601,30" alt="">
</map>
</div>
</div><p>
<hr size="1"><address style="align: right;"><small>Generated on Fri Jun 8 08:51:59 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>