Sophie

Sophie

distrib > Fedora > 16 > i386 > by-pkgid > 4bc66056a634db26a1f4d0845dc41ca6 > files > 4733

mrpt-doc-0.9.5-0.1.20110925svn2670.fc16.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>mrpt::reactivenav::CAbstractReactiveNavigationSystem Class Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<div align="left"><a href="http://www.mrpt.org/">Main MRPT website</a> &gt; <b>C++ reference</b> </div>
<div align="right">
<a href="index.html"><img border="0" src="mrpt_logo.png" alt="MRPT logo"></a>
</div>
<!-- Generated by Doxygen 1.7.5 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;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>
        <div id="MSearchBox" class="MSearchBoxInactive">
          <div class="left">
            <form id="FSearchBox" action="search.php" method="get">
              <img id="MSearchSelect" src="search/mag.png" alt=""/>
              <input type="text" id="MSearchField" name="query" value="Search" size="20" accesskey="S" 
                     onfocus="searchBox.OnSearchFieldFocus(true)" 
                     onblur="searchBox.OnSearchFieldFocus(false)"/>
            </form>
          </div><div class="right"></div>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
  <div id="nav-path" class="navpath">
    <ul>
      <li class="navelem"><a class="el" href="namespacemrpt.html">mrpt</a>      </li>
      <li class="navelem"><a class="el" href="namespacemrpt_1_1reactivenav.html">reactivenav</a>      </li>
      <li class="navelem"><a class="el" href="classmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system.html">CAbstractReactiveNavigationSystem</a>      </li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a> &#124;
<a href="#pri-attribs">Private Attributes</a>  </div>
  <div class="headertitle">
<div class="title">mrpt::reactivenav::CAbstractReactiveNavigationSystem Class Reference</div>  </div>
</div>
<div class="contents">
<!-- doxytag: class="mrpt::reactivenav::CAbstractReactiveNavigationSystem" --><!-- doxytag: inherits="mrpt::utils::CDebugOutputCapable" --><hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>This is the base class for any reactive navigation system. </p>
<p>Here is defined the interface that users will use with derived classes where algorithms are really implemented.</p>
<p>Changes history:</p>
<ul>
<li>30/JUN/2004: Creation (JLBC)</li>
<li>16/SEP/2004: Totally redesigned.</li>
<li>15/SEP/2005: Totally rewritten again, for integration into MRPT Applications Repository.</li>
<li>3/NOV/2009: All functors are finally replaced by the new virtual class <a class="el" href="classmrpt_1_1reactivenav_1_1_c_reactive_interface_implementation.html" title="The pure virtual class that a user of CAbstractReactiveNavigationSystem-derived classes must implemen...">CReactiveInterfaceImplementation</a></li>
</ul>
<p>How to use:</p>
<ul>
<li>A class with callbacks must be defined by the user and provided to the constructor.</li>
<li><a class="el" href="classmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system.html#aaca67df4eff0289cadf22fd7216f8fb8" title="This method must be called periodically in order to effectively run the navigation.">navigationStep()</a> must be called periodically in order to effectively run the navigation. This method will internally call the callbacks to gather sensor data and robot positioning data.</li>
</ul>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classmrpt_1_1reactivenav_1_1_c_reactive_navigation_system.html" title="Implements a reactive navigation system based on TP-Space, with an arbitrary holonomic reactive metho...">CReactiveNavigationSystem</a>, <a class="el" href="classmrpt_1_1reactivenav_1_1_c_reactive_interface_implementation.html" title="The pure virtual class that a user of CAbstractReactiveNavigationSystem-derived classes must implemen...">CReactiveInterfaceImplementation</a> </dd></dl>
</div>
<p><code>#include &lt;<a class="el" href="_c_abstract_reactive_navigation_system_8h_source.html">mrpt/reactivenav/CAbstractReactiveNavigationSystem.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for mrpt::reactivenav::CAbstractReactiveNavigationSystem:</div>
<div class="dyncontent">
<div class="center"><img src="classmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system__inherit__graph.png" border="0" usemap="#mrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system_inherit__map" alt="Inheritance graph"/></div>
<map name="mrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system_inherit__map" id="mrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system_inherit__map">
<area shape="rect" id="node5" href="classmrpt_1_1reactivenav_1_1_c_reactive_navigation_system.html" title="Implements a reactive navigation system based on TP&#45;Space, with an arbitrary holonomic reactive metho..." alt="" coords="30,155,329,181"/><area shape="rect" id="node2" href="classmrpt_1_1utils_1_1_c_debug_output_capable.html" title="This base class provides a common printf&#45;like method to send debug information to std::cout..." alt="" coords="69,5,291,32"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>

