Sophie

Sophie

distrib > Fedora > 14 > x86_64 > by-pkgid > 3ebaf504d69f581a8834e53e04e712a5 > files > 212

gearbox-devel-9.11-6.fc14.i686.rpm

<!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>GearBox Project</title>

<link rel="icon" href="gbx_icon_cardbox_sky.png" type="image/png">
<link rel="shortcut icon" href="gbx_icon_cardbox_sky.png" type="image/png">

<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
<!-- Google Analytics -->
<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
var pageTracker = _gat._getTracker("UA-3583782-1");
pageTracker._initData();
pageTracker._trackPageview();
</script>
<!-- Returning you to your regular programming -->
</head><body>

<!-- Header -->

<table border="0" cellspacing="0" cellpadding="0">

<tr><!-- create row -->

<!-- spacer cell -->
<!-- #CC CC CC -->
<td rowspan="1" colspan="1" bgcolor="#EEEEEE">&nbsp;&nbsp;&nbsp;&nbsp;</td>

<!-- menu cell -->
<td width="170" rowspan="1" colspan="1" align="left" valign="top" bgcolor="#EEEEEE">


<p>&nbsp;</p>
<p align="center"><a href="index.html"><img src="gbx_logo_cardbox_sky_150x150.png"></a></p><br>

<strong>INTRODUCTION</strong><br>
<strong><a href="gbx_doc_overview.html" style="text-decoration:none">Overview</a></strong><br>
<strong><a href="gbx_doc_getting.html" style="text-decoration:none">Download and Install</a></strong><br>
<!-- <strong><a href="gbx_doc_quickstart.html" style="text-decoration:none">Quick Start</a></strong><br> -->
<strong><a href="gbx_doc_documentation.html" style="text-decoration:none">Documentation</a></strong><br>
<strong><a href="gbx_doc_publications.html" style="text-decoration:none">Publications</a></strong><br>
<br>

<strong>REPOSITORY</strong><br>
<strong><a href="group__gbx__libs.html" style="text-decoration:none">Libraries</a></strong><br>
<!-- <strong><a href="group__gbx__utils.html" style="text-decoration:none">Utilities</a></strong><br> -->
<br>

<strong>DEVELOPER</strong><br>

<!--<strong><a href="gbx_doc_tutorials.html" style="text-decoration:none">Tutorials</a></strong><br>
<strong><a href="group__gbx__examples.html" style="text-decoration:none">Examples</a></strong><br>-->
<strong><a href="gbx_doc_devguide.html" style="text-decoration:none">Dev Guide</a></strong><br>
<!-- 
<strong><a href="gbx_doc_faq.html" style="text-decoration:none">FAQ</a></strong><br>
-->
<strong><a href="http://cdash.acfr.usyd.edu.au/index.php?project=Gearbox" style="text-decoration:none">Dashboard</a></strong><br>
<!--<strong><a href="http://wiki2.cas.edu.au/orca">Wiki</a></strong><br>
login/pass: orca/orca<br>-->
<br>

<strong>PEOPLE</strong><br>
<strong><a href="gbx_doc_contributors.html" style="text-decoration:none">Contributors</a></strong><br>
<strong><a href="gbx_doc_users.html" style="text-decoration:none">Users</a></strong><br>
<br>

<a href="http://sourceforge.net"><img src="http://sourceforge.net/sflogo.php?group_id=216468&amp;type=2" width="125" height="37" border="0" alt="SourceForge.net Logo" /></a><br>
<strong><a href="http://sourceforge.net/projects/gearbox">Project</a></strong><br>
<strong><a href="http://sourceforge.net/project/showfiles.php?group_id=216468">Download</a></strong><br>
<!--<strong><a href="http://sourceforge.net/tracker/?group_id=216468">Bugs/Feedback</a></strong><br>-->
<strong><a href="http://sourceforge.net/mail/?group_id=216468">Mailing lists</a></strong></p>
<p>&nbsp;</p>

</td><!-- /menu cell -->

<!-- one grey spacer cells -->
<td rowspan="1" colspan="1" bgcolor="#EEEEEE">&nbsp;&nbsp;&nbsp;&nbsp;</td>

<!-- one white spacer cells -->
<td rowspan="1" colspan="1">&nbsp;&nbsp;&nbsp;&nbsp;</td>

<!-- main content cell -->
<td rowspan="1" colspan="1" align="left" valign="top">


