<!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::control::SimpleSetup 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"> </span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark"> </span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark"> </span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark"> </span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark"> </span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark"> </span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark"> </span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark"> </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_1control.html">control</a> </li> <li class="navelem"><a class="el" href="classompl_1_1control_1_1SimpleSetup.html">SimpleSetup</a> </li> </ul> </div> </div> <div class="header"> <div class="summary"> <a href="#pub-methods">Public Member Functions</a> | <a href="#pro-attribs">Protected Attributes</a> </div> <div class="headertitle"> <div class="title">ompl::control::SimpleSetup Class Reference</div> </div> </div> <div class="contents"> <!-- doxytag: class="ompl::control::SimpleSetup" --> <p>Create the set of classes typically needed to solve a control problem. <a href="classompl_1_1control_1_1SimpleSetup.html#details">More...</a></p> <p><code>#include <<a class="el" href="control_2SimpleSetup_8h_source.html">SimpleSetup.h</a>></code></p> <div class="dynheader"> Inheritance diagram for ompl::control::SimpleSetup:</div> <div class="dyncontent"> <div class="center"><img src="classompl_1_1control_1_1SimpleSetup__inherit__graph.png" border="0" usemap="#ompl_1_1control_1_1SimpleSetup_inherit__map" alt="Inheritance graph"/></div> <map name="ompl_1_1control_1_1SimpleSetup_inherit__map" id="ompl_1_1control_1_1SimpleSetup_inherit__map"> <area shape="rect" id="node3" href="classompl_1_1control_1_1ODESimpleSetup.html" title="Create the set of classes typically needed to solve a control problem when forward propagation is com..." alt="" coords="5,83,213,112"/></map> <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div> <p><a href="classompl_1_1control_1_1SimpleSetup-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="ad6cb6079ac1d67a90ff88fcdd4e1a56d"></a><!-- doxytag: member="ompl::control::SimpleSetup::SimpleSetup" ref="ad6cb6079ac1d67a90ff88fcdd4e1a56d" args="(const ControlSpacePtr &space)" -->  </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1SimpleSetup.html#ad6cb6079ac1d67a90ff88fcdd4e1a56d">SimpleSetup</a> (const <a class="el" href="classompl_1_1control_1_1ControlSpacePtr.html">ControlSpacePtr</a> &space)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Constructor needs the control space used for planning. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac992af52bc8e3e5548778f5359fe3875"></a><!-- doxytag: member="ompl::control::SimpleSetup::getSpaceInformation" ref="ac992af52bc8e3e5548778f5359fe3875" args="(void) const " --> const <a class="el" href="classompl_1_1control_1_1SpaceInformationPtr.html">SpaceInformationPtr</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1SimpleSetup.html#ac992af52bc8e3e5548778f5359fe3875">getSpaceInformation</a> (void) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the current instance of the space information. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6cda76e94248d30215ac275123477ee2"></a><!-- doxytag: member="ompl::control::SimpleSetup::getProblemDefinition" ref="a6cda76e94248d30215ac275123477ee2" args="(void) const " --> const <a class="el" href="classompl_1_1base_1_1ProblemDefinitionPtr.html">base::ProblemDefinitionPtr</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1SimpleSetup.html#a6cda76e94248d30215ac275123477ee2">getProblemDefinition</a> (void) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the current instance of the problem definition. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a17406bf1e66f3ca388f4cde9aa4d4b20"></a><!-- doxytag: member="ompl::control::SimpleSetup::getStateSpace" ref="a17406bf1e66f3ca388f4cde9aa4d4b20" args="(void) const " --> const <a class="el" href="classompl_1_1base_1_1StateSpacePtr.html">base::StateSpacePtr</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1SimpleSetup.html#a17406bf1e66f3ca388f4cde9aa4d4b20">getStateSpace</a> (void) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the current instance of the state space. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a20ce3faeb0abf6377b50acda4e0f76d2"></a><!-- doxytag: member="ompl::control::SimpleSetup::getControlSpace" ref="a20ce3faeb0abf6377b50acda4e0f76d2" args="(void) const " --> const <a class="el" href="classompl_1_1control_1_1ControlSpacePtr.html">ControlSpacePtr</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1SimpleSetup.html#a20ce3faeb0abf6377b50acda4e0f76d2">getControlSpace</a> (void) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the current instance of the control space. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3c16c7cb65aad8856c57b4353bbfdadc"></a><!-- doxytag: member="ompl::control::SimpleSetup::getStateValidityChecker" ref="a3c16c7cb65aad8856c57b4353bbfdadc" args="(void) const " --> const <br class="typebreak"/> <a class="el" href="classompl_1_1base_1_1StateValidityCheckerPtr.html">base::StateValidityCheckerPtr</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1SimpleSetup.html#a3c16c7cb65aad8856c57b4353bbfdadc">getStateValidityChecker</a> (void) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the current instance of the state validity checker. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a929f1eb96a8d97e610074c467fcc21be"></a><!-- doxytag: member="ompl::control::SimpleSetup::getStatePropagator" ref="a929f1eb96a8d97e610074c467fcc21be" args="(void) const " --> const StatePropagatorPtr & </td><td class="memItemRight" valign="bottom"><b>getStatePropagator</b> (void) const </td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a450d2a8cc1b5a1dc4c2a41d56a8f6565"></a><!-- doxytag: member="ompl::control::SimpleSetup::getGoal" ref="a450d2a8cc1b5a1dc4c2a41d56a8f6565" args="(void) const " --> const <a class="el" href="classompl_1_1base_1_1GoalPtr.html">base::GoalPtr</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1SimpleSetup.html#a450d2a8cc1b5a1dc4c2a41d56a8f6565">getGoal</a> (void) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the current goal definition. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a94f2001c35ab82b5065141df8fc325a7"></a><!-- doxytag: member="ompl::control::SimpleSetup::getPlanner" ref="a94f2001c35ab82b5065141df8fc325a7" args="(void) const " --> const <a class="el" href="classompl_1_1base_1_1PlannerPtr.html">base::PlannerPtr</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1SimpleSetup.html#a94f2001c35ab82b5065141df8fc325a7">getPlanner</a> (void) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the current planner. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2873128ad688fbeaefdc68b7f92eb55f"></a><!-- doxytag: member="ompl::control::SimpleSetup::haveExactSolutionPath" ref="a2873128ad688fbeaefdc68b7f92eb55f" args="(void) const " --> bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1SimpleSetup.html#a2873128ad688fbeaefdc68b7f92eb55f">haveExactSolutionPath</a> (void) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return true if a solution path is available (previous call to <a class="el" href="classompl_1_1control_1_1SimpleSetup.html#a279efbe5f659a47e1749a3947a1f978e" title="Run the planner for a specified amount of time (default is 1 second)">solve()</a> was successful) and the solution is exact (not approximate) <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a573453358430deba20d2b97f79af2a91"></a><!-- doxytag: member="ompl::control::SimpleSetup::haveSolutionPath" ref="a573453358430deba20d2b97f79af2a91" args="(void) const " --> bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1SimpleSetup.html#a573453358430deba20d2b97f79af2a91">haveSolutionPath</a> (void) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return true if a solution path is available (previous call to <a class="el" href="classompl_1_1control_1_1SimpleSetup.html#a279efbe5f659a47e1749a3947a1f978e" title="Run the planner for a specified amount of time (default is 1 second)">solve()</a> was successful). The solution may be approximate. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aacd350f0002e3e0ffd608099484eabdb"></a><!-- doxytag: member="ompl::control::SimpleSetup::getSolutionPath" ref="aacd350f0002e3e0ffd608099484eabdb" args="(void) const " --> <a class="el" href="classompl_1_1control_1_1PathControl.html">PathControl</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1SimpleSetup.html#aacd350f0002e3e0ffd608099484eabdb">getSolutionPath</a> (void) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the solution path. Throw an exception if no solution is available. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1e627596e3e9fb5894c7e7c28607640e"></a><!-- doxytag: member="ompl::control::SimpleSetup::getPlannerData" ref="a1e627596e3e9fb5894c7e7c28607640e" args="(void) const " --> <a class="el" href="classompl_1_1control_1_1PlannerData.html">control::PlannerData</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1SimpleSetup.html#a1e627596e3e9fb5894c7e7c28607640e">getPlannerData</a> (void) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get information about the exploration data structure the motion planner used. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a83836265f90c0d650edcb72610e4f690"></a><!-- doxytag: member="ompl::control::SimpleSetup::setStateValidityChecker" ref="a83836265f90c0d650edcb72610e4f690" args="(const base::StateValidityCheckerPtr &svc)" --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1SimpleSetup.html#a83836265f90c0d650edcb72610e4f690">setStateValidityChecker</a> (const <a class="el" href="classompl_1_1base_1_1StateValidityCheckerPtr.html">base::StateValidityCheckerPtr</a> &svc)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the state validity checker to use. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a415e21e0b3a793a880b4c297c92599eb"></a><!-- doxytag: member="ompl::control::SimpleSetup::setStateValidityChecker" ref="a415e21e0b3a793a880b4c297c92599eb" args="(const base::StateValidityCheckerFn &svc)" --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1SimpleSetup.html#a415e21e0b3a793a880b4c297c92599eb">setStateValidityChecker</a> (const <a class="el" href="namespaceompl_1_1base.html#a208ad51fcef09961293d23b589a4dbfa">base::StateValidityCheckerFn</a> &svc)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the state validity checker to use. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac43f41929f8bed01e61ef9b8d3ad7aed"></a><!-- doxytag: member="ompl::control::SimpleSetup::setStatePropagator" ref="ac43f41929f8bed01e61ef9b8d3ad7aed" args="(const StatePropagatorFn &sp)" --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1SimpleSetup.html#ac43f41929f8bed01e61ef9b8d3ad7aed">setStatePropagator</a> (const <a class="el" href="namespaceompl_1_1control.html#acce331fefa24a5f76ce796c391090068">StatePropagatorFn</a> &sp)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the function that performs state propagation. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a55dec29f164862b0493b8981439506e9"></a><!-- doxytag: member="ompl::control::SimpleSetup::setStatePropagator" ref="a55dec29f164862b0493b8981439506e9" args="(const StatePropagatorPtr &sp)" --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1SimpleSetup.html#a55dec29f164862b0493b8981439506e9">setStatePropagator</a> (const StatePropagatorPtr &sp)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the instance of <a class="el" href="classompl_1_1control_1_1StatePropagator.html">StatePropagator</a> to perform state propagation. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9ad38c8d4fa369fb8adb82e07840d81c"></a><!-- doxytag: member="ompl::control::SimpleSetup::setStartAndGoalStates" ref="a9ad38c8d4fa369fb8adb82e07840d81c" args="(const base::ScopedState<> &start, const base::ScopedState<> &goal, const double threshold=std::numeric_limits< double >::epsilon())" --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1SimpleSetup.html#a9ad38c8d4fa369fb8adb82e07840d81c">setStartAndGoalStates</a> (const <a class="el" href="classompl_1_1base_1_1ScopedState.html">base::ScopedState</a><> &start, const <a class="el" href="classompl_1_1base_1_1ScopedState.html">base::ScopedState</a><> &goal, const double threshold=std::numeric_limits< double >::epsilon())</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the start and goal states to use. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4fbdf2637f503a03e39bbc7ab637b687"></a><!-- doxytag: member="ompl::control::SimpleSetup::setGoalState" ref="a4fbdf2637f503a03e39bbc7ab637b687" args="(const base::ScopedState<> &goal, const double threshold=std::numeric_limits< double >::epsilon())" --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1SimpleSetup.html#a4fbdf2637f503a03e39bbc7ab637b687">setGoalState</a> (const <a class="el" href="classompl_1_1base_1_1ScopedState.html">base::ScopedState</a><> &goal, const double threshold=std::numeric_limits< double >::epsilon())</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">A simple form of <a class="el" href="classompl_1_1control_1_1SimpleSetup.html#ac72f0ae91f54d455afb385f770870091" title="Set the goal for planning. This call is not needed if setStartAndGoalStates() has been called...">setGoal()</a>. The goal will be an instance of <a class="el" href="classompl_1_1base_1_1GoalState.html" title="Definition of a goal state.">ompl::base::GoalState</a>. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a10cbfb4aff914e9c7ec71f4e1e2cf546"></a><!-- doxytag: member="ompl::control::SimpleSetup::addStartState" ref="a10cbfb4aff914e9c7ec71f4e1e2cf546" args="(const base::ScopedState<> &state)" --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1SimpleSetup.html#a10cbfb4aff914e9c7ec71f4e1e2cf546">addStartState</a> (const <a class="el" href="classompl_1_1base_1_1ScopedState.html">base::ScopedState</a><> &state)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Add a starting state for planning. This call is not needed if <a class="el" href="classompl_1_1control_1_1SimpleSetup.html#a9ad38c8d4fa369fb8adb82e07840d81c" title="Set the start and goal states to use.">setStartAndGoalStates()</a> has been called. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a90566e2ae49586081336c7ee17d54406"></a><!-- doxytag: member="ompl::control::SimpleSetup::clearStartStates" ref="a90566e2ae49586081336c7ee17d54406" args="(void)" --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1SimpleSetup.html#a90566e2ae49586081336c7ee17d54406">clearStartStates</a> (void)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Clear the currently set starting states. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a310f28cce26733d75f9388a5026a6382"></a><!-- doxytag: member="ompl::control::SimpleSetup::setStartState" ref="a310f28cce26733d75f9388a5026a6382" args="(const base::ScopedState<> &state)" --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1SimpleSetup.html#a310f28cce26733d75f9388a5026a6382">setStartState</a> (const <a class="el" href="classompl_1_1base_1_1ScopedState.html">base::ScopedState</a><> &state)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Clear the currently set starting states and add <em>state</em> as the starting state. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac72f0ae91f54d455afb385f770870091"></a><!-- doxytag: member="ompl::control::SimpleSetup::setGoal" ref="ac72f0ae91f54d455afb385f770870091" args="(const base::GoalPtr &goal)" --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1SimpleSetup.html#ac72f0ae91f54d455afb385f770870091">setGoal</a> (const <a class="el" href="classompl_1_1base_1_1GoalPtr.html">base::GoalPtr</a> &goal)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the goal for planning. This call is not needed if <a class="el" href="classompl_1_1control_1_1SimpleSetup.html#a9ad38c8d4fa369fb8adb82e07840d81c" title="Set the start and goal states to use.">setStartAndGoalStates()</a> has been called. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a09bcf889f9bf5d96fbc0c995535e4706"></a><!-- doxytag: member="ompl::control::SimpleSetup::setPlanner" ref="a09bcf889f9bf5d96fbc0c995535e4706" args="(const base::PlannerPtr &planner)" --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1SimpleSetup.html#a09bcf889f9bf5d96fbc0c995535e4706">setPlanner</a> (const <a class="el" href="classompl_1_1base_1_1PlannerPtr.html">base::PlannerPtr</a> &planner)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the planner to use. If the planner is not set, an attempt is made to use the planner allocator. If no planner allocator is available either, a default planner is set. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aad0b69f028201b65bac027ba080146aa"></a><!-- doxytag: member="ompl::control::SimpleSetup::setPlannerAllocator" ref="aad0b69f028201b65bac027ba080146aa" args="(const base::PlannerAllocator &pa)" --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1SimpleSetup.html#aad0b69f028201b65bac027ba080146aa">setPlannerAllocator</a> (const <a class="el" href="namespaceompl_1_1base.html#a52191d97eed3ef76517fd4f6f94d27a9">base::PlannerAllocator</a> &pa)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the planner allocator to use. This is only used if no planner has been set. This is optional -- a default planner will be used if no planner is otherwise specified. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a279efbe5f659a47e1749a3947a1f978e"></a><!-- doxytag: member="ompl::control::SimpleSetup::solve" ref="a279efbe5f659a47e1749a3947a1f978e" args="(double time=1.0)" --> virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1SimpleSetup.html#a279efbe5f659a47e1749a3947a1f978e">solve</a> (double time=1.0)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Run the planner for a specified amount of time (default is 1 second) <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad269644cce823f54f6124e49566e7e90"></a><!-- doxytag: member="ompl::control::SimpleSetup::getLastPlanComputationTime" ref="ad269644cce823f54f6124e49566e7e90" args="(void) const " --> double </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1SimpleSetup.html#ad269644cce823f54f6124e49566e7e90">getLastPlanComputationTime</a> (void) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the amount of time (in seconds) spent during the last planning step. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7f44da72fe96fb4e0326962d2ed6a52c"></a><!-- doxytag: member="ompl::control::SimpleSetup::clear" ref="a7f44da72fe96fb4e0326962d2ed6a52c" args="(void)" --> virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1SimpleSetup.html#a7f44da72fe96fb4e0326962d2ed6a52c">clear</a> (void)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Clear all planning data. This only includes data generated by motion plan computation. Planner settings, start & goal states are not affected. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac215c0aaffc786d112c88f050cbf4164"></a><!-- doxytag: member="ompl::control::SimpleSetup::print" ref="ac215c0aaffc786d112c88f050cbf4164" args="(std::ostream &out=std::cout) const " --> virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1SimpleSetup.html#ac215c0aaffc786d112c88f050cbf4164">print</a> (std::ostream &out=std::cout) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Print information about the current setup. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6b3e6976af723f42cbbabbe41a51d898"></a><!-- doxytag: member="ompl::control::SimpleSetup::setup" ref="a6b3e6976af723f42cbbabbe41a51d898" args="(void)" --> virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1SimpleSetup.html#a6b3e6976af723f42cbbabbe41a51d898">setup</a> (void)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">This method will create the necessary classes for planning. The <a class="el" href="classompl_1_1control_1_1SimpleSetup.html#a279efbe5f659a47e1749a3947a1f978e" title="Run the planner for a specified amount of time (default is 1 second)">solve()</a> method will call this function automatically. <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="anchor" id="ae40aeef5f330422fe81117bf3039df80"></a><!-- doxytag: member="ompl::control::SimpleSetup::si_" ref="ae40aeef5f330422fe81117bf3039df80" args="" --> <a class="el" href="classompl_1_1control_1_1SpaceInformationPtr.html">SpaceInformationPtr</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1SimpleSetup.html#ae40aeef5f330422fe81117bf3039df80">si_</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">The created space information. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0da5fd5aa172bafe9b3c6ec77ec417bc"></a><!-- doxytag: member="ompl::control::SimpleSetup::pdef_" ref="a0da5fd5aa172bafe9b3c6ec77ec417bc" args="" --> <a class="el" href="classompl_1_1base_1_1ProblemDefinitionPtr.html">base::ProblemDefinitionPtr</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1SimpleSetup.html#a0da5fd5aa172bafe9b3c6ec77ec417bc">pdef_</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">The created problem definition. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1c65fbeb69b22217bbfdd3ec4d7afb9f"></a><!-- doxytag: member="ompl::control::SimpleSetup::planner_" ref="a1c65fbeb69b22217bbfdd3ec4d7afb9f" args="" --> <a class="el" href="classompl_1_1base_1_1PlannerPtr.html">base::PlannerPtr</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1SimpleSetup.html#a1c65fbeb69b22217bbfdd3ec4d7afb9f">planner_</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">The maintained planner instance. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1cf42df203befd44e0d27ea0fa697191"></a><!-- doxytag: member="ompl::control::SimpleSetup::pa_" ref="a1cf42df203befd44e0d27ea0fa697191" args="" --> <a class="el" href="namespaceompl_1_1base.html#a52191d97eed3ef76517fd4f6f94d27a9">base::PlannerAllocator</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1SimpleSetup.html#a1cf42df203befd44e0d27ea0fa697191">pa_</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">The optional planner allocator. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a07e2cf7b8077d90ae8ce4f6c30a49cd0"></a><!-- doxytag: member="ompl::control::SimpleSetup::configured_" ref="a07e2cf7b8077d90ae8ce4f6c30a49cd0" args="" --> bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1SimpleSetup.html#a07e2cf7b8077d90ae8ce4f6c30a49cd0">configured_</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Flag indicating whether the classes needed for planning are set up. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af5402de1220a497b5b1fc901f6452689"></a><!-- doxytag: member="ompl::control::SimpleSetup::planTime_" ref="af5402de1220a497b5b1fc901f6452689" args="" --> double </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1SimpleSetup.html#af5402de1220a497b5b1fc901f6452689">planTime_</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">The amount of time the last planning step took. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a061986be314d1aa6f08c1301cf72c673"></a><!-- doxytag: member="ompl::control::SimpleSetup::msg_" ref="a061986be314d1aa6f08c1301cf72c673" args="" --> <a class="el" href="classompl_1_1msg_1_1Interface.html">msg::Interface</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classompl_1_1control_1_1SimpleSetup.html#a061986be314d1aa6f08c1301cf72c673">msg_</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Interface for console output. <br/></td></tr> </table> <hr/><a name="details" id="details"></a><h2>Detailed Description</h2> <div class="textblock"><p>Create the set of classes typically needed to solve a control problem. </p> <p>Definition at line <a class="el" href="control_2SimpleSetup_8h_source.html#l00057">57</a> of file <a class="el" href="control_2SimpleSetup_8h_source.html">SimpleSetup.h</a>.</p> </div><hr/>The documentation for this class was generated from the following files:<ul> <li>src/ompl/control/<a class="el" href="control_2SimpleSetup_8h_source.html">SimpleSetup.h</a></li> <li>src/ompl/control/src/<a class="el" href="control_2src_2SimpleSetup_8cpp_source.html">SimpleSetup.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"> </span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark"> </span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark"> </span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark"> </span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark"> </span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark"> </span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark"> </span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark"> </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> • <a href="http://www.cs.rice.edu">Department of Computer Science</a> • <a href="http://www.rice.edu">Rice University</a><br> <div class="gray">Generated on Sun Oct 9 2011 23:04:43 by <a href="http://www.doxygen.org/index.html">doxygen</a> 1.7.4</div> </div> </div> </body> </html>