<p><a href="classmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system-members.html">List of all members.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system_1_1_t_navigation_params.html">TNavigationParams</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">The struct for configuring the navigation request.  <a href="structmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system_1_1_t_navigation_params.html#details">More...</a><br/></td></tr>
<tr><td colspan="2"><h2><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system.html#a68944a1b6b85dea98dd9e9580b59f4dc">TState</a> { <a class="el" href="classmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system.html#a68944a1b6b85dea98dd9e9580b59f4dca5fec6c5b4fea24641ce46582c8687e74">IDLE</a> = 0, 
<a class="el" href="classmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system.html#a68944a1b6b85dea98dd9e9580b59f4dca9f95d82bae1fa965a8b16c6c5e76c3ef">NAVIGATING</a>, 
<a class="el" href="classmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system.html#a68944a1b6b85dea98dd9e9580b59f4dcaaa162a338a6c59e00b99f8b62e699815">SUSPENDED</a>, 
<a class="el" href="classmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system.html#a68944a1b6b85dea98dd9e9580b59f4dca255aaf5c46fca2207cd07fc118c55356">NAV_ERROR</a>
 }</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">The different states for the navigation system.  <a href="classmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system.html#a68944a1b6b85dea98dd9e9580b59f4dc">More...</a><br/></td></tr>
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system.html#a7405fc03084c402bf31aef506a97ec71">CAbstractReactiveNavigationSystem</a> (<a class="el" href="classmrpt_1_1reactivenav_1_1_c_reactive_interface_implementation.html">CReactiveInterfaceImplementation</a> &amp;react_iterf_impl)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="#a7405fc03084c402bf31aef506a97ec71"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system.html#a9a31bbb7ca1d9943ecec004cc69f4269">~CAbstractReactiveNavigationSystem</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="#a9a31bbb7ca1d9943ecec004cc69f4269"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system.html#ab8c687a415070fce439d095f924b5c8b">cancel</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Cancel current navegacion.  <a href="#ab8c687a415070fce439d095f924b5c8b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system.html#a505ced6f2217f51c1c5d15a4086123ea">resume</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Continues with suspended navigation.  <a href="#a505ced6f2217f51c1c5d15a4086123ea"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system.html#a71ce1e3f7ba7c105efde6f11e873c68c">evaluate</a> (<a class="el" href="structmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system_1_1_t_navigation_params.html">TNavigationParams</a> *params)=0</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Evaluates the practicability of a navigation for given parameters:  <a href="#a71ce1e3f7ba7c105efde6f11e873c68c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system.html#aaca67df4eff0289cadf22fd7216f8fb8">navigationStep</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">This method must be called periodically in order to effectively run the navigation.  <a href="#aaca67df4eff0289cadf22fd7216f8fb8"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system.html#aa5e7076264a76b14ca58ef2f3870de36">navigate</a> (<a class="el" href="structmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system_1_1_t_navigation_params.html">TNavigationParams</a> *params)=0</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Navigation request.  <a href="#aa5e7076264a76b14ca58ef2f3870de36"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system.html#a5a160c1f77735cfb9ce330b6664df2ca">setParams</a> (<a class="el" href="structmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system_1_1_t_navigation_params.html">TNavigationParams</a> *params)=0</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Changes the parameters for current navigation.  <a href="#a5a160c1f77735cfb9ce330b6664df2ca"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system.html#a7244fe50d2a3d5ef7231b42e13a5a80b">suspend</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Suspend current navegation.  <a href="#a7244fe50d2a3d5ef7231b42e13a5a80b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system.html#a68944a1b6b85dea98dd9e9580b59f4dc">TState</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system.html#ac255eb7e83e6e9e94ae4763726519bbf">getCurrentState</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the current navigator state.  <a href="#ac255eb7e83e6e9e94ae4763726519bbf"></a><br/></td></tr>
<tr><td colspan="2"><h2><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_debug_output_capable.html#ab78281b5d70d6e295a8527a10fea66de">printf_debug</a> (const char *frmt,...)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Sends a formated text to "debugOut" if not NULL, or to cout otherwise.  <a href="#ab78281b5d70d6e295a8527a10fea66de"></a><br/></td></tr>
<tr><td colspan="2"><h2><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system.html#a7d90e448755ae93d208f62244efc8322">performNavigationStep</a> ()=0</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">To be implemented in derived classes.  <a href="#a7d90e448755ae93d208f62244efc8322"></a><br/></td></tr>
<tr><td colspan="2"><h2><a name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system.html#a68944a1b6b85dea98dd9e9580b59f4dc">TState</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system.html#a5936f91b0ce54ee0b68df5a40b9d64db">m_navigationState</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Current internal state of navigator:  <a href="#a5936f91b0ce54ee0b68df5a40b9d64db"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system_1_1_t_navigation_params.html">TNavigationParams</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system.html#a967a2c01094c3505e9e2a3a99ea07164">m_navigationParams</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Current navigation parameters:  <a href="#a967a2c01094c3505e9e2a3a99ea07164"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1reactivenav_1_1_c_reactive_interface_implementation.html">CReactiveInterfaceImplementation</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system.html#a333cafd09dd53e92f6d57b9876dae7a9">m_robot</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">The navigator-robot interface.  <a href="#a333cafd09dd53e92f6d57b9876dae7a9"></a><br/></td></tr>
<tr><td colspan="2"><h2><a name="pri-attribs"></a>
Private Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system.html#a68944a1b6b85dea98dd9e9580b59f4dc">TState</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system.html#a68a963b2421c36d3a86008148defe1e4">m_lastNavigationState</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Last internal state of navigator:  <a href="#a68a963b2421c36d3a86008148defe1e4"></a><br/></td></tr>
</table>
<hr/><h2>Member Enumeration Documentation</h2>
<a class="anchor" id="a68944a1b6b85dea98dd9e9580b59f4dc"></a><!-- doxytag: member="mrpt::reactivenav::CAbstractReactiveNavigationSystem::TState" ref="a68944a1b6b85dea98dd9e9580b59f4dc" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="classmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system.html#a68944a1b6b85dea98dd9e9580b59f4dc">mrpt::reactivenav::CAbstractReactiveNavigationSystem::TState</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The different states for the navigation system. </p>
<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" id="a68944a1b6b85dea98dd9e9580b59f4dca5fec6c5b4fea24641ce46582c8687e74"></a><!-- doxytag: member="IDLE" ref="a68944a1b6b85dea98dd9e9580b59f4dca5fec6c5b4fea24641ce46582c8687e74" args="" -->IDLE</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a68944a1b6b85dea98dd9e9580b59f4dca9f95d82bae1fa965a8b16c6c5e76c3ef"></a><!-- doxytag: member="NAVIGATING" ref="a68944a1b6b85dea98dd9e9580b59f4dca9f95d82bae1fa965a8b16c6c5e76c3ef" args="" -->NAVIGATING</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a68944a1b6b85dea98dd9e9580b59f4dcaaa162a338a6c59e00b99f8b62e699815"></a><!-- doxytag: member="SUSPENDED" ref="a68944a1b6b85dea98dd9e9580b59f4dcaaa162a338a6c59e00b99f8b62e699815" args="" -->SUSPENDED</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a68944a1b6b85dea98dd9e9580b59f4dca255aaf5c46fca2207cd07fc118c55356"></a><!-- doxytag: member="NAV_ERROR" ref="a68944a1b6b85dea98dd9e9580b59f4dca255aaf5c46fca2207cd07fc118c55356" args="" -->NAV_ERROR</em>&nbsp;</td><td>
</td></tr>
</table>
</dd>
</dl>

<p>Definition at line <a class="el" href="_c_abstract_reactive_navigation_system_8h_source.html#l00190">190</a> of file <a class="el" href="_c_abstract_reactive_navigation_system_8h_source.html">CAbstractReactiveNavigationSystem.h</a>.</p>

</div>
</div>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a7405fc03084c402bf31aef506a97ec71"></a><!-- doxytag: member="mrpt::reactivenav::CAbstractReactiveNavigationSystem::CAbstractReactiveNavigationSystem" ref="a7405fc03084c402bf31aef506a97ec71" args="(CReactiveInterfaceImplementation &amp;react_iterf_impl)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">mrpt::reactivenav::CAbstractReactiveNavigationSystem::CAbstractReactiveNavigationSystem </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classmrpt_1_1reactivenav_1_1_c_reactive_interface_implementation.html">CReactiveInterfaceImplementation</a> &amp;&#160;</td>
          <td class="paramname"><em>react_iterf_impl</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Constructor. </p>

</div>
</div>
<a class="anchor" id="a9a31bbb7ca1d9943ecec004cc69f4269"></a><!-- doxytag: member="mrpt::reactivenav::CAbstractReactiveNavigationSystem::~CAbstractReactiveNavigationSystem" ref="a9a31bbb7ca1d9943ecec004cc69f4269" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual mrpt::reactivenav::CAbstractReactiveNavigationSystem::~CAbstractReactiveNavigationSystem </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Destructor. </p>

