Sophie

Sophie

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

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="namespacehokuyo__aist.html">hokuyo_aist</a>::<a class="el" href="classhokuyo__aist_1_1HokuyoLaser.html">HokuyoLaser</a>
  </div>
</div>
<div class="contents">
<h1>hokuyo_aist::HokuyoLaser Class Reference</h1><!-- doxytag: class="hokuyo_aist::HokuyoLaser" -->
<p>Hokuyo laser scanner class.  
<a href="#_details">More...</a></p>

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

<p><a href="classhokuyo__aist_1_1HokuyoLaser-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"><a class="anchor" id="a0354fe578b6070a006862eb9a2d70671"></a><!-- doxytag: member="hokuyo_aist::HokuyoLaser::Open" ref="a0354fe578b6070a006862eb9a2d70671" args="(std::string portOptions)" -->
void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhokuyo__aist_1_1HokuyoLaser.html#a0354fe578b6070a006862eb9a2d70671">Open</a> (std::string portOptions)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Open the laser scanner and begin scanning. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhokuyo__aist_1_1HokuyoLaser.html#a1d363753ce5f7eb6669478cda8fa228d">OpenWithProbing</a> (std::string portOptions)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Open the laser scanner and begin scanning, probing the baud rate as necessary.  <a href="#a1d363753ce5f7eb6669478cda8fa228d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a90fbe77f1f52c8a70ffb77fe2f650c2e"></a><!-- doxytag: member="hokuyo_aist::HokuyoLaser::Close" ref="a90fbe77f1f52c8a70ffb77fe2f650c2e" args="()" -->
void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhokuyo__aist_1_1HokuyoLaser.html#a90fbe77f1f52c8a70ffb77fe2f650c2e">Close</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Close the connection to the laser scanner. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="add5d8daa67ff53931ef1a3f3bc00c07d"></a><!-- doxytag: member="hokuyo_aist::HokuyoLaser::IsOpen" ref="add5d8daa67ff53931ef1a3f3bc00c07d" args="() const " -->
bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhokuyo__aist_1_1HokuyoLaser.html#add5d8daa67ff53931ef1a3f3bc00c07d">IsOpen</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Checks if the connection to the laser scanner is open. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4c77487ba0925346e13a5f57b3eb1717"></a><!-- doxytag: member="hokuyo_aist::HokuyoLaser::SetPower" ref="a4c77487ba0925346e13a5f57b3eb1717" args="(bool on)" -->
void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhokuyo__aist_1_1HokuyoLaser.html#a4c77487ba0925346e13a5f57b3eb1717">SetPower</a> (bool on)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Switch the laser scanner on or off. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhokuyo__aist_1_1HokuyoLaser.html#ac9336bdd86c5bb98be7d42e4015dc723">SetBaud</a> (unsigned int baud)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Change the baud rate when using a serial connection.  <a href="#ac9336bdd86c5bb98be7d42e4015dc723"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhokuyo__aist_1_1HokuyoLaser.html#a4bd124f242462eaf6267094d1d2ef639">Reset</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Reset the laser scanner to its default settings.  <a href="#a4bd124f242462eaf6267094d1d2ef639"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhokuyo__aist_1_1HokuyoLaser.html#a0ebcd2b02153ce35ebe9680979ac863a">SetMotorSpeed</a> (unsigned int speed)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the speed at which the scanner's sensor spins.  <a href="#a0ebcd2b02153ce35ebe9680979ac863a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acc78cc1222261d49e5d3f3dc75976598"></a><!-- doxytag: member="hokuyo_aist::HokuyoLaser::SetHighSensitivity" ref="acc78cc1222261d49e5d3f3dc75976598" args="(bool on)" -->
void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhokuyo__aist_1_1HokuyoLaser.html#acc78cc1222261d49e5d3f3dc75976598">SetHighSensitivity</a> (bool on)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Switch the scanner between normal and high sensitivity modes. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhokuyo__aist_1_1HokuyoLaser.html#a724ef08c0af4c32368c48aeae9ccb235">GetSensorInfo</a> (<a class="el" href="classhokuyo__aist_1_1HokuyoSensorInfo.html">HokuyoSensorInfo</a> *info)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get various information about the scanner.  <a href="#a724ef08c0af4c32368c48aeae9ccb235"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhokuyo__aist_1_1HokuyoLaser.html#a0fbe9c851e0ed1e0d264fd838724054d">GetTime</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the current value of the scanner's clock in milliseconds.  <a href="#a0fbe9c851e0ed1e0d264fd838724054d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhokuyo__aist_1_1HokuyoLaser.html#a7f3e035fcaf0675b027cfba55cf85ad1">GetRanges</a> (<a class="el" href="classhokuyo__aist_1_1HokuyoData.html">HokuyoData</a> *data, int startStep=-1, int endStep=-1, unsigned int clusterCount=1)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the latest scan data from the scanner.  <a href="#a7f3e035fcaf0675b027cfba55cf85ad1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhokuyo__aist_1_1HokuyoLaser.html#ac90ae5db00a579aae20fccb0f4018bc4">GetRangesByAngle</a> (<a class="el" href="classhokuyo__aist_1_1HokuyoData.html">HokuyoData</a> *data, double startAngle, double endAngle, unsigned int clusterCount=1)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the latest scan data from the scanner.  <a href="#ac90ae5db00a579aae20fccb0f4018bc4"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhokuyo__aist_1_1HokuyoLaser.html#a1b32883343569b1fc793a5386d292c7e">GetNewRanges</a> (<a class="el" href="classhokuyo__aist_1_1HokuyoData.html">HokuyoData</a> *data, int startStep=-1, int endStep=-1, unsigned int clusterCount=1)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get a new scan from the scanner.  <a href="#a1b32883343569b1fc793a5386d292c7e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhokuyo__aist_1_1HokuyoLaser.html#a2791373f4ff5b075bbbb4705547b3b84">GetNewRangesByAngle</a> (<a class="el" href="classhokuyo__aist_1_1HokuyoData.html">HokuyoData</a> *data, double startAngle, double endAngle, unsigned int clusterCount=1)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get a new scan from the scanner.  <a href="#a2791373f4ff5b075bbbb4705547b3b84"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhokuyo__aist_1_1HokuyoLaser.html#a5e512dbbaecfbea65d979eb6bb30636e">GetNewRangesAndIntensities</a> (<a class="el" href="classhokuyo__aist_1_1HokuyoData.html">HokuyoData</a> *data, int startStep=-1, int endStep=-1, unsigned int clusterCount=1)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get a new scan from the scanner with intensity data.  <a href="#a5e512dbbaecfbea65d979eb6bb30636e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhokuyo__aist_1_1HokuyoLaser.html#a5cb3da3aa35d9d57ba4031d31361a39a">GetNewRangesAndIntensitiesByAngle</a> (<a class="el" href="classhokuyo__aist_1_1HokuyoData.html">HokuyoData</a> *data, double startAngle, double endAngle, unsigned int clusterCount=1)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get a new scan from the scanner with intensity data.  <a href="#a5cb3da3aa35d9d57ba4031d31361a39a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aae0c39e7fa14efa138f3be02693a2102"></a><!-- doxytag: member="hokuyo_aist::HokuyoLaser::SCIPVersion" ref="aae0c39e7fa14efa138f3be02693a2102" args="() const " -->
uint8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhokuyo__aist_1_1HokuyoLaser.html#aae0c39e7fa14efa138f3be02693a2102">SCIPVersion</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the major version of the SCIP protocol in use. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a407ad6f56a401c15b61be5e1926c3962"></a><!-- doxytag: member="hokuyo_aist::HokuyoLaser::SetVerbose" ref="a407ad6f56a401c15b61be5e1926c3962" args="(bool verbose)" -->
void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhokuyo__aist_1_1HokuyoLaser.html#a407ad6f56a401c15b61be5e1926c3962">SetVerbose</a> (bool verbose)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Turns on and off printing of verbose operating information to stderr. Default is off. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5d1e4be1141a984f1f3d467ccbba4dd0"></a><!-- doxytag: member="hokuyo_aist::HokuyoLaser::IgnoreUnknowns" ref="a5d1e4be1141a984f1f3d467ccbba4dd0" args="(bool ignore)" -->
void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhokuyo__aist_1_1HokuyoLaser.html#a5d1e4be1141a984f1f3d467ccbba4dd0">IgnoreUnknowns</a> (bool ignore)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Enables/disables ignoring unknown lines in sensor info messages. Default is off. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a86ba85f33c2906a78fffb74fec3cbe1d"></a><!-- doxytag: member="hokuyo_aist::HokuyoLaser::StepToAngle" ref="a86ba85f33c2906a78fffb74fec3cbe1d" args="(unsigned int step)" -->
double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhokuyo__aist_1_1HokuyoLaser.html#a86ba85f33c2906a78fffb74fec3cbe1d">StepToAngle</a> (unsigned int step)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A convenience function to convert a step index to an angle. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a74e48307394b3fd50a2a53084d240449"></a><!-- doxytag: member="hokuyo_aist::HokuyoLaser::AngleToStep" ref="a74e48307394b3fd50a2a53084d240449" args="(double angle)" -->
unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhokuyo__aist_1_1HokuyoLaser.html#a74e48307394b3fd50a2a53084d240449">AngleToStep</a> (double angle)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A convenience function to convert an angle to a step (rounded towards the front). <br/></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>Hokuyo laser scanner class. </p>
<p>Provides an interface for interacting with a Hokuyo laser scanner using SCIP protocol version 1 or 2. The FlexiPort library is used to implement the data communications with the scanner. See its documentation for details on controlling the connection.</p>
<p>To use a serial connection, ensure that you do not also have a USB cable connected, as this will force the scanner into USB mode, preventing the serial connection from functioning correctly.</p>
<p>All functions may throw instances of <a class="el" href="classhokuyo__aist_1_1HokuyoError.html">HokuyoError</a> or its children. Exceptions from FlexiPort may also occur. </p>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a1b32883343569b1fc793a5386d292c7e"></a><!-- doxytag: member="hokuyo_aist::HokuyoLaser::GetNewRanges" ref="a1b32883343569b1fc793a5386d292c7e" args="(HokuyoData *data, int startStep=&#45;1, int endStep=&#45;1, unsigned int clusterCount=1)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int hokuyo_aist::HokuyoLaser::GetNewRanges </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classhokuyo__aist_1_1HokuyoData.html">HokuyoData</a> *&nbsp;</td>
          <td class="paramname"> <em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>startStep</em> = <code>-1</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>endStep</em> = <code>-1</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>clusterCount</em> = <code>1</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get a new scan from the scanner. </p>
<p>Unlike <a class="el" href="classhokuyo__aist_1_1HokuyoLaser.html#a7f3e035fcaf0675b027cfba55cf85ad1">GetRanges</a>, which returns the most recent scan the scanner took, this function will request a new scan. This means it will wait while the scanner performs the scan, which means the rate at which scans can be retrieved using this function is less than with <a class="el" href="classhokuyo__aist_1_1HokuyoLaser.html#a7f3e035fcaf0675b027cfba55cf85ad1">GetRanges</a>. Otherwise behaves identicallty to <a class="el" href="classhokuyo__aist_1_1HokuyoLaser.html#a7f3e035fcaf0675b027cfba55cf85ad1">GetRanges</a>.</p>
<p>Not available with the SCIP v1 protocol.</p>
<dl class="note"><dt><b>Note:</b></dt><dd>The command used to retrieve a fresh scan is also used for the continuous scanning mode (not yet supported by this library). After completing a scan, it will turn the laser off (in anticipation of another continuous scan command being sent, which will automatically turn the laser back on again). If you want to mix <a class="el" href="classhokuyo__aist_1_1HokuyoLaser.html#a1b32883343569b1fc793a5386d292c7e">GetNewRanges</a> and <a class="el" href="classhokuyo__aist_1_1HokuyoLaser.html#a7f3e035fcaf0675b027cfba55cf85ad1">GetRanges</a>, you will need to turn the laser on after each call to <a class="el" href="classhokuyo__aist_1_1HokuyoLaser.html#a1b32883343569b1fc793a5386d292c7e">GetNewRanges</a>.</dd></dl>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>Pointer to a <a class="el" href="classhokuyo__aist_1_1HokuyoData.html">HokuyoData</a> object to store the range readings in. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>clusterCount</em>&nbsp;</td><td>The number of readings to cluster together into a single reading. The minimum value from a cluster is returned as the range for that cluster. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>startStep</em>&nbsp;</td><td>The first step to get ranges from. Set to -1 for the first scannable step. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>endStep</em>&nbsp;</td><td>The last step to get ranges from. Set to -1 for the last scannable step. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The number of range readings read into data. </dd></dl>

<p>References <a class="el" href="hokuyo__aist_8h_source.html#l00144">hokuyo_aist::HOKUYO_ERR_NODATA</a>, <a class="el" href="hokuyo__aist_8h_source.html#l00132">hokuyo_aist::HOKUYO_ERR_NODESTINATION</a>, <a class="el" href="hokuyo__aist_8h_source.html#l00124">hokuyo_aist::HOKUYO_ERR_PROTOCOL</a>, <a class="el" href="hokuyo__aist_8h_source.html#l00136">hokuyo_aist::HOKUYO_ERR_SCIPVERSION</a>, and <a class="el" href="hokuyo__aist_8h_source.html#l00140">hokuyo_aist::HOKUYO_ERR_UNSUPPORTED</a>.</p>

<p>Referenced by <a class="el" href="hokuyo__aist_8cpp_source.html#l01564">GetNewRangesByAngle()</a>.</p>

</div>
</div>
<a class="anchor" id="a5e512dbbaecfbea65d979eb6bb30636e"></a><!-- doxytag: member="hokuyo_aist::HokuyoLaser::GetNewRangesAndIntensities" ref="a5e512dbbaecfbea65d979eb6bb30636e" args="(HokuyoData *data, int startStep=&#45;1, int endStep=&#45;1, unsigned int clusterCount=1)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int hokuyo_aist::HokuyoLaser::GetNewRangesAndIntensities </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classhokuyo__aist_1_1HokuyoData.html">HokuyoData</a> *&nbsp;</td>
          <td class="paramname"> <em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>startStep</em> = <code>-1</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>endStep</em> = <code>-1</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>clusterCount</em> = <code>1</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get a new scan from the scanner with intensity data. </p>
<p>Unlike <a class="el" href="classhokuyo__aist_1_1HokuyoLaser.html#a7f3e035fcaf0675b027cfba55cf85ad1">GetRanges</a>, which returns the most recent scan the scanner took, this function will request a new scan. This means it will wait while the scanner performs the scan. Otherwise behaves identicallty to <a class="el" href="classhokuyo__aist_1_1HokuyoLaser.html#a7f3e035fcaf0675b027cfba55cf85ad1">GetRanges</a>.</p>
<p>Not available with the SCIP v1 protocol.</p>
<dl class="note"><dt><b>Note:</b></dt><dd>The command used to retrieve a fresh scan is also used for the continuous scanning mode (not yet supported by this library). After completing a scan, it will turn the laser off (in anticipation of another continuous scan command being sent, which will automatically turn the laser back on again). If you want to mix <a class="el" href="classhokuyo__aist_1_1HokuyoLaser.html#a1b32883343569b1fc793a5386d292c7e">GetNewRanges</a> and <a class="el" href="classhokuyo__aist_1_1HokuyoLaser.html#a7f3e035fcaf0675b027cfba55cf85ad1">GetRanges</a>, you will need to turn the laser on after each call to <a class="el" href="classhokuyo__aist_1_1HokuyoLaser.html#a1b32883343569b1fc793a5386d292c7e">GetNewRanges</a>.</dd></dl>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>Pointer to a <a class="el" href="classhokuyo__aist_1_1HokuyoData.html">HokuyoData</a> object to store the range readings in. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>clusterCount</em>&nbsp;</td><td>The number of readings to cluster together into a single reading. The minimum value from a cluster is returned as the range for that cluster. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>startStep</em>&nbsp;</td><td>The first step to get ranges from. Set to -1 for the first scannable step. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>endStep</em>&nbsp;</td><td>The last step to get ranges from. Set to -1 for the last scannable step. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The number of range readings read into data. </dd></dl>

<p>References <a class="el" href="hokuyo__aist_8h_source.html#l00144">hokuyo_aist::HOKUYO_ERR_NODATA</a>, <a class="el" href="hokuyo__aist_8h_source.html#l00132">hokuyo_aist::HOKUYO_ERR_NODESTINATION</a>, <a class="el" href="hokuyo__aist_8h_source.html#l00124">hokuyo_aist::HOKUYO_ERR_PROTOCOL</a>, <a class="el" href="hokuyo__aist_8h_source.html#l00136">hokuyo_aist::HOKUYO_ERR_SCIPVERSION</a>, and <a class="el" href="hokuyo__aist_8h_source.html#l00140">hokuyo_aist::HOKUYO_ERR_UNSUPPORTED</a>.</p>

<p>Referenced by <a class="el" href="hokuyo__aist_8cpp_source.html#l01684">GetNewRangesAndIntensitiesByAngle()</a>.</p>

</div>
</div>
<a class="anchor" id="a5cb3da3aa35d9d57ba4031d31361a39a"></a><!-- doxytag: member="hokuyo_aist::HokuyoLaser::GetNewRangesAndIntensitiesByAngle" ref="a5cb3da3aa35d9d57ba4031d31361a39a" args="(HokuyoData *data, double startAngle, double endAngle, unsigned int clusterCount=1)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int hokuyo_aist::HokuyoLaser::GetNewRangesAndIntensitiesByAngle </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classhokuyo__aist_1_1HokuyoData.html">HokuyoData</a> *&nbsp;</td>
          <td class="paramname"> <em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>startAngle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>endAngle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>clusterCount</em> = <code>1</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get a new scan from the scanner with intensity data. </p>
<p>Not available with the SCIP v1 protocol.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>Pointer to a <a class="el" href="classhokuyo__aist_1_1HokuyoData.html">HokuyoData</a> object to store the range readings in. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>startAngle</em>&nbsp;</td><td>The angle to get range readings from. Exclusive; if this falls between two steps the step inside the angle will be returned, but the step outside won't. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>endAngle</em>&nbsp;</td><td>The angle to get range readings to. Exclusive; if this falls between two steps the step inside the angle will be returned, but the step outside won't. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>clusterCount</em>&nbsp;</td><td>The number of readings to cluster together into a single reading. The minimum value from a cluster is returned as the range for that cluster. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The number of range readings read into data. </dd></dl>

<p>References <a class="el" href="hokuyo__aist_8cpp_source.html#l01721">AngleToStep()</a>, <a class="el" href="hokuyo__aist_8cpp_source.html#l01596">GetNewRangesAndIntensities()</a>, <a class="el" href="hokuyo__aist_8h_source.html#l00142">hokuyo_aist::HOKUYO_ERR_BADARG</a>, <a class="el" href="hokuyo__aist_8h_source.html#l00132">hokuyo_aist::HOKUYO_ERR_NODESTINATION</a>, and <a class="el" href="hokuyo__aist_8h_source.html#l00140">hokuyo_aist::HOKUYO_ERR_UNSUPPORTED</a>.</p>

</div>
</div>
<a class="anchor" id="a2791373f4ff5b075bbbb4705547b3b84"></a><!-- doxytag: member="hokuyo_aist::HokuyoLaser::GetNewRangesByAngle" ref="a2791373f4ff5b075bbbb4705547b3b84" args="(HokuyoData *data, double startAngle, double endAngle, unsigned int clusterCount=1)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int hokuyo_aist::HokuyoLaser::GetNewRangesByAngle </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classhokuyo__aist_1_1HokuyoData.html">HokuyoData</a> *&nbsp;</td>
          <td class="paramname"> <em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>startAngle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>endAngle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>clusterCount</em> = <code>1</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get a new scan from the scanner. </p>
<p>Not available with the SCIP v1 protocol.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>Pointer to a <a class="el" href="classhokuyo__aist_1_1HokuyoData.html">HokuyoData</a> object to store the range readings in. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>startAngle</em>&nbsp;</td><td>The angle to get range readings from. Exclusive; if this falls between two steps the step inside the angle will be returned, but the step outside won't. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>endAngle</em>&nbsp;</td><td>The angle to get range readings to. Exclusive; if this falls between two steps the step inside the angle will be returned, but the step outside won't. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>clusterCount</em>&nbsp;</td><td>The number of readings to cluster together into a single reading. The minimum value from a cluster is returned as the range for that cluster. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The number of range readings read into data. </dd></dl>

<p>References <a class="el" href="hokuyo__aist_8cpp_source.html#l01721">AngleToStep()</a>, <a class="el" href="hokuyo__aist_8cpp_source.html#l01476">GetNewRanges()</a>, <a class="el" href="hokuyo__aist_8h_source.html#l00142">hokuyo_aist::HOKUYO_ERR_BADARG</a>, <a class="el" href="hokuyo__aist_8h_source.html#l00132">hokuyo_aist::HOKUYO_ERR_NODESTINATION</a>, and <a class="el" href="hokuyo__aist_8h_source.html#l00140">hokuyo_aist::HOKUYO_ERR_UNSUPPORTED</a>.</p>

</div>
</div>
<a class="anchor" id="a7f3e035fcaf0675b027cfba55cf85ad1"></a><!-- doxytag: member="hokuyo_aist::HokuyoLaser::GetRanges" ref="a7f3e035fcaf0675b027cfba55cf85ad1" args="(HokuyoData *data, int startStep=&#45;1, int endStep=&#45;1, unsigned int clusterCount=1)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int hokuyo_aist::HokuyoLaser::GetRanges </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classhokuyo__aist_1_1HokuyoData.html">HokuyoData</a> *&nbsp;</td>
          <td class="paramname"> <em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>startStep</em> = <code>-1</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>endStep</em> = <code>-1</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>clusterCount</em> = <code>1</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the latest scan data from the scanner. </p>
<p>This function requires a pointer to a <a class="el" href="classhokuyo__aist_1_1HokuyoData.html">HokuyoData</a> object. It will allocate space in this object as necessary for storing range data. If the passed-in <a class="el" href="classhokuyo__aist_1_1HokuyoData.html">HokuyoData</a> object already has the correct quantity of space to store the range data, it will not be re-allocated. If it does not have any space, it will be allocated. If it has space, but it is the wrong size, it will be re-allocated. This means you can repeatedly send the same <a class="el" href="classhokuyo__aist_1_1HokuyoData.html">HokuyoData</a> object without having to worry about allocating its data, whether it will change or not, while also avoiding excessive allocations.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>Pointer to a <a class="el" href="classhokuyo__aist_1_1HokuyoData.html">HokuyoData</a> object to store the range readings in. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>clusterCount</em>&nbsp;</td><td>The number of readings to cluster together into a single reading. The minimum value from a cluster is returned as the range for that cluster. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>startStep</em>&nbsp;</td><td>The first step to get ranges from. Set to -1 for the first scannable step. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>endStep</em>&nbsp;</td><td>The last step to get ranges from. Set to -1 for the last scannable step. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The number of range readings read into data. </dd></dl>

<p>References <a class="el" href="hokuyo__aist_8h_source.html#l00144">hokuyo_aist::HOKUYO_ERR_NODATA</a>, <a class="el" href="hokuyo__aist_8h_source.html#l00132">hokuyo_aist::HOKUYO_ERR_NODESTINATION</a>, and <a class="el" href="hokuyo__aist_8h_source.html#l00136">hokuyo_aist::HOKUYO_ERR_SCIPVERSION</a>.</p>

<p>Referenced by <a class="el" href="hokuyo__aist_8cpp_source.html#l01449">GetRangesByAngle()</a>.</p>

</div>
</div>
<a class="anchor" id="ac90ae5db00a579aae20fccb0f4018bc4"></a><!-- doxytag: member="hokuyo_aist::HokuyoLaser::GetRangesByAngle" ref="ac90ae5db00a579aae20fccb0f4018bc4" args="(HokuyoData *data, double startAngle, double endAngle, unsigned int clusterCount=1)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int hokuyo_aist::HokuyoLaser::GetRangesByAngle </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classhokuyo__aist_1_1HokuyoData.html">HokuyoData</a> *&nbsp;</td>
          <td class="paramname"> <em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>startAngle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>endAngle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>clusterCount</em> = <code>1</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the latest scan data from the scanner. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>Pointer to a <a class="el" href="classhokuyo__aist_1_1HokuyoData.html">HokuyoData</a> object to store the range readings in. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>startAngle</em>&nbsp;</td><td>The angle to get range readings from. Exclusive; if this falls between two steps the step inside the angle will be returned, but the step outside won't. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>endAngle</em>&nbsp;</td><td>The angle to get range readings to. Exclusive; if this falls between two steps the step inside the angle will be returned, but the step outside won't. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>clusterCount</em>&nbsp;</td><td>The number of readings to cluster together into a single reading. The minimum value from a cluster is returned as the range for that cluster. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The number of range readings read into data. </dd></dl>

<p>References <a class="el" href="hokuyo__aist_8cpp_source.html#l01721">AngleToStep()</a>, <a class="el" href="hokuyo__aist_8cpp_source.html#l01396">GetRanges()</a>, <a class="el" href="hokuyo__aist_8h_source.html#l00142">hokuyo_aist::HOKUYO_ERR_BADARG</a>, and <a class="el" href="hokuyo__aist_8h_source.html#l00132">hokuyo_aist::HOKUYO_ERR_NODESTINATION</a>.</p>

</div>
</div>
<a class="anchor" id="a724ef08c0af4c32368c48aeae9ccb235"></a><!-- doxytag: member="hokuyo_aist::HokuyoLaser::GetSensorInfo" ref="a724ef08c0af4c32368c48aeae9ccb235" args="(HokuyoSensorInfo *info)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void hokuyo_aist::HokuyoLaser::GetSensorInfo </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classhokuyo__aist_1_1HokuyoSensorInfo.html">HokuyoSensorInfo</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get various information about the scanner. </p>
<p>Much of the information is not available with the SCIP v1 protocol. </p>

<p>References <a class="el" href="hokuyo__aist_8cpp_source.html#l00526">hokuyo_aist::HokuyoSensorInfo::AsString()</a>, <a class="el" href="hokuyo__aist_8h_source.html#l00173">hokuyo_aist::HokuyoSensorInfo::firmware</a>, <a class="el" href="hokuyo__aist_8h_source.html#l00189">hokuyo_aist::HokuyoSensorInfo::firstStep</a>, <a class="el" href="hokuyo__aist_8h_source.html#l00193">hokuyo_aist::HokuyoSensorInfo::frontStep</a>, <a class="el" href="hokuyo__aist_8h_source.html#l00132">hokuyo_aist::HOKUYO_ERR_NODESTINATION</a>, <a class="el" href="hokuyo__aist_8h_source.html#l00136">hokuyo_aist::HOKUYO_ERR_SCIPVERSION</a>, <a class="el" href="hokuyo__aist_8h_source.html#l00191">hokuyo_aist::HokuyoSensorInfo::lastStep</a>, <a class="el" href="hokuyo__aist_8h_source.html#l00219">hokuyo_aist::HokuyoSensorInfo::maxAngle</a>, <a class="el" href="hokuyo__aist_8h_source.html#l00185">hokuyo_aist::HokuyoSensorInfo::maxRange</a>, <a class="el" href="hokuyo__aist_8h_source.html#l00216">hokuyo_aist::HokuyoSensorInfo::minAngle</a>, <a class="el" href="hokuyo__aist_8h_source.html#l00183">hokuyo_aist::HokuyoSensorInfo::minRange</a>, <a class="el" href="hokuyo__aist_8h_source.html#l00171">hokuyo_aist::HokuyoSensorInfo::product</a>, <a class="el" href="hokuyo__aist_8h_source.html#l00175">hokuyo_aist::HokuyoSensorInfo::protocol</a>, <a class="el" href="hokuyo__aist_8h_source.html#l00221">hokuyo_aist::HokuyoSensorInfo::resolution</a>, <a class="el" href="hokuyo__aist_8h_source.html#l00223">hokuyo_aist::HokuyoSensorInfo::scanableSteps</a>, <a class="el" href="hokuyo__aist_8h_source.html#l00211">hokuyo_aist::HokuyoSensorInfo::sensorDiagnostic</a>, <a class="el" href="hokuyo__aist_8h_source.html#l00177">hokuyo_aist::HokuyoSensorInfo::serial</a>, <a class="el" href="hokuyo__aist_8h_source.html#l00201">hokuyo_aist::HokuyoSensorInfo::speed</a>, and <a class="el" href="hokuyo__aist_8h_source.html#l00169">hokuyo_aist::HokuyoSensorInfo::vendor</a>.</p>

</div>
</div>
<a class="anchor" id="a0fbe9c851e0ed1e0d264fd838724054d"></a><!-- doxytag: member="hokuyo_aist::HokuyoLaser::GetTime" ref="a0fbe9c851e0ed1e0d264fd838724054d" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int hokuyo_aist::HokuyoLaser::GetTime </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the current value of the scanner's clock in milliseconds. </p>
<p>Not available with the SCIP v1 protocol. </p>

<p>References <a class="el" href="hokuyo__aist_8h_source.html#l00136">hokuyo_aist::HOKUYO_ERR_SCIPVERSION</a>, and <a class="el" href="hokuyo__aist_8h_source.html#l00140">hokuyo_aist::HOKUYO_ERR_UNSUPPORTED</a>.</p>

</div>
</div>
<a class="anchor" id="a1d363753ce5f7eb6669478cda8fa228d"></a><!-- doxytag: member="hokuyo_aist::HokuyoLaser::OpenWithProbing" ref="a1d363753ce5f7eb6669478cda8fa228d" args="(std::string portOptions)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int hokuyo_aist::HokuyoLaser::OpenWithProbing </td>
          <td>(</td>
          <td class="paramtype">std::string&nbsp;</td>
          <td class="paramname"> <em>portOptions</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Open the laser scanner and begin scanning, probing the baud rate as necessary. </p>
<p>If the port is a serial connection and communication with the laser fails at the given baud rate, the alternative baud rates supported by the device are tried (see <a class="el" href="classhokuyo__aist_1_1HokuyoLaser.html#ac9336bdd86c5bb98be7d42e4015dc723">SetBaud</a> for these) in order from fastest to slowest.</p>
<dl class="return"><dt><b>Returns:</b></dt><dd>The baud rate at which connection with the laser succeeded, or 0 for non-serial connections. </dd></dl>

</div>
</div>
<a class="anchor" id="a4bd124f242462eaf6267094d1d2ef639"></a><!-- doxytag: member="hokuyo_aist::HokuyoLaser::Reset" ref="a4bd124f242462eaf6267094d1d2ef639" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void hokuyo_aist::HokuyoLaser::Reset </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Reset the laser scanner to its default settings. </p>
<p>Not available with the SCIP v1 protocol. </p>

<p>References <a class="el" href="hokuyo__aist_8h_source.html#l00136">hokuyo_aist::HOKUYO_ERR_SCIPVERSION</a>, and <a class="el" href="hokuyo__aist_8h_source.html#l00140">hokuyo_aist::HOKUYO_ERR_UNSUPPORTED</a>.</p>

</div>
</div>
<a class="anchor" id="ac9336bdd86c5bb98be7d42e4015dc723"></a><!-- doxytag: member="hokuyo_aist::HokuyoLaser::SetBaud" ref="ac9336bdd86c5bb98be7d42e4015dc723" args="(unsigned int baud)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void hokuyo_aist::HokuyoLaser::SetBaud </td>
          <td>(</td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>baud</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Change the baud rate when using a serial connection. </p>
<p>Valid rates are 19.2Kbps, 38.4Kbps, 57.6Kbps, 115.2Kbps, 250.0Kbps, 500.0Kbps, 750.0Kbps (dependent on those available in FlexiPort). </p>

<p>References <a class="el" href="port_8h_source.html#l00265">flexiport::Port::GetPortType()</a>, <a class="el" href="hokuyo__aist_8h_source.html#l00142">hokuyo_aist::HOKUYO_ERR_BADARG</a>, <a class="el" href="hokuyo__aist_8h_source.html#l00146">hokuyo_aist::HOKUYO_ERR_NOTSERIAL</a>, and <a class="el" href="hokuyo__aist_8h_source.html#l00136">hokuyo_aist::HOKUYO_ERR_SCIPVERSION</a>.</p>

</div>
</div>
<a class="anchor" id="a0ebcd2b02153ce35ebe9680979ac863a"></a><!-- doxytag: member="hokuyo_aist::HokuyoLaser::SetMotorSpeed" ref="a0ebcd2b02153ce35ebe9680979ac863a" args="(unsigned int speed)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void hokuyo_aist::HokuyoLaser::SetMotorSpeed </td>
          <td>(</td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>speed</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set the speed at which the scanner's sensor spins. </p>
<p>Set the speed to 0 to have it reset to the default value, and 99 to reset it to the initial (startup) value. Values between 1 and 10 specify a ratio of the default speed. The speeds in revolutions per minute that these correspond to will depend on the scanner model. For example, for a URG-04LX, they are (from 1 to 10) 594, 588, 576, 570, 564, 558, 552, 546, and 540 rpm.</p>
<p>Not available with the SCIP v1 protocol. </p>

<p>References <a class="el" href="hokuyo__aist_8h_source.html#l00142">hokuyo_aist::HOKUYO_ERR_BADARG</a>, <a class="el" href="hokuyo__aist_8h_source.html#l00136">hokuyo_aist::HOKUYO_ERR_SCIPVERSION</a>, and <a class="el" href="hokuyo__aist_8h_source.html#l00140">hokuyo_aist::HOKUYO_ERR_UNSUPPORTED</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="hokuyo__aist_8h_source.html">hokuyo_aist.h</a></li>
<li>hokuyo_aist.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>