<!-- Generated by Doxygen 1.6.2-20100208 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><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="annotated.html"><span>Class&nbsp;List</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
    </ul>
  </div>
  <div class="navpath"><a class="el" href="namespacegbxutilacfr.html">gbxutilacfr</a>::<a class="el" href="classgbxutilacfr_1_1TrivialStatus.html">TrivialStatus</a>
  </div>
</div>
<div class="contents">
<h1>gbxutilacfr::TrivialStatus Class Reference</h1><!-- doxytag: class="gbxutilacfr::TrivialStatus" --><!-- doxytag: inherits="gbxutilacfr::Status" -->
<p>A trivial implementation of the status API which does not assemble information.  
<a href="#_details">More...</a></p>

<p><code>#include &lt;<a class="el" href="trivialstatus_8h_source.html">trivialstatus.h</a>&gt;</code></p>

<p>Inherits <a class="el" href="classgbxutilacfr_1_1Status.html">gbxutilacfr::Status</a>.</p>

<p><a href="classgbxutilacfr_1_1TrivialStatus-members.html">List of all members.</a></p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgbxutilacfr_1_1TrivialStatus.html#abe8b8746c3501f9ccfc7bca6e18d827f">addSubsystem</a> (const std::string &amp;subsystem, double maxHeartbeatIntervalSec=-1.0, <a class="el" href="namespacegbxutilacfr.html#a83955362590d05dc433ff5ba377a704b">SubsystemType</a> type=SubsystemStandard)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgbxutilacfr_1_1TrivialStatus.html#ad76e6ec9ebe22eb1276b8514d7646c40">removeSubsystem</a> (const std::string &amp;subsystem)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af926a3b798cabc13cfe115a574e7fcc4"></a><!-- doxytag: member="gbxutilacfr::TrivialStatus::subsystems" ref="af926a3b798cabc13cfe115a574e7fcc4" args="()" -->
virtual std::vector&lt; std::string &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgbxutilacfr_1_1TrivialStatus.html#af926a3b798cabc13cfe115a574e7fcc4">subsystems</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Does not keep track of subsystems, returns empty vector. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab07187abe677a3dfbf0c429dd9cc95ce"></a><!-- doxytag: member="gbxutilacfr::TrivialStatus::subsystemStatus" ref="ab07187abe677a3dfbf0c429dd9cc95ce" args="(const std::string &amp;subsystem)" -->
virtual <a class="el" href="structgbxutilacfr_1_1SubsystemStatus.html">SubsystemStatus</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgbxutilacfr_1_1TrivialStatus.html#ab07187abe677a3dfbf0c429dd9cc95ce">subsystemStatus</a> (const std::string &amp;subsystem)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Does not keep track of status, throws <a class="el" href="classgbxutilacfr_1_1Exception.html" title="Base class for all GbxUtilAcfr exceptions.">Exception</a> on any query. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae2236dfc2f01e1384f36d7f940f467b3"></a><!-- doxytag: member="gbxutilacfr::TrivialStatus::infrastructureState" ref="ae2236dfc2f01e1384f36d7f940f467b3" args="()" -->
virtual <a class="el" href="namespacegbxutilacfr.html#ac09bf420d1b5cd55c617623abbc4587a">SubsystemState</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgbxutilacfr_1_1TrivialStatus.html#ae2236dfc2f01e1384f36d7f940f467b3">infrastructureState</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Does not keep track of infrastructure state, throws <a class="el" href="classgbxutilacfr_1_1Exception.html" title="Base class for all GbxUtilAcfr exceptions.">Exception</a> on any query. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgbxutilacfr_1_1TrivialStatus.html#ac44c93f3419bcc334d1b5f52a6aa2d47">setMaxHeartbeatInterval</a> (const std::string &amp;subsystem, double interval)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af581f5ecdcc705814479d6371717cbf9"></a><!-- doxytag: member="gbxutilacfr::TrivialStatus::setSubsystemType" ref="af581f5ecdcc705814479d6371717cbf9" args="(const std::string &amp;subsystem, SubsystemType type)" -->
virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgbxutilacfr_1_1TrivialStatus.html#af581f5ecdcc705814479d6371717cbf9">setSubsystemType</a> (const std::string &amp;subsystem, <a class="el" href="namespacegbxutilacfr.html#a83955362590d05dc433ff5ba377a704b">SubsystemType</a> type)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the subsystem type which describes the expected behavior of the subsystem. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgbxutilacfr_1_1TrivialStatus.html#ade2a6797c8dceeed49811f544f8821a1">setSubsystemStatus</a> (const std::string &amp;subsystem, <a class="el" href="namespacegbxutilacfr.html#ac09bf420d1b5cd55c617623abbc4587a">SubsystemState</a> state, <a class="el" href="namespacegbxutilacfr.html#a0571161a2ff12c42ebcf2179f88c8a7b">SubsystemHealth</a> health, const std::string &amp;msg=&quot;&quot;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgbxutilacfr_1_1TrivialStatus.html#a2f6d7fbb93262dbbb941f96050ea5a8f">initialising</a> (const std::string &amp;subsystem, const std::string &amp;msg=&quot;&quot;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgbxutilacfr_1_1TrivialStatus.html#a75eb599945a6ad0dde46d08bfb99337d">working</a> (const std::string &amp;subsystem, const std::string &amp;msg=&quot;&quot;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgbxutilacfr_1_1TrivialStatus.html#ac10944d5e25ad92fda77f760d3634e8c">finalising</a> (const std::string &amp;subsystem, const std::string &amp;msg=&quot;&quot;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgbxutilacfr_1_1TrivialStatus.html#a6748d13b335bee6312633f3b7a1c28b5">ok</a> (const std::string &amp;subsystem, const std::string &amp;msg=&quot;&quot;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgbxutilacfr_1_1TrivialStatus.html#ab220a9166c3a3bd1cd4df31e491e4136">warning</a> (const std::string &amp;subsystem, const std::string &amp;msg)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgbxutilacfr_1_1TrivialStatus.html#a78e60a644303b88decb62a572ae6347d">fault</a> (const std::string &amp;subsystem, const std::string &amp;msg)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgbxutilacfr_1_1TrivialStatus.html#aec41b1a88b529dd85cddcf948a0051c9">heartbeat</a> (const std::string &amp;subsystem)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgbxutilacfr_1_1TrivialStatus.html#aaaddd4a06d83adb543971752e6962cac">message</a> (const std::string &amp;subsystem, const std::string &amp;msg)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab8bd621571afaf2945aad8f9bbb3fb73"></a><!-- doxytag: member="gbxutilacfr::TrivialStatus::infrastructureInitialising" ref="ab8bd621571afaf2945aad8f9bbb3fb73" args="()" -->
virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgbxutilacfr_1_1TrivialStatus.html#ab8bd621571afaf2945aad8f9bbb3fb73">infrastructureInitialising</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets state of component infrastructure to Initialising. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abc85235b16cbd79f681d11a2b593bc49"></a><!-- doxytag: member="gbxutilacfr::TrivialStatus::infrastructureWorking" ref="abc85235b16cbd79f681d11a2b593bc49" args="()" -->
virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgbxutilacfr_1_1TrivialStatus.html#abc85235b16cbd79f681d11a2b593bc49">infrastructureWorking</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets state of component infrastructure to Working. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac807cb7b8e35ff5b313931d1140a0408"></a><!-- doxytag: member="gbxutilacfr::TrivialStatus::infrastructureFinalising" ref="ac807cb7b8e35ff5b313931d1140a0408" args="()" -->
virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgbxutilacfr_1_1TrivialStatus.html#ac807cb7b8e35ff5b313931d1140a0408">infrastructureFinalising</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets state of component infrastructure to Finalising. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgbxutilacfr_1_1TrivialStatus.html#a815e879294b6e6b3cfdf424487e6afcc">process</a> ()</td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>A trivial implementation of the status API which does not assemble information. </p>
<p>System status information is not assembled but all changes are traced to <a class="el" href="classgbxutilacfr_1_1Tracer.html" title="Local and remote tracing.">Tracer</a>.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classgbxutilacfr_1_1Status.html" title="Local interface to component status.">Status</a> </dd></dl>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="abe8b8746c3501f9ccfc7bca6e18d827f"></a><!-- doxytag: member="gbxutilacfr::TrivialStatus::addSubsystem" ref="abe8b8746c3501f9ccfc7bca6e18d827f" args="(const std::string &amp;subsystem, double maxHeartbeatIntervalSec=&#45;1.0, SubsystemType type=SubsystemStandard)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gbxutilacfr::TrivialStatus::addSubsystem </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>subsystem</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>maxHeartbeatIntervalSec</em> = <code>-1.0</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespacegbxutilacfr.html#a83955362590d05dc433ff5ba377a704b">SubsystemType</a>&nbsp;</td>
          <td class="paramname"> <em>type</em> = <code>SubsystemStandard</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Adds a new subsystem to the system status descriptor. This command must be called before actually modifying the subsystem status, i.e. all other status commands will raise an exception if a subsystem with that name does not already exists.</p>
<p>An <a class="el" href="classgbxutilacfr_1_1Exception.html" title="Base class for all GbxUtilAcfr exceptions.">Exception</a> is also raised when trying to add a subsystem with an existing name.</p>
<p>It is possible to specify the maximum expected interval between heartbeats. See <a class="el" href="classgbxutilacfr_1_1TrivialStatus.html#ac44c93f3419bcc334d1b5f52a6aa2d47">setMaxHeartbeatInterval()</a> for details.</p>
<p>It is also possible to describe the expected behavior of the subsystem by specifying SubsystemType. See <a class="el" href="classgbxutilacfr_1_1TrivialStatus.html#af581f5ecdcc705814479d6371717cbf9" title="Sets the subsystem type which describes the expected behavior of the subsystem.">setSubsystemType()</a> for details.</p>
<p>The initial status of the new subsystem is the same as produced by the empty constructor of <a class="el" href="structgbxutilacfr_1_1SubsystemStatus.html" title="Status for a single subsystem.">SubsystemStatus</a>. </p>

<p>Implements <a class="el" href="classgbxutilacfr_1_1Status.html#a1f708c8e4a5dc7678aa3cbc8ccb2c089">gbxutilacfr::Status</a>.</p>

<p>References <a class="el" href="tracer_8h_source.html#l00141">gbxutilacfr::Tracer::warning()</a>.</p>

</div>
</div>
<a class="anchor" id="a78e60a644303b88decb62a572ae6347d"></a><!-- doxytag: member="gbxutilacfr::TrivialStatus::fault" ref="a78e60a644303b88decb62a572ae6347d" args="(const std::string &amp;subsystem, const std::string &amp;msg)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gbxutilacfr::TrivialStatus::fault </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>subsystem</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>message</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Sets subsystem health to Fault. Throws <a class="el" href="classgbxutilacfr_1_1Exception.html" title="Base class for all GbxUtilAcfr exceptions.">Exception</a> if the subsystem does not exist. </p>

<p>Implements <a class="el" href="classgbxutilacfr_1_1Status.html#adc4866108a8cf874bd22992a890ae566">gbxutilacfr::Status</a>.</p>

<p>References <a class="el" href="status_8h_source.html#l00057">gbxutilacfr::SubsystemFault</a>.</p>

</div>
</div>
<a class="anchor" id="ac10944d5e25ad92fda77f760d3634e8c"></a><!-- doxytag: member="gbxutilacfr::TrivialStatus::finalising" ref="ac10944d5e25ad92fda77f760d3634e8c" args="(const std::string &amp;subsystem, const std::string &amp;msg=&quot;&quot;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gbxutilacfr::TrivialStatus::finalising </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>subsystem</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>message</em> = <code>&quot;&quot;</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Sets state of the subsystem to Finalising. The old message is cleared if a new one is not supplied. Throws <a class="el" href="classgbxutilacfr_1_1Exception.html" title="Base class for all GbxUtilAcfr exceptions.">Exception</a> if the subsystem does not exist. </p>

<p>Implements <a class="el" href="classgbxutilacfr_1_1Status.html#a48d816e2189a76049565505fa4a1951b">gbxutilacfr::Status</a>.</p>

<p>References <a class="el" href="status_8h_source.html#l00041">gbxutilacfr::SubsystemFinalising</a>.</p>

</div>
</div>
<a class="anchor" id="aec41b1a88b529dd85cddcf948a0051c9"></a><!-- doxytag: member="gbxutilacfr::TrivialStatus::heartbeat" ref="aec41b1a88b529dd85cddcf948a0051c9" args="(const std::string &amp;subsystem)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gbxutilacfr::TrivialStatus::heartbeat </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>subsystem</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Record heartbeat from a subsystem: let <a class="el" href="classgbxutilacfr_1_1Status.html" title="Local interface to component status.">Status</a> know the subsystem is alive without modifying its status. Throws <a class="el" href="classgbxutilacfr_1_1Exception.html" title="Base class for all GbxUtilAcfr exceptions.">Exception</a> if the subsystem does not exist. </p>

<p>Implements <a class="el" href="classgbxutilacfr_1_1Status.html#ac8b5c54748f01fa8335280288aef531f">gbxutilacfr::Status</a>.</p>

</div>
</div>
<a class="anchor" id="a2f6d7fbb93262dbbb941f96050ea5a8f"></a><!-- doxytag: member="gbxutilacfr::TrivialStatus::initialising" ref="a2f6d7fbb93262dbbb941f96050ea5a8f" args="(const std::string &amp;subsystem, const std::string &amp;msg=&quot;&quot;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gbxutilacfr::TrivialStatus::initialising </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>subsystem</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>message</em> = <code>&quot;&quot;</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Sets state of the subsystem to Initialising. The old message is cleared if a new one is not supplied. Throws <a class="el" href="classgbxutilacfr_1_1Exception.html" title="Base class for all GbxUtilAcfr exceptions.">Exception</a> if the subsystem does not exist. </p>

<p>Implements <a class="el" href="classgbxutilacfr_1_1Status.html#aac485fed7c0dfa6601140495b5be4e80">gbxutilacfr::Status</a>.</p>

<p>References <a class="el" href="status_8h_source.html#l00037">gbxutilacfr::SubsystemInitialising</a>.</p>

</div>
</div>
<a class="anchor" id="aaaddd4a06d83adb543971752e6962cac"></a><!-- doxytag: member="gbxutilacfr::TrivialStatus::message" ref="aaaddd4a06d83adb543971752e6962cac" args="(const std::string &amp;subsystem, const std::string &amp;msg)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gbxutilacfr::TrivialStatus::message </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>subsystem</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>message</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Change the human-readable message for a subsystem but keep the previous state and health information. Throws <a class="el" href="classgbxutilacfr_1_1Exception.html" title="Base class for all GbxUtilAcfr exceptions.">Exception</a> if the subsystem does not exist. </p>

<p>Implements <a class="el" href="classgbxutilacfr_1_1Status.html#ad5b71c356d338e7d3e540aab5221a75d">gbxutilacfr::Status</a>.</p>

</div>
</div>
<a class="anchor" id="a6748d13b335bee6312633f3b7a1c28b5"></a><!-- doxytag: member="gbxutilacfr::TrivialStatus::ok" ref="a6748d13b335bee6312633f3b7a1c28b5" args="(const std::string &amp;subsystem, const std::string &amp;msg=&quot;&quot;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gbxutilacfr::TrivialStatus::ok </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>subsystem</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>message</em> = <code>&quot;&quot;</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Sets subsystem health to Ok. The old message is cleared if a new one is not supplied. Throws <a class="el" href="classgbxutilacfr_1_1Exception.html" title="Base class for all GbxUtilAcfr exceptions.">Exception</a> if the subsystem does not exist. </p>

<p>Implements <a class="el" href="classgbxutilacfr_1_1Status.html#af5c36a594c2edaa044837656ec0ac8c6">gbxutilacfr::Status</a>.</p>

<p>References <a class="el" href="status_8h_source.html#l00053">gbxutilacfr::SubsystemOk</a>.</p>

</div>
</div>
<a class="anchor" id="a815e879294b6e6b3cfdf424487e6afcc"></a><!-- doxytag: member="gbxutilacfr::TrivialStatus::process" ref="a815e879294b6e6b3cfdf424487e6afcc" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gbxutilacfr::TrivialStatus::process </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>This function must be called periodically in order for status publishing to happen and stalled susbsystems identified. </p>

<p>Implements <a class="el" href="classgbxutilacfr_1_1Status.html#aae4fe09753ae295fb0d9493f1316a51b">gbxutilacfr::Status</a>.</p>

</div>
</div>
<a class="anchor" id="ad76e6ec9ebe22eb1276b8514d7646c40"></a><!-- doxytag: member="gbxutilacfr::TrivialStatus::removeSubsystem" ref="ad76e6ec9ebe22eb1276b8514d7646c40" args="(const std::string &amp;subsystem)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gbxutilacfr::TrivialStatus::removeSubsystem </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>subsystem</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Removes a subsystem from the status descriptor. Throws <a class="el" href="classgbxutilacfr_1_1Exception.html" title="Base class for all GbxUtilAcfr exceptions.">Exception</a> if the subsystem does not exist. </p>

<p>Implements <a class="el" href="classgbxutilacfr_1_1Status.html#a548f87215c41609b329408fb47e064e3">gbxutilacfr::Status</a>.</p>

<p>References <a class="el" href="tracer_8h_source.html#l00141">gbxutilacfr::Tracer::warning()</a>.</p>

</div>
</div>
<a class="anchor" id="ac44c93f3419bcc334d1b5f52a6aa2d47"></a><!-- doxytag: member="gbxutilacfr::TrivialStatus::setMaxHeartbeatInterval" ref="ac44c93f3419bcc334d1b5f52a6aa2d47" args="(const std::string &amp;subsystem, double interval)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gbxutilacfr::TrivialStatus::setMaxHeartbeatInterval </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>subsystem</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>intervalSec</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Sets the maximum expected interval between heartbeats (in seconds). When time since the last heartbeat exceeds the specified value, the subsystem is considered stalled. Negative interval means infinite interval. Throws <a class="el" href="classgbxutilacfr_1_1Exception.html" title="Base class for all GbxUtilAcfr exceptions.">Exception</a> if the subsystem does not exist. </p>

<p>Implements <a class="el" href="classgbxutilacfr_1_1Status.html#a1b1ff1a1206ff6d8f336a52b40e20a81">gbxutilacfr::Status</a>.</p>

</div>
</div>
<a class="anchor" id="ade2a6797c8dceeed49811f544f8821a1"></a><!-- doxytag: member="gbxutilacfr::TrivialStatus::setSubsystemStatus" ref="ade2a6797c8dceeed49811f544f8821a1" args="(const std::string &amp;subsystem, SubsystemState state, SubsystemHealth health, const std::string &amp;msg=&quot;&quot;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gbxutilacfr::TrivialStatus::setSubsystemStatus </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>subsystem</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespacegbxutilacfr.html#ac09bf420d1b5cd55c617623abbc4587a">SubsystemState</a>&nbsp;</td>
          <td class="paramname"> <em>state</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespacegbxutilacfr.html#a0571161a2ff12c42ebcf2179f88c8a7b">SubsystemHealth</a>&nbsp;</td>
          <td class="paramname"> <em>health</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>message</em> = <code>&quot;&quot;</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Sets the status of a subsystem (both state and health) in an atomic operation. Use this method when both state and health have changed. Throws <a class="el" href="classgbxutilacfr_1_1Exception.html" title="Base class for all GbxUtilAcfr exceptions.">Exception</a> if the subsystem does not exist. </p>

<p>Implements <a class="el" href="classgbxutilacfr_1_1Status.html#afce01428dd3f25b59e4864c72774e760">gbxutilacfr::Status</a>.</p>

</div>
</div>
<a class="anchor" id="ab220a9166c3a3bd1cd4df31e491e4136"></a><!-- doxytag: member="gbxutilacfr::TrivialStatus::warning" ref="ab220a9166c3a3bd1cd4df31e491e4136" args="(const std::string &amp;subsystem, const std::string &amp;msg)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gbxutilacfr::TrivialStatus::warning </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>subsystem</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>message</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Sets subsystem health to Warning. Throws <a class="el" href="classgbxutilacfr_1_1Exception.html" title="Base class for all GbxUtilAcfr exceptions.">Exception</a> if the subsystem does not exist. </p>

<p>Implements <a class="el" href="classgbxutilacfr_1_1Status.html#a9a5b84a1cca2bab77df26d8d539ed0ee">gbxutilacfr::Status</a>.</p>

<p>References <a class="el" href="status_8h_source.html#l00055">gbxutilacfr::SubsystemWarning</a>.</p>

</div>
</div>
<a class="anchor" id="a75eb599945a6ad0dde46d08bfb99337d"></a><!-- doxytag: member="gbxutilacfr::TrivialStatus::working" ref="a75eb599945a6ad0dde46d08bfb99337d" args="(const std::string &amp;subsystem, const std::string &amp;msg=&quot;&quot;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gbxutilacfr::TrivialStatus::working </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>subsystem</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>message</em> = <code>&quot;&quot;</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Sets state of the subsystem to Working. The old message is cleared if a new one is not supplied. Throws <a class="el" href="classgbxutilacfr_1_1Exception.html" title="Base class for all GbxUtilAcfr exceptions.">Exception</a> if the subsystem does not exist. </p>

<p>Implements <a class="el" href="classgbxutilacfr_1_1Status.html#a884035256364070f948689576fa6c5a5">gbxutilacfr::Status</a>.</p>

<p>References <a class="el" href="status_8h_source.html#l00039">gbxutilacfr::SubsystemWorking</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="trivialstatus_8h_source.html">trivialstatus.h</a></li>
<li>trivialstatus.cpp</li>
</ul>
</div>

            </td>
            <td colspan="1">&nbsp;</td>
         </tr>
        </table>
<!-- end of table -->

 <hr size="1"><address style="align: right;"><small>Generated for GearBox by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.5 </small></address>
</body>
</html>