<p>Definition at line <a class="el" href="_c_abstract_reactive_navigation_system_8h_source.html#l00136">136</a> of file <a class="el" href="_c_abstract_reactive_navigation_system_8h_source.html">CAbstractReactiveNavigationSystem.h</a>.</p>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="ab8c687a415070fce439d095f924b5c8b"></a><!-- doxytag: member="mrpt::reactivenav::CAbstractReactiveNavigationSystem::cancel" ref="ab8c687a415070fce439d095f924b5c8b" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void mrpt::reactivenav::CAbstractReactiveNavigationSystem::cancel </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Cancel current navegacion. </p>

</div>
</div>
<a class="anchor" id="a71ce1e3f7ba7c105efde6f11e873c68c"></a><!-- doxytag: member="mrpt::reactivenav::CAbstractReactiveNavigationSystem::evaluate" ref="a71ce1e3f7ba7c105efde6f11e873c68c" args="(TNavigationParams *params)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual float mrpt::reactivenav::CAbstractReactiveNavigationSystem::evaluate </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system_1_1_t_navigation_params.html">TNavigationParams</a> *&#160;</td>
          <td class="paramname"><em>params</em></td><td>)</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Evaluates the practicability of a navigation for given parameters: </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>An estimation in the range [0,1], for 0 being imposible and 1 being easy. </dd></dl>

<p>Implemented in <a class="el" href="classmrpt_1_1reactivenav_1_1_c_reactive_navigation_system.html#ac65cf3431576969ec733de9406ef0b4a">mrpt::reactivenav::CReactiveNavigationSystem</a>.</p>

</div>
</div>
<a class="anchor" id="ac255eb7e83e6e9e94ae4763726519bbf"></a><!-- doxytag: member="mrpt::reactivenav::CAbstractReactiveNavigationSystem::getCurrentState" ref="ac255eb7e83e6e9e94ae4763726519bbf" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system.html#a68944a1b6b85dea98dd9e9580b59f4dc">TState</a> mrpt::reactivenav::CAbstractReactiveNavigationSystem::getCurrentState </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the current navigator state. </p>

<p>Definition at line <a class="el" href="_c_abstract_reactive_navigation_system_8h_source.html#l00200">200</a> of file <a class="el" href="_c_abstract_reactive_navigation_system_8h_source.html">CAbstractReactiveNavigationSystem.h</a>.</p>

</div>
</div>
<a class="anchor" id="aa5e7076264a76b14ca58ef2f3870de36"></a><!-- doxytag: member="mrpt::reactivenav::CAbstractReactiveNavigationSystem::navigate" ref="aa5e7076264a76b14ca58ef2f3870de36" args="(TNavigationParams *params)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void mrpt::reactivenav::CAbstractReactiveNavigationSystem::navigate </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system_1_1_t_navigation_params.html">TNavigationParams</a> *&#160;</td>
          <td class="paramname"><em>params</em></td><td>)</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Navigation request. </p>
