Sophie

Sophie

distrib > Fedora > 14 > x86_64 > media > updates > by-pkgid > e7618febbb9cbed15bb79e326774c050 > files > 382

ompl-devel-0.9.5-1.fc14.i686.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml; charset=UTF-8"/>
<title>OMPL: ompl::base::DiscreteMotionValidator Class Reference</title>
<meta name="author" content="Ioan A. Șucan, Mark Moll, Lydia E. Kavraki">
<link rel="stylesheet" href="../css/screen.css" type="text/css" media="screen, projection">
<link rel="stylesheet" href="../css/print.css" type="text/css" media="print">
<!--[if lt IE 7]>
<script type="text/javascript" src="../js/jquery/jquery.js"></script>
<script type="text/javascript" src="../js/jquery/jquery.dropdown.js"></script>
<![endif]-->
<script type="text/javaScript" src="search/search.js"></script>
<script type="text/javascript">
  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-9156598-2']);
  _gaq.push(['_trackPageview']);
  (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();
</script>
</head>
<body onload='searchBox.OnSelectItem(0);'>
<script type="text/javascript"><!--
var searchBox = new SearchBox("searchBox", "search",false,'Search API');
--></script>
<div class="navigation" id="top">
  <div class="tabs" id="ompltitle">
    <ul class="tablist">
      <li>The Open Motion Planning Library</li>
      <li id="searchli">
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search API" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)"
               onblur="searchBox.OnSearchFieldFocus(false)"
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>

  <ul id="nav" class="dropdown">
    <li class="first"><a href="index.html">Home</a></li>
    <li><a href="download.html">Download</a></li>
    <li><a href="documentation.html">Documentation</a></li>
    <li><span class="dir">Code API</span>
      <ul>
        <li><a href="api_overview.html">API Overview</a></li>
        <li><a href="namespaces.html">Namespaces</a></li>
        <li><a href="annotated.html">Classes</a></li>
        <li><a href="files.html">Files</a></li>
        <li><a href="dirs.html">Directories</a></li>
      </ul>
    </li>
    <li><span class="dir">Community</span>
      <ul>
        <li><a href="developers.html">Developers</a></li>
        <li><a href="thirdparty.html">Contributions</a></li>
        <li><a href="education.html">Education</a></li>
        <li><a href="gallery.html">Gallery</a></li>
      </ul>
    </li>
    <li><span class="dir">About</span>
      <ul>
        <li><a href="license.html">License</a></li>
        <li><a href="citations.html">Citations</a></li>
        <li><a href="acknowledgements.html">Acknowledgments</a></li>
        <li><a href="contact.html">Contact Us</a></li>
      </ul>
    </li>
  </ul>
</div>

<!--- window showing the filter options -->
<div id="MSearchSelectWindow"
  onmouseover="return searchBox.OnSearchSelectShow()"
  onmouseout="return searchBox.OnSearchSelectHide()"
  onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
  <iframe src="" frameborder="0"name="MSearchResults" id="MSearchResults"></iframe>
</div>

<div class="container">
  <div class="span-22 push-2 first last">
  <div>
<!-- Generated by Doxygen 1.7.4 -->
<script type="text/javascript"><!--
var searchBox = new SearchBox("searchBox", "search",false,'Search');
--></script>
  <div id="nav-path" class="navpath">
    <ul>
      <li class="navelem"><a class="el" href="namespaceompl.html">ompl</a>      </li>
      <li class="navelem"><a class="el" href="namespaceompl_1_1base.html">base</a>      </li>
      <li class="navelem"><a class="el" href="classompl_1_1base_1_1DiscreteMotionValidator.html">DiscreteMotionValidator</a>      </li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a>  </div>
  <div class="headertitle">
<div class="title">ompl::base::DiscreteMotionValidator Class Reference</div>  </div>
</div>
<div class="contents">
<!-- doxytag: class="ompl::base::DiscreteMotionValidator" --><!-- doxytag: inherits="ompl::base::MotionValidator" -->
<p>A motion validator that only uses the state validity checker. Motions are checked for validity at a specified resolution.  
 <a href="classompl_1_1base_1_1DiscreteMotionValidator.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="DiscreteMotionValidator_8h_source.html">DiscreteMotionValidator.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for ompl::base::DiscreteMotionValidator:</div>
<div class="dyncontent">
<div class="center"><img src="classompl_1_1base_1_1DiscreteMotionValidator__inherit__graph.png" border="0" usemap="#ompl_1_1base_1_1DiscreteMotionValidator_inherit__map" alt="Inheritance graph"/></div>
<map name="ompl_1_1base_1_1DiscreteMotionValidator_inherit__map" id="ompl_1_1base_1_1DiscreteMotionValidator_inherit__map">
<area shape="rect" id="node2" href="classompl_1_1base_1_1MotionValidator.html" title="Abstract definition for a class checking the validity of motions &#45;&#45; path segments between states..." alt="" coords="29,5,213,35"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>

<p><a href="classompl_1_1base_1_1DiscreteMotionValidator-members.html">List of all members.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8a24886d956a31326de16e97ef72382b"></a><!-- doxytag: member="ompl::base::DiscreteMotionValidator::DiscreteMotionValidator" ref="a8a24886d956a31326de16e97ef72382b" args="(SpaceInformation *si)" -->
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1base_1_1DiscreteMotionValidator.html#a8a24886d956a31326de16e97ef72382b">DiscreteMotionValidator</a> (<a class="el" href="classompl_1_1base_1_1SpaceInformation.html">SpaceInformation</a> *si)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a206557c0c0bf3b3751ee09c1184f4b7b"></a><!-- doxytag: member="ompl::base::DiscreteMotionValidator::DiscreteMotionValidator" ref="a206557c0c0bf3b3751ee09c1184f4b7b" args="(const SpaceInformationPtr &amp;si)" -->
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1base_1_1DiscreteMotionValidator.html#a206557c0c0bf3b3751ee09c1184f4b7b">DiscreteMotionValidator</a> (const <a class="el" href="classompl_1_1base_1_1SpaceInformationPtr.html">SpaceInformationPtr</a> &amp;si)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1base_1_1DiscreteMotionValidator.html#a348eaada9bd63a377b65fc53ddeb0e2d">checkMotion</a> (const <a class="el" href="classompl_1_1base_1_1State.html">State</a> *s1, const <a class="el" href="classompl_1_1base_1_1State.html">State</a> *s2) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if the path between two states (from <em>s1</em> to <em>s2</em>) is valid. This function assumes <em>s1</em> is valid.  <a href="#a348eaada9bd63a377b65fc53ddeb0e2d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1base_1_1DiscreteMotionValidator.html#a7ad5ee770bd60b4368ed780098877331">checkMotion</a> (const <a class="el" href="classompl_1_1base_1_1State.html">State</a> *s1, const <a class="el" href="classompl_1_1base_1_1State.html">State</a> *s2, std::pair&lt; <a class="el" href="classompl_1_1base_1_1State.html">State</a> *, double &gt; &amp;lastValid) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if the path between two states is valid. Also compute the last state that was valid and the time of that state. The time is used to parametrize the motion from <em>s1</em> to <em>s2</em>, <em>s1</em> being at t = 0 and <em>s2</em> being at t = 1. This function assumes <em>s1</em> is valid.  <a href="#a7ad5ee770bd60b4368ed780098877331"></a><br/></td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>A motion validator that only uses the state validity checker. Motions are checked for validity at a specified resolution. </p>

<p>Definition at line <a class="el" href="DiscreteMotionValidator_8h_source.html#l00050">50</a> of file <a class="el" href="DiscreteMotionValidator_8h_source.html">DiscreteMotionValidator.h</a>.</p>
</div><hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a348eaada9bd63a377b65fc53ddeb0e2d"></a><!-- doxytag: member="ompl::base::DiscreteMotionValidator::checkMotion" ref="a348eaada9bd63a377b65fc53ddeb0e2d" args="(const State *s1, const State *s2) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool ompl::base::DiscreteMotionValidator::checkMotion </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classompl_1_1base_1_1State.html">State</a> *&#160;</td>
          <td class="paramname"><em>s1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classompl_1_1base_1_1State.html">State</a> *&#160;</td>
          <td class="paramname"><em>s2</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Check if the path between two states (from <em>s1</em> to <em>s2</em>) is valid. This function assumes <em>s1</em> is valid. </p>
<dl class="note"><dt><b>Note:</b></dt><dd>This function updates the number of valid and invalid segments. </dd></dl>

<p>Implements <a class="el" href="classompl_1_1base_1_1MotionValidator.html#a9b6d254308ea12799a72049a8dff3fc6">ompl::base::MotionValidator</a>.</p>

<p>Definition at line <a class="el" href="DiscreteMotionValidator_8cpp_source.html#l00092">92</a> of file <a class="el" href="DiscreteMotionValidator_8cpp_source.html">DiscreteMotionValidator.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a7ad5ee770bd60b4368ed780098877331"></a><!-- doxytag: member="ompl::base::DiscreteMotionValidator::checkMotion" ref="a7ad5ee770bd60b4368ed780098877331" args="(const State *s1, const State *s2, std::pair&lt; State *, double &gt; &amp;lastValid) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool ompl::base::DiscreteMotionValidator::checkMotion </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classompl_1_1base_1_1State.html">State</a> *&#160;</td>
          <td class="paramname"><em>s1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classompl_1_1base_1_1State.html">State</a> *&#160;</td>
          <td class="paramname"><em>s2</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::pair&lt; <a class="el" href="classompl_1_1base_1_1State.html">State</a> *, double &gt; &amp;&#160;</td>
          <td class="paramname"><em>lastValid</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Check if the path between two states is valid. Also compute the last state that was valid and the time of that state. The time is used to parametrize the motion from <em>s1</em> to <em>s2</em>, <em>s1</em> being at t = 0 and <em>s2</em> being at t = 1. This function assumes <em>s1</em> is valid. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">s1</td><td>start state of the motion to be checked (assumed to be valid) </td></tr>
    <tr><td class="paramname">s2</td><td>final state of the motion to be checked </td></tr>
    <tr><td class="paramname">lastValid</td><td>first: storage for the last valid state (may be NULL, if the user does not care about the exact state); this need not be different from <em>s1</em> or <em>s2</em>. second: the time (between 0 and 1) of the last valid state, on the motion from <em>s1</em> to <em>s2</em>. If the function returns false, <em>lastValid.first</em> must be set to a valid state, even if that implies copying <em>s1</em> to <em>lastValid.first</em> (in case <em>lastValid.second</em> = 0). If the function returns true, <em>lastValid.first</em> and <em>lastValid.second</em> should <b>not</b> be modified.</td></tr>
  </table>
  </dd>
</dl>
<dl class="note"><dt><b>Note:</b></dt><dd>This function updates the number of valid and invalid segments. </dd></dl>

<p>Implements <a class="el" href="classompl_1_1base_1_1MotionValidator.html#a86af4d5a138cc41b5fe08de033b3c401">ompl::base::MotionValidator</a>.</p>

<p>Definition at line <a class="el" href="DiscreteMotionValidator_8cpp_source.html#l00048">48</a> of file <a class="el" href="DiscreteMotionValidator_8cpp_source.html">DiscreteMotionValidator.cpp</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>src/ompl/base/<a class="el" href="DiscreteMotionValidator_8h_source.html">DiscreteMotionValidator.h</a></li>
<li>src/ompl/base/src/<a class="el" href="DiscreteMotionValidator_8cpp_source.html">DiscreteMotionValidator.cpp</a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div>

<div class="footer span-22 push-2 last">
  <a href="http://www.kavrakilab.org">Physical and Biological Computing Group</a> &bull;
  <a href="http://www.cs.rice.edu">Department of Computer Science</a> &bull;
  <a href="http://www.rice.edu">Rice University</a><br>
  <div class="gray">Generated on Sun Oct 9 2011 23:04:41 by&#160;<a href="http://www.doxygen.org/index.html">doxygen</a> 1.7.4</div>
</div>
</div>
</body>
</html>