<p>It starts a new navigation. </p>

<p>Implemented in <a class="el" href="classmrpt_1_1reactivenav_1_1_c_reactive_navigation_system.html#aaab5d00aa91511c019c325bdea59e976">mrpt::reactivenav::CReactiveNavigationSystem</a>.</p>

</div>
</div>
<a class="anchor" id="aaca67df4eff0289cadf22fd7216f8fb8"></a><!-- doxytag: member="mrpt::reactivenav::CAbstractReactiveNavigationSystem::navigationStep" ref="aaca67df4eff0289cadf22fd7216f8fb8" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void mrpt::reactivenav::CAbstractReactiveNavigationSystem::navigationStep </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>This method must be called periodically in order to effectively run the navigation. </p>

</div>
</div>
<a class="anchor" id="a7d90e448755ae93d208f62244efc8322"></a><!-- doxytag: member="mrpt::reactivenav::CAbstractReactiveNavigationSystem::performNavigationStep" ref="a7d90e448755ae93d208f62244efc8322" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void mrpt::reactivenav::CAbstractReactiveNavigationSystem::performNavigationStep </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [protected, pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>To be implemented in derived classes. </p>

<p>Implemented in <a class="el" href="classmrpt_1_1reactivenav_1_1_c_reactive_navigation_system.html#aa3cd965f9a25abad07f82bd55c1700ba">mrpt::reactivenav::CReactiveNavigationSystem</a>.</p>

</div>
</div>
<a class="anchor" id="ab78281b5d70d6e295a8527a10fea66de"></a><!-- doxytag: member="mrpt::reactivenav::CAbstractReactiveNavigationSystem::printf_debug" ref="ab78281b5d70d6e295a8527a10fea66de" args="(const char *frmt,...)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static void mrpt::utils::CDebugOutputCapable::printf_debug </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>frmt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>...</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [static, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Sends a formated text to "debugOut" if not NULL, or to cout otherwise. </p>

<p>Referenced by <a class="el" href="_c_levenberg_marquardt_8h_source.html#l00098">mrpt::math::CLevenbergMarquardtTempl::execute()</a>.</p>

</div>
</div>
<a class="anchor" id="a505ced6f2217f51c1c5d15a4086123ea"></a><!-- doxytag: member="mrpt::reactivenav::CAbstractReactiveNavigationSystem::resume" ref="a505ced6f2217f51c1c5d15a4086123ea" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void mrpt::reactivenav::CAbstractReactiveNavigationSystem::resume </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Continues with suspended navigation. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system.html#a7244fe50d2a3d5ef7231b42e13a5a80b" title="Suspend current navegation.">suspend</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a5a160c1f77735cfb9ce330b6664df2ca"></a><!-- doxytag: member="mrpt::reactivenav::CAbstractReactiveNavigationSystem::setParams" ref="a5a160c1f77735cfb9ce330b6664df2ca" args="(TNavigationParams *params)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void mrpt::reactivenav::CAbstractReactiveNavigationSystem::setParams </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system_1_1_t_navigation_params.html">TNavigationParams</a> *&#160;</td>
          <td class="paramname"><em>params</em></td><td>)</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Changes the parameters for current navigation. </p>

<p>Implemented in <a class="el" href="classmrpt_1_1reactivenav_1_1_c_reactive_navigation_system.html#a9b312a9b29527502dab0c213831ccb76">mrpt::reactivenav::CReactiveNavigationSystem</a>.</p>

</div>
</div>
<a class="anchor" id="a7244fe50d2a3d5ef7231b42e13a5a80b"></a><!-- doxytag: member="mrpt::reactivenav::CAbstractReactiveNavigationSystem::suspend" ref="a7244fe50d2a3d5ef7231b42e13a5a80b" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void mrpt::reactivenav::CAbstractReactiveNavigationSystem::suspend </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Suspend current navegation. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system.html#a505ced6f2217f51c1c5d15a4086123ea" title="Continues with suspended navigation.">resume</a> </dd></dl>

</div>
</div>
<hr/><h2>Member Data Documentation</h2>
<a class="anchor" id="a68a963b2421c36d3a86008148defe1e4"></a><!-- doxytag: member="mrpt::reactivenav::CAbstractReactiveNavigationSystem::m_lastNavigationState" ref="a68a963b2421c36d3a86008148defe1e4" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system.html#a68944a1b6b85dea98dd9e9580b59f4dc">TState</a> <a class="el" href="classmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system.html#a68a963b2421c36d3a86008148defe1e4">mrpt::reactivenav::CAbstractReactiveNavigationSystem::m_lastNavigationState</a><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Last internal state of navigator: </p>

<p>Definition at line <a class="el" href="_c_abstract_reactive_navigation_system_8h_source.html#l00205">205</a> of file <a class="el" href="_c_abstract_reactive_navigation_system_8h_source.html">CAbstractReactiveNavigationSystem.h</a>.</p>

</div>
</div>
<a class="anchor" id="a967a2c01094c3505e9e2a3a99ea07164"></a><!-- doxytag: member="mrpt::reactivenav::CAbstractReactiveNavigationSystem::m_navigationParams" ref="a967a2c01094c3505e9e2a3a99ea07164" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system_1_1_t_navigation_params.html">TNavigationParams</a> <a class="el" href="classmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system.html#a967a2c01094c3505e9e2a3a99ea07164">mrpt::reactivenav::CAbstractReactiveNavigationSystem::m_navigationParams</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Current navigation parameters: </p>

<p>Definition at line <a class="el" href="_c_abstract_reactive_navigation_system_8h_source.html#l00218">218</a> of file <a class="el" href="_c_abstract_reactive_navigation_system_8h_source.html">CAbstractReactiveNavigationSystem.h</a>.</p>

</div>
</div>
<a class="anchor" id="a5936f91b0ce54ee0b68df5a40b9d64db"></a><!-- doxytag: member="mrpt::reactivenav::CAbstractReactiveNavigationSystem::m_navigationState" ref="a5936f91b0ce54ee0b68df5a40b9d64db" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system.html#a68944a1b6b85dea98dd9e9580b59f4dc">TState</a> <a class="el" href="classmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system.html#a5936f91b0ce54ee0b68df5a40b9d64db">mrpt::reactivenav::CAbstractReactiveNavigationSystem::m_navigationState</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Current internal state of navigator: </p>

<p>Definition at line <a class="el" href="_c_abstract_reactive_navigation_system_8h_source.html#l00214">214</a> of file <a class="el" href="_c_abstract_reactive_navigation_system_8h_source.html">CAbstractReactiveNavigationSystem.h</a>.</p>

</div>
</div>
<a class="anchor" id="a333cafd09dd53e92f6d57b9876dae7a9"></a><!-- doxytag: member="mrpt::reactivenav::CAbstractReactiveNavigationSystem::m_robot" ref="a333cafd09dd53e92f6d57b9876dae7a9" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1reactivenav_1_1_c_reactive_interface_implementation.html">CReactiveInterfaceImplementation</a>&amp; <a class="el" href="classmrpt_1_1reactivenav_1_1_c_abstract_reactive_navigation_system.html#a333cafd09dd53e92f6d57b9876dae7a9">mrpt::reactivenav::CAbstractReactiveNavigationSystem::m_robot</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The navigator-robot interface. </p>

<p>Definition at line <a class="el" href="_c_abstract_reactive_navigation_system_8h_source.html#l00221">221</a> of file <a class="el" href="_c_abstract_reactive_navigation_system_8h_source.html">CAbstractReactiveNavigationSystem.h</a>.</p>

</div>
</div>
</div>
<br><hr><br> <table border="0" width="100%"> <tr> <td> Page generated by <a href="http://www.doxygen.org" target="_blank">Doxygen 1.7.5</a> for MRPT 0.9.5 SVN: at Sun Sep 25 17:20:18 UTC 2011</td><td></td> <td width="100"> </td> <td width="150">  </td></tr> </table>  </body></html>