Sophie

Sophie

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

mrpt-doc-0.9.5-0.1.20110925svn2670.fc16.i686.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>mrpt::slam::CRandomFieldGridMap2D Class Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<div align="left"><a href="http://www.mrpt.org/">Main MRPT website</a> &gt; <b>C++ reference</b> </div>
<div align="right">
<a href="index.html"><img border="0" src="mrpt_logo.png" alt="MRPT logo"></a>
</div>
<!-- Generated by Doxygen 1.7.5 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
          <div class="left">
            <form id="FSearchBox" action="search.php" method="get">
              <img id="MSearchSelect" src="search/mag.png" alt=""/>
              <input type="text" id="MSearchField" name="query" value="Search" size="20" accesskey="S" 
                     onfocus="searchBox.OnSearchFieldFocus(true)" 
                     onblur="searchBox.OnSearchFieldFocus(false)"/>
            </form>
          </div><div class="right"></div>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
  <div id="nav-path" class="navpath">
    <ul>
      <li class="navelem"><a class="el" href="namespacemrpt.html">mrpt</a>      </li>
      <li class="navelem"><a class="el" href="namespacemrpt_1_1slam.html">slam</a>      </li>
      <li class="navelem"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html">CRandomFieldGridMap2D</a>      </li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="#pub-static-attribs">Static Public Attributes</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a> &#124;
<a href="#pri-types">Private Types</a>  </div>
  <div class="headertitle">
<div class="title">mrpt::slam::CRandomFieldGridMap2D Class Reference<div class="ingroups"><a class="el" href="group__mrpt__maps__grp.html">[mrpt-maps]</a></div></div>  </div>
</div>
<div class="contents">
<!-- doxytag: class="mrpt::slam::CRandomFieldGridMap2D" --><!-- doxytag: inherits="mrpt::slam::CMetricMap,CDynamicGrid&lt; TRandomFieldCell &gt;" --><hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html" title="CRandomFieldGridMap2D represents a 2D grid map where each cell is associated one real-valued property...">CRandomFieldGridMap2D</a> represents a 2D grid map where each cell is associated one real-valued property which is estimated by this map, either as a simple value or as a probility distribution (for each cell). </p>
<p>There are a number of methods available to build the gas grid-map, depending on the value of "TMapRepresentation maptype" passed in the constructor.</p>
<p>The following papers describe the mapping alternatives implemented here:</p>
<ul>
<li>mrKernelDM: A kernel-based method: "Building gas concentration gridmaps with a mobile robot", Lilienthal, A. and Duckett, T., Robotics and Autonomous Systems, v.48, 2004.</li>
</ul>
<ul>
<li>mrKernelDMV: A kernel-based method: "A Statistical Approach to Gas Distribution Modelling with Mobile Robots--The Kernel DM+ V Algorithm" , Lilienthal, A.J. and Reggente, M. and Trincavelli, M. and Blanco, J.L. and Gonzalez, J., IROS 2009.</li>
</ul>
<p>Note that this class is virtual, since derived classes still have to implement:</p>
<ul>
<li><a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#ad5cefa1e3e6efb0cff473a32c5ed6009" title="Computes the log-likelihood of a given observation given an arbitrary robot 3D pose.">mrpt::slam::CMetricMap::computeObservationLikelihood()</a></li>
<li><a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#aab88fec1ad02cceaaaf74c02d4e6f68a" title="Internal method called by insertObservation()">mrpt::slam::CMetricMap::internal_insertObservation()</a></li>
<li>Serialization methods: <a class="el" href="classmrpt_1_1utils_1_1_c_serializable.html#a0b6b801e67bca3d8e0d355e7035f8013" title="Introduces a pure virtual method responsible for writing to a CStream.">writeToStream()</a> and <a class="el" href="classmrpt_1_1utils_1_1_c_serializable.html#a73ba83035a64939cdc3aa1c0dfed23ec" title="Introduces a pure virtual method responsible for loading from a CStream This can not be used directly...">readFromStream()</a></li>
</ul>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classmrpt_1_1slam_1_1_c_gas_concentration_grid_map2_d.html" title="CGasConcentrationGridMap2D represents a PDF of gas concentrations over a 2D area.">mrpt::slam::CGasConcentrationGridMap2D</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_wireless_power_grid_map2_d.html" title="CWirelessPowerGridMap2D represents a PDF of wifi concentrations over a 2D area.">mrpt::slam::CWirelessPowerGridMap2D</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html" title="Declares a virtual base class for all metric maps storage classes.">mrpt::slam::CMetricMap</a>, <a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html" title="A 2D grid of dynamic size which stores any kind of data at each cell.">mrpt::utils::CDynamicGrid</a>, The application icp-slam, <a class="el" href="classmrpt_1_1slam_1_1_c_multi_metric_map.html" title="This class stores any customizable set of metric maps.">mrpt::slam::CMultiMetricMap</a> </dd></dl>
</div>
<p><code>#include &lt;<a class="el" href="_c_random_field_grid_map2_d_8h_source.html">mrpt/slam/CRandomFieldGridMap2D.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for mrpt::slam::CRandomFieldGridMap2D:</div>
<div class="dyncontent">
<div class="center"><img src="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d__inherit__graph.png" border="0" usemap="#mrpt_1_1slam_1_1_c_random_field_grid_map2_d_inherit__map" alt="Inheritance graph"/></div>
<map name="mrpt_1_1slam_1_1_c_random_field_grid_map2_d_inherit__map" id="mrpt_1_1slam_1_1_c_random_field_grid_map2_d_inherit__map">
<area shape="rect" id="node15" href="classmrpt_1_1slam_1_1_c_gas_concentration_grid_map2_d.html" title="CGasConcentrationGridMap2D represents a PDF of gas concentrations over a 2D area." alt="" coords="118,328,391,355"/><area shape="rect" id="node17" href="classmrpt_1_1slam_1_1_c_wireless_power_grid_map2_d.html" title="CWirelessPowerGridMap2D represents a PDF of wifi concentrations over a 2D area." alt="" coords="416,328,672,355"/><area shape="rect" id="node2" href="classmrpt_1_1slam_1_1_c_metric_map.html" title="Declares a virtual base class for all metric maps storage classes." alt="" coords="161,173,324,200"/><area shape="rect" id="node4" href="classmrpt_1_1utils_1_1_c_serializable.html" title="The virtual base class which provides a unified interface for all persistent objects in MRPT..." alt="" coords="4,83,168,109"/><area shape="rect" id="node6" href="classmrpt_1_1utils_1_1_c_object.html" title="The virtual base class of all MRPT classes with a unified RTTI system." alt="" coords="19,5,153,32"/><area shape="rect" id="node8" href="classmrpt_1_1utils_1_1_c_observable.html" title="Inherit from this class for those objects capable of being observed by a CObserver class..." alt="" coords="194,83,357,109"/><area shape="rect" id="node10" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html" title="mrpt::utils::CDynamicGrid\&lt; TRandomFieldCell \&gt;" alt="" coords="348,173,653,200"/><area shape="rect" id="node12" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html" title="A 2D grid of dynamic size which stores any kind of data at each cell." alt="" coords="414,83,588,109"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>

<p><a href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d-members.html">List of all members.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmrpt_1_1slam_1_1_c_random_field_grid_map2_d_1_1_t_insertion_options_common.html">TInsertionOptionsCommon</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Parameters common to any derived class.  <a href="structmrpt_1_1slam_1_1_c_random_field_grid_map2_d_1_1_t_insertion_options_common.html#details">More...</a><br/></td></tr>
<tr><td colspan="2"><h2><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a1bdb0ec64ac5ebc8f0b803b66151703a">TMapRepresentation</a> { <br/>
&#160;&#160;<a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a1bdb0ec64ac5ebc8f0b803b66151703aa74922fc75f39ecce9f2f53a6fd1af7cc">mrKernelDM</a> =  0, 
<a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a1bdb0ec64ac5ebc8f0b803b66151703aa9309f68da0f5bb01cdfa973305ce623c">mrAchim</a> =  0, 
<a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a1bdb0ec64ac5ebc8f0b803b66151703aa65b92bd320f8b9834cbe5554b7f2a4c0">mrKalmanFilter</a>, 
<a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a1bdb0ec64ac5ebc8f0b803b66151703aaa58f7d260813aa09d312883dee48d56b">mrKalmanApproximate</a>, 
<br/>
&#160;&#160;<a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a1bdb0ec64ac5ebc8f0b803b66151703aab63874317f7204696d76c86b89beed16">mrKernelDMV</a>
<br/>
 }</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">The type of map representation to be used.  <a href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a1bdb0ec64ac5ebc8f0b803b66151703a">More...</a><br/></td></tr>
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a814f4778b6ae7a2f9896311258d11d16">clear</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Calls the base <a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#afe18b3eac9b4ff07b674e0eb74652f5b" title="Erase all the contents of the map.">CMetricMap::clear</a> Declared here to avoid ambiguity between the two <a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a814f4778b6ae7a2f9896311258d11d16" title="Calls the base CMetricMap::clear Declared here to avoid ambiguity between the two clear() in both bas...">clear()</a> in both base classes.  <a href="#a814f4778b6ae7a2f9896311258d11d16"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a2003d2a313da0a880a43949201713243">cell2float</a> (const <a class="el" href="structmrpt_1_1slam_1_1_t_random_field_cell.html">TRandomFieldCell</a> &amp;c) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#accefbf61b5feb257bfab0530184337ff">CRandomFieldGridMap2D</a> (<a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a1bdb0ec64ac5ebc8f0b803b66151703a">TMapRepresentation</a> mapType=mrAchim, float x_min=-2, float x_max=2, float y_min=-2, float y_max=2, float resolution=0.1)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="#accefbf61b5feb257bfab0530184337ff"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#ab0b808a64312a83401796abfa4e33076">~CRandomFieldGridMap2D</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="#ab0b808a64312a83401796abfa4e33076"></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="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a1a5d553a88fe8001ee9bd99b3ce4b52d">isEmpty</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if the map is empty/no observation has been inserted (in this class it always return false, unless redefined otherwise in base classes)  <a href="#a1a5d553a88fe8001ee9bd99b3ce4b52d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#ae9683b3ad3051a68b012aa67aa544ce0">saveAsBitmapFile</a> (const <a class="el" href="classstd_1_1string.html">std::string</a> &amp;filName) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Save the current map as a graphical file (BMP,PNG,...).  <a href="#ae9683b3ad3051a68b012aa67aa544ce0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#afc6db16768f9079bf47d5b1476b5e996">getAsBitmapFile</a> (<a class="el" href="classmrpt_1_1utils_1_1_c_image.html">mrpt::utils::CImage</a> &amp;out_img) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns an image just as described in <em>saveAsBitmapFile</em>.  <a href="#afc6db16768f9079bf47d5b1476b5e996"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a609f16ecd8a54610090f48b474b5098f">resize</a> (float new_x_min, float new_x_max, float new_y_min, float new_y_max, const <a class="el" href="structmrpt_1_1slam_1_1_t_random_field_cell.html">TRandomFieldCell</a> &amp;defaultValueNewCells, float additionalMarginMeters=1.0f)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Changes the size of the grid, maintaining previous contents.  <a href="#a609f16ecd8a54610090f48b474b5098f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#acf4c103e5db2f06ec814645f728f6ce2">compute3DMatchingRatio</a> (const <a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html">CMetricMap</a> *otherMap, const <a class="el" href="classmrpt_1_1poses_1_1_c_pose3_d.html">CPose3D</a> &amp;otherMapPose, float minDistForCorr=0.10f, float minMahaDistForCorr=2.0f) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes the ratio in [0,1] of correspondences between "this" and the "otherMap" map, whose 6D pose relative to "this" is "otherMapPose" In the case of a multi-metric map, this returns the average between the maps.  <a href="#acf4c103e5db2f06ec814645f728f6ce2"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a8c58a41751a103962401f5f2768e0bc8">saveMetricMapRepresentationToFile</a> (const <a class="el" href="classstd_1_1string.html">std::string</a> &amp;filNamePrefix) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">The implementation in this class just calls all the corresponding method of the contained metric maps.  <a href="#a8c58a41751a103962401f5f2768e0bc8"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a2d24916fa541757e2fc02a5da12ec9ff">saveAsMatlab3DGraph</a> (const <a class="el" href="classstd_1_1string.html">std::string</a> &amp;filName) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Save a matlab ".m" file which represents as 3D surfaces the mean and a given confidence level for the concentration of each cell.  <a href="#a2d24916fa541757e2fc02a5da12ec9ff"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#aabe9a9913d0f135abd54ead888787281">getAsMatlab3DGraphScript</a> (<a class="el" href="classstd_1_1string.html">std::string</a> &amp;out_script) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Return a large text block with a MATLAB script to plot the contents of this map.  <a href="#aabe9a9913d0f135abd54ead888787281"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a2fa4c22d128c7d97a2df7311b52fde71">getAs3DObject</a> (<a class="el" href="structmrpt_1_1opengl_1_1_c_set_of_objects_ptr.html">mrpt::opengl::CSetOfObjectsPtr</a> &amp;outObj) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a 3D object representing the map.  <a href="#a2fa4c22d128c7d97a2df7311b52fde71"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a1bdb0ec64ac5ebc8f0b803b66151703a">TMapRepresentation</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#ae6db1a79c4966b3ad989011ef9cea9df">getMapType</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the type of the random-field grid map, according to parameters passed on construction.  <a href="#ae6db1a79c4966b3ad989011ef9cea9df"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#af5432ab6a12bdadea34f1940f02e8f07">predictMeasurement</a> (const double &amp;x, const double &amp;y, double &amp;out_predict_response, double &amp;out_predict_response_variance)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the prediction of the measurement at some (x,y) coordinates, and its certainty (in the form of the expected variance).  <a href="#af5432ab6a12bdadea34f1940f02e8f07"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a42d516517b992a3e652d5cd26a1dedf6">getMeanAndCov</a> (<a class="el" href="namespacemrpt.html#a4a6aab2c98368ca6b554c04f8fe84cfb">vector_double</a> &amp;out_means, <a class="el" href="namespacemrpt_1_1math.html#a3814c2b868f059d6a7ab0d8ecd2311d6">CMatrixDouble</a> &amp;out_cov) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the mean and covariance vector of the full Kalman filter estimate (works for all KF-based methods).  <a href="#a42d516517b992a3e652d5cd26a1dedf6"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#a9fbc1945a342365600bf352ec89fc617">loadFromProbabilisticPosesAndObservations</a> (const <a class="el" href="classmrpt_1_1slam_1_1_c_simple_map.html">CSimpleMap</a> &amp;Map)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Load the map contents from a <a class="el" href="classmrpt_1_1slam_1_1_c_simple_map.html" title="This class stores a sequence of &lt;Probabilistic Pose,SensoryFrame&gt; pairs, thus a &quot;metric map&quot; can be t...">CSimpleMap</a> object, erasing all previous content of the map.  <a href="#a9fbc1945a342365600bf352ec89fc617"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#aedf155237d3fe3d595994b9659a4e688">loadFromSimpleMap</a> (const <a class="el" href="classmrpt_1_1slam_1_1_c_simple_map.html">CSimpleMap</a> &amp;Map)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Load the map contents from a <a class="el" href="classmrpt_1_1slam_1_1_c_simple_map.html" title="This class stores a sequence of &lt;Probabilistic Pose,SensoryFrame&gt; pairs, thus a &quot;metric map&quot; can be t...">CSimpleMap</a> object, erasing all previous content of the map.  <a href="#aedf155237d3fe3d595994b9659a4e688"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#ad1d3f22228d6dbdb3c31c132713bf782">insertObservation</a> (const <a class="el" href="classmrpt_1_1slam_1_1_c_observation.html">CObservation</a> *obs, const <a class="el" href="classmrpt_1_1poses_1_1_c_pose3_d.html">CPose3D</a> *robotPose=NULL)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Insert the observation information into this map.  <a href="#ad1d3f22228d6dbdb3c31c132713bf782"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#a7cb614f5ec634ec6f6a20b14163e5b07">insertObservationPtr</a> (const <a class="el" href="structmrpt_1_1slam_1_1_c_observation_ptr.html">CObservationPtr</a> &amp;obs, const <a class="el" href="classmrpt_1_1poses_1_1_c_pose3_d.html">CPose3D</a> *robotPose=NULL)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">A wrapper for smart pointers, just calls the non-smart pointer version.  <a href="#a7cb614f5ec634ec6f6a20b14163e5b07"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#ad5cefa1e3e6efb0cff473a32c5ed6009">computeObservationLikelihood</a> (const <a class="el" href="classmrpt_1_1slam_1_1_c_observation.html">CObservation</a> *obs, const <a class="el" href="classmrpt_1_1poses_1_1_c_pose3_d.html">CPose3D</a> &amp;takenFrom)=0</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes the log-likelihood of a given observation given an arbitrary robot 3D pose.  <a href="#ad5cefa1e3e6efb0cff473a32c5ed6009"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#a6adfc3df476a7edafaca40444d8dad04">computeObservationLikelihood</a> (const <a class="el" href="classmrpt_1_1slam_1_1_c_observation.html">CObservation</a> *obs, const <a class="el" href="classmrpt_1_1poses_1_1_c_pose2_d.html">CPose2D</a> &amp;takenFrom)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes the log-likelihood of a given observation given an arbitrary robot 2D pose.  <a href="#a6adfc3df476a7edafaca40444d8dad04"></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="classmrpt_1_1slam_1_1_c_metric_map.html#a8936d61e45446a74633d00a7ce6b4603">canComputeObservationLikelihood</a> (const <a class="el" href="classmrpt_1_1slam_1_1_c_observation.html">CObservation</a> *obs)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if this map is able to compute a sensible likelihood function for this observation (i.e.  <a href="#a8936d61e45446a74633d00a7ce6b4603"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#a8184371fde28bc35a9ec461240b83b43">computeObservationsLikelihood</a> (const <a class="el" href="classmrpt_1_1slam_1_1_c_sensory_frame.html">CSensoryFrame</a> &amp;sf, const <a class="el" href="classmrpt_1_1poses_1_1_c_pose2_d.html">CPose2D</a> &amp;takenFrom)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the sum of the log-likelihoods of each individual observation within a <a class="el" href="classmrpt_1_1slam_1_1_c_sensory_frame.html" title="Declares a class for storing a &quot;sensory frame&quot;, a set of &quot;observations&quot; taken by the robot approximat...">mrpt::slam::CSensoryFrame</a>.  <a href="#a8184371fde28bc35a9ec461240b83b43"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#ab3b66046cae11313beba57052b852eca">canComputeObservationsLikelihood</a> (const <a class="el" href="classmrpt_1_1slam_1_1_c_sensory_frame.html">CSensoryFrame</a> &amp;sf)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if this map is able to compute a sensible likelihood function for this observation (i.e.  <a href="#ab3b66046cae11313beba57052b852eca"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#aa684de52360d687fb0ee30790f430574">computeMatchingWith2D</a> (const <a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html">CMetricMap</a> *otherMap, const <a class="el" href="classmrpt_1_1poses_1_1_c_pose2_d.html">CPose2D</a> &amp;otherMapPose, float maxDistForCorrespondence, float maxAngularDistForCorrespondence, const <a class="el" href="classmrpt_1_1poses_1_1_c_pose2_d.html">CPose2D</a> &amp;angularDistPivotPoint, <a class="el" href="classmrpt_1_1utils_1_1_t_matching_pair_list.html">TMatchingPairList</a> &amp;correspondences, float &amp;correspondencesRatio, float *sumSqrDist=NULL, bool onlyKeepTheClosest=true, bool onlyUniqueRobust=false, const size_t decimation_other_map_points=1, const size_t offset_other_map_points=0) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes the matchings between this and another 2D points map.  <a href="#aa684de52360d687fb0ee30790f430574"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#a7aafbdbb3f2cb17e14e1af9997c3fa48">computeMatchingWith3D</a> (const <a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html">CMetricMap</a> *otherMap, const <a class="el" href="classmrpt_1_1poses_1_1_c_pose3_d.html">CPose3D</a> &amp;otherMapPose, float maxDistForCorrespondence, float maxAngularDistForCorrespondence, const <a class="el" href="classmrpt_1_1poses_1_1_c_point3_d.html">CPoint3D</a> &amp;angularDistPivotPoint, <a class="el" href="classmrpt_1_1utils_1_1_t_matching_pair_list.html">TMatchingPairList</a> &amp;correspondences, float &amp;correspondencesRatio, float *sumSqrDist=NULL, bool onlyKeepTheClosest=true, bool onlyUniqueRobust=false, const size_t decimation_other_map_points=1, const size_t offset_other_map_points=0) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes the matchings between this and another 3D points map - method used in 3D-ICP.  <a href="#a7aafbdbb3f2cb17e14e1af9997c3fa48"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#aabd4d4be402cdd01bc8db467f214516a">auxParticleFilterCleanUp</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">This method is called at the end of each "prediction-update-map insertion" cycle within "mrpt::slam::CMetricMapBuilderRBPF::processActionObservation".  <a href="#aabd4d4be402cdd01bc8db467f214516a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#ae6235efcb6d5da8e9db1ad6ccfb8225c">squareDistanceToClosestCorrespondence</a> (const float &amp;x0, const float &amp;y0) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the square distance from the 2D point (x0,y0) to the closest correspondence in the map.  <a href="#ae6235efcb6d5da8e9db1ad6ccfb8225c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual const <a class="el" href="classmrpt_1_1slam_1_1_c_simple_points_map.html">CSimplePointsMap</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#ae7b0688c0e2c0d75554e22b739649463">getAsSimplePointsMap</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">If the map is a simple points map or it's a multi-metric map that contains EXACTLY one simple points map, return it.  <a href="#ae7b0688c0e2c0d75554e22b739649463"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classmrpt_1_1slam_1_1_c_simple_points_map.html">CSimplePointsMap</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#ace4e7cc2a2f070d556c5074117a3aa2f">getAsSimplePointsMap</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classmrpt_1_1utils_1_1_c_object.html">CObject</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_object.html#aa1070e173c5f7e307b09c53f1fd256e2">duplicate</a> () const =0</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a copy of the object, indepently of its class.  <a href="#aa1070e173c5f7e307b09c53f1fd256e2"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1utils_1_1_c_object_ptr.html">mrpt::utils::CObjectPtr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_object.html#a534695890364f4b916bba07dad311bcf">duplicateGetSmartPtr</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a copy of the object, indepently of its class, as a smart pointer (the newly created object will exist as long as any copy of this smart pointer).  <a href="#a534695890364f4b916bba07dad311bcf"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1utils_1_1_c_object.html">CObject</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_object.html#a9ef7857a0b36059c078e195a0a65ac00">clone</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Cloning interface for smart pointers.  <a href="#a9ef7857a0b36059c078e195a0a65ac00"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#a926be9ff11d4f3a8f5553262b8fcacd9">setSize</a> (float x_min, float x_max, float y_min, float y_max, float resolution)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Changes the size of the grid, ERASING all previous contents.  <a href="#a926be9ff11d4f3a8f5553262b8fcacd9"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#a1abcf1677e597799ad7572b604f32645">fill</a> (const T &amp;value)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Fills all the cells with the same value.  <a href="#a1abcf1677e597799ad7572b604f32645"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#af43d36e226e0c62a03353504bc443556">resize</a> (float new_x_min, float new_x_max, float new_y_min, float new_y_max, const T &amp;defaultValueNewCells, float additionalMarginMeters=2.0f)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Changes the size of the grid, maintaining previous contents.  <a href="#af43d36e226e0c62a03353504bc443556"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">T *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#a5277bca042c6ade6fd67d5c0a8a172f2">cellByPos</a> (float x, float y)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a pointer to the contents of a cell given by its coordinates, or NULL if it is out of the map extensions.  <a href="#a5277bca042c6ade6fd67d5c0a8a172f2"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const T *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#aebbd206e29754dbdbd3aa1ee37be6dab">cellByPos</a> (float x, float y) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a pointer to the contents of a cell given by its coordinates, or NULL if it is out of the map extensions.  <a href="#aebbd206e29754dbdbd3aa1ee37be6dab"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">T *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#a4781cecfa674b11cd29470a0555a0622">cellByIndex</a> (unsigned int cx, unsigned int cy)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a pointer to the contents of a cell given by its cell indexes, or NULL if it is out of the map extensions.  <a href="#a4781cecfa674b11cd29470a0555a0622"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const T *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#a58d68888956305d5f86f56760922270b">cellByIndex</a> (unsigned int cx, unsigned int cy) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a pointer to the contents of a cell given by its cell indexes, or NULL if it is out of the map extensions.  <a href="#a58d68888956305d5f86f56760922270b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#aeb24078d14768d08d00c1eb79c547ff3">getSizeX</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the horizontal size of grid map in cells count.  <a href="#aeb24078d14768d08d00c1eb79c547ff3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#a4d300627ac8a06e1e277292c1b0a711b">getSizeY</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the vertical size of grid map in cells count.  <a href="#a4d300627ac8a06e1e277292c1b0a711b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#a4056c7f1f93e0ad84b1dc11429080312">getXMin</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the "x" coordinate of left side of grid map.  <a href="#a4056c7f1f93e0ad84b1dc11429080312"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#a5b3ddaf4838deb69402688a149fff54c">getXMax</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the "x" coordinate of right side of grid map.  <a href="#a5b3ddaf4838deb69402688a149fff54c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#ae0c391b4f19aea09157f837d7fa15a3b">getYMin</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the "y" coordinate of top side of grid map.  <a href="#ae0c391b4f19aea09157f837d7fa15a3b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#aa287d6b8076e7377bb37a4e4194cf9b5">getYMax</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the "y" coordinate of bottom side of grid map.  <a href="#aa287d6b8076e7377bb37a4e4194cf9b5"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#adc2166ca7c775540b668a2f3e81d0ba1">getResolution</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the resolution of the grid map.  <a href="#adc2166ca7c775540b668a2f3e81d0ba1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#ab1cff5e8d8397872ca5628ebeec4bb64">cell2float</a> (const T &amp;c) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">The user must implement this in order to provide "saveToTextFile" a way to convert each cell into a numeric value.  <a href="#ab1cff5e8d8397872ca5628ebeec4bb64"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#ad4a3fca506c6391411806f563de64047">saveToTextFile</a> (const <a class="el" href="classstd_1_1string.html">std::string</a> &amp;fileName) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#af7c9b186fa24f231178f0b1ccd778ab1">x2idx</a> (float x) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Transform a coordinate values into cell indexes.  <a href="#af7c9b186fa24f231178f0b1ccd778ab1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#ae5f9732fa03110a3a1c801672d073251">x2idx</a> (float x, float x_min) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Transform a coordinate value into a cell index, using a diferent "x_min" value.  <a href="#ae5f9732fa03110a3a1c801672d073251"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#af5210a6b58e116584fb7ec391048573b">y2idx</a> (float y) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#a0460a7c8543c6e9f8de28cc5cadfa640">y2idx</a> (float y, float y_min) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#a63dedb14db1e7363f45ab7c6aed9fdb8">xy2idx</a> (float x, float y) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#a20356dae1065b5ed663b08bed36d6f11">idx2cxcy</a> (const int &amp;idx, int &amp;cx, int &amp;cy) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Transform a global (linear) cell index value into its corresponding (x,y) cell indexes.  <a href="#a20356dae1065b5ed663b08bed36d6f11"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#a91a60d42d43bdc6d0174b492521fc5dc">idx2x</a> (int cx) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Transform a cell index into a coordinate value.  <a href="#a91a60d42d43bdc6d0174b492521fc5dc"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#aad004e29d48cd60015f6711f497483fa">idx2y</a> (int cy) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#aad1ca5fdd667b49e78b64c7a6f19a76b">getAsMatrix</a> (MAT &amp;m) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the entire grid as a matrix.  <a href="#aad1ca5fdd667b49e78b64c7a6f19a76b"></a><br/></td></tr>
<tr><td colspan="2"><h2><a name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#a2b50a8c61d853cc452b82d58756e9603">m_disableSaveAs3DObject</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">When set to true (default=false), calling "getAs3DObject" will have no effects.  <a href="#a2b50a8c61d853cc452b82d58756e9603"></a><br/></td></tr>
<tr><td colspan="2"><h2><a name="pub-static-attribs"></a>
Static Public Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static const <br class="typebreak"/>
<a class="el" href="structmrpt_1_1utils_1_1_t_runtime_class_id.html">mrpt::utils::TRuntimeClassId</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_object.html#acb51e4dd811d62c2696aee449d0a4715">classCObject</a></td></tr>
<tr><td colspan="2"><div class="groupHeader">RTTI stuff</div></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static const <br class="typebreak"/>
<a class="el" href="structmrpt_1_1utils_1_1_t_runtime_class_id.html">mrpt::utils::TRuntimeClassId</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#a1cbb8630027acc3d6d227fa7d78c724f">classCMetricMap</a></td></tr>
<tr><td colspan="2"><div class="groupHeader">RTTI stuff</div></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static const <br class="typebreak"/>
<a class="el" href="structmrpt_1_1utils_1_1_t_runtime_class_id.html">mrpt::utils::TRuntimeClassId</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_serializable.html#a28ec2a03d277a8469b8ecfc81892afdf">classCSerializable</a></td></tr>
<tr><td colspan="2"><h2><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <br class="typebreak"/>
<a class="el" href="structmrpt_1_1slam_1_1_c_random_field_grid_map2_d_1_1_t_insertion_options_common.html">CRandomFieldGridMap2D::TInsertionOptionsCommon</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a832c1f4446f52bef49d0b9c12aac23bd">getCommonInsertOptions</a> ()=0</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the part of the options common to all <a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html" title="CRandomFieldGridMap2D represents a 2D grid map where each cell is associated one real-valued property...">CRandomFieldGridMap2D</a> classes.  <a href="#a832c1f4446f52bef49d0b9c12aac23bd"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a76dee0556409f170b6de842670876310">insertObservation_KernelDM_DMV</a> (float normReading, const <a class="el" href="classmrpt_1_1poses_1_1_c_pose3_d.html">CPose3D</a> &amp;sensorPose, bool is_DMV)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">The implementation of "insertObservation" for Achim Lilienthal's map models DM &amp; DM+V.  <a href="#a76dee0556409f170b6de842670876310"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a683f55b585d646b2a621113166e3e413">insertObservation_KF</a> (float normReading, const <a class="el" href="classmrpt_1_1poses_1_1_c_pose3_d.html">CPose3D</a> &amp;sensorPose)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">The implementation of "insertObservation" for the (whole) Kalman Filter map model.  <a href="#a683f55b585d646b2a621113166e3e413"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a00d03cf9798e2930e20666204d09e652">insertObservation_KF2</a> (float normReading, const <a class="el" href="classmrpt_1_1poses_1_1_c_pose3_d.html">CPose3D</a> &amp;sensorPose)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">The implementation of "insertObservation" for the Efficient Kalman Filter map model.  <a href="#a00d03cf9798e2930e20666204d09e652"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#af2bfb86feb6aeebfb36a6ef4ca9f46ef">computeMeanCellValue_DM_DMV</a> (const <a class="el" href="structmrpt_1_1slam_1_1_t_random_field_cell.html">TRandomFieldCell</a> *cell) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes the average cell concentration, or the overall average value if it has never been observed.  <a href="#af2bfb86feb6aeebfb36a6ef4ca9f46ef"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#aeff0d652dea1426a3e4a332c2c44f532">computeVarCellValue_DM_DMV</a> (const <a class="el" href="structmrpt_1_1slam_1_1_t_random_field_cell.html">TRandomFieldCell</a> *cell) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes the estimated variance of the cell concentration, or the overall average variance if it has never been observed.  <a href="#aeff0d652dea1426a3e4a332c2c44f532"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#ae0efc7ac2c68687c98128ef15a84bf2e">recoverMeanAndCov</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">In the KF2 implementation, takes the auxiliary matrices and from them update the cells' mean and std values.  <a href="#ae0efc7ac2c68687c98128ef15a84bf2e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a9624bf853d1a300ea645d0d742f969c1">internal_clear</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Erase all the contents of the map.  <a href="#a9624bf853d1a300ea645d0d742f969c1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_serializable.html#a0b6b801e67bca3d8e0d355e7035f8013">writeToStream</a> (<a class="el" href="classmrpt_1_1utils_1_1_c_stream.html">mrpt::utils::CStream</a> &amp;out, int *getVersion) const =0</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Introduces a pure virtual method responsible for writing to a <a class="el" href="classmrpt_1_1utils_1_1_c_stream.html" title="This base class is used to provide a unified interface to files,memory buffers,..Please see the deriv...">CStream</a>.  <a href="#a0b6b801e67bca3d8e0d355e7035f8013"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_serializable.html#a73ba83035a64939cdc3aa1c0dfed23ec">readFromStream</a> (<a class="el" href="classmrpt_1_1utils_1_1_c_stream.html">mrpt::utils::CStream</a> &amp;in, int version)=0</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Introduces a pure virtual method responsible for loading from a <a class="el" href="classmrpt_1_1utils_1_1_c_stream.html" title="This base class is used to provide a unified interface to files,memory buffers,..Please see the deriv...">CStream</a> This can not be used directly be users, instead use "stream &gt;&gt; object;" for reading it from a stream or "stream &gt;&gt; object_ptr;" if the class is unknown apriori.  <a href="#a73ba83035a64939cdc3aa1c0dfed23ec"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_observable.html#a0c384e00c06199bc2ff37ff5ecb520c9">publishEvent</a> (const <a class="el" href="classmrpt_1_1utils_1_1mrpt_event.html">mrptEvent</a> &amp;e) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Called when you want this object to emit an event to all the observers currently subscribed to this object.  <a href="#a0c384e00c06199bc2ff37ff5ecb520c9"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_observable.html#a1c1e8c7d0d184ccdaa7d5a0ee5184e1e">hasSubscribers</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Can be called by a derived class before preparing an event for publishing with <em>publishEvent</em> to determine if there is no one subscribed, so it can save the wasted time preparing an event that will be not read.  <a href="#a1c1e8c7d0d184ccdaa7d5a0ee5184e1e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classstd_1_1vector.html">std::vector</a>&lt; T &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#aa99e6b75ba0d986dd68df5342d9a16e3">m_map_castaway_const</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Used only from logically const method that really need to modify the object.  <a href="#aa99e6b75ba0d986dd68df5342d9a16e3"></a><br/></td></tr>
<tr><td colspan="2"><h2><a name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structmrpt_1_1slam_1_1_c_random_field_grid_map2_d_1_1_t_insertion_options_common.html">TInsertionOptionsCommon</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#afaaa020b87fd1dd95f86de61512faed3">m_insertOptions_common</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Common options to all random-field grid maps: pointer that is set to the derived-class instance of "insertOptions" upon construction of this class.  <a href="#afaaa020b87fd1dd95f86de61512faed3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a1bdb0ec64ac5ebc8f0b803b66151703a">TMapRepresentation</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#ac708ec88c7f83b1f55292d338b4597d3">m_mapType</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">The map representation type of this map, as passed in the constructor.  <a href="#ac708ec88c7f83b1f55292d338b4597d3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_d.html">CMatrixD</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a835c94b79ca4037c4a49638fd69049a9">m_cov</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">The whole covariance matrix, used for the Kalman Filter map representation.  <a href="#a835c94b79ca4037c4a49638fd69049a9"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_d.html">CMatrixD</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a420cf955fe634e3c3809cce95c29b14f">m_stackedCov</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">The compressed band diagonal matrix for the KF2 implementation.  <a href="#a420cf955fe634e3c3809cce95c29b14f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#ab03b2e1abfd332618cdf4c27f335d688">m_hasToRecoverMeanAndCov</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Only for the KF2 implementation.  <a href="#ab03b2e1abfd332618cdf4c27f335d688"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classstd_1_1vector.html">std::vector</a>&lt; T &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#a44e35967e6dfa4a1d4ea877310c10ebb">m_map</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">The cells.  <a href="#a44e35967e6dfa4a1d4ea877310c10ebb"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#a9aa912e950257c3a3a50d29f89485aee">m_x_min</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#ab7fa28466fd34353ec079990c2519103">m_x_max</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#ac6e709aef8fdbb23f8c24ce61ae93a9e">m_y_min</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#a706b0fdf9622d791d34132403f9f8451">m_y_max</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#a0d8fd68a29ddbdd0b4b635ef4a082357">m_resolution</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#a3c6d52443dc50cdcd4aac442df119231">m_size_x</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#aa60d1d0c9e789f4201cda9974dfe36df">m_size_y</a></td></tr>
<tr><td colspan="2"><div class="groupHeader">Auxiliary vars for DM &amp; DM+V methods</div></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#aaffe8baacca2ecea8fbf65d1a33839cb">m_DM_lastCutOff</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classstd_1_1vector.html">std::vector</a>&lt; float &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a01e5b4ea2c6d1c51ececad2f07829324">m_DM_gaussWindow</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a84197bd6e66dd5812150812e945d3d33">m_average_normreadings_mean</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#af8ef1584cd3d129dad99299c08c0fa77">m_average_normreadings_var</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a1976b75b9ce20b44bc4eb70d97fac7fa">m_average_normreadings_count</a></td></tr>
<tr><td colspan="2"><h2><a name="pri-types"></a>
Private Types</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html">utils::CDynamicGrid</a><br class="typebreak"/>
&lt; <a class="el" href="structmrpt_1_1slam_1_1_t_random_field_cell.html">TRandomFieldCell</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a06bea6c1795bab58bfa5ec4529af9e84">BASE</a></td></tr>
<tr><td colspan="2"><h2><a name="member-group"></a>
RTTI stuff</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static const <br class="typebreak"/>
<a class="el" href="structmrpt_1_1utils_1_1_t_runtime_class_id.html">mrpt::utils::TRuntimeClassId</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a2dcaecb5fb40ce8f2659254b785bbdcc">classCRandomFieldGridMap2D</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a6fec28a53e20dfc1c4d046c26f9f7b48">mrpt::utils::CStream</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static const <br class="typebreak"/>
<a class="el" href="structmrpt_1_1utils_1_1_t_runtime_class_id.html">mrpt::utils::TRuntimeClassId</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a0260e37a29c05698555e5df1b616d3d5">_GetBaseClass</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual const <br class="typebreak"/>
<a class="el" href="structmrpt_1_1utils_1_1_t_runtime_class_id.html">mrpt::utils::TRuntimeClassId</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a1ccd2f2de279d41d9a7ebe4281abc739">GetRuntimeClass</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns information about the class of an object in runtime.  <a href="#a1ccd2f2de279d41d9a7ebe4281abc739"></a><br/></td></tr>
</table>
<hr/><h2>Member Typedef Documentation</h2>
<a class="anchor" id="a06bea6c1795bab58bfa5ec4529af9e84"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::BASE" ref="a06bea6c1795bab58bfa5ec4529af9e84" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html">utils::CDynamicGrid</a>&lt;<a class="el" href="structmrpt_1_1slam_1_1_t_random_field_cell.html">TRandomFieldCell</a>&gt; <a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a06bea6c1795bab58bfa5ec4529af9e84">mrpt::slam::CRandomFieldGridMap2D::BASE</a><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_random_field_grid_map2_d_8h_source.html#l00114">114</a> of file <a class="el" href="_c_random_field_grid_map2_d_8h_source.html">CRandomFieldGridMap2D.h</a>.</p>

</div>
</div>
<hr/><h2>Member Enumeration Documentation</h2>
<a class="anchor" id="a1bdb0ec64ac5ebc8f0b803b66151703a"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::TMapRepresentation" ref="a1bdb0ec64ac5ebc8f0b803b66151703a" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a1bdb0ec64ac5ebc8f0b803b66151703a">mrpt::slam::CRandomFieldGridMap2D::TMapRepresentation</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The type of map representation to be used. </p>
<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" id="a1bdb0ec64ac5ebc8f0b803b66151703aa74922fc75f39ecce9f2f53a6fd1af7cc"></a><!-- doxytag: member="mrKernelDM" ref="a1bdb0ec64ac5ebc8f0b803b66151703aa74922fc75f39ecce9f2f53a6fd1af7cc" args="" -->mrKernelDM</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a1bdb0ec64ac5ebc8f0b803b66151703aa9309f68da0f5bb01cdfa973305ce623c"></a><!-- doxytag: member="mrAchim" ref="a1bdb0ec64ac5ebc8f0b803b66151703aa9309f68da0f5bb01cdfa973305ce623c" args="" -->mrAchim</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a1bdb0ec64ac5ebc8f0b803b66151703aa65b92bd320f8b9834cbe5554b7f2a4c0"></a><!-- doxytag: member="mrKalmanFilter" ref="a1bdb0ec64ac5ebc8f0b803b66151703aa65b92bd320f8b9834cbe5554b7f2a4c0" args="" -->mrKalmanFilter</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a1bdb0ec64ac5ebc8f0b803b66151703aaa58f7d260813aa09d312883dee48d56b"></a><!-- doxytag: member="mrKalmanApproximate" ref="a1bdb0ec64ac5ebc8f0b803b66151703aaa58f7d260813aa09d312883dee48d56b" args="" -->mrKalmanApproximate</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a1bdb0ec64ac5ebc8f0b803b66151703aab63874317f7204696d76c86b89beed16"></a><!-- doxytag: member="mrKernelDMV" ref="a1bdb0ec64ac5ebc8f0b803b66151703aab63874317f7204696d76c86b89beed16" args="" -->mrKernelDMV</em>&nbsp;</td><td>
</td></tr>
</table>
</dd>
</dl>

<p>Definition at line <a class="el" href="_c_random_field_grid_map2_d_8h_source.html#l00133">133</a> of file <a class="el" href="_c_random_field_grid_map2_d_8h_source.html">CRandomFieldGridMap2D.h</a>.</p>

</div>
</div>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="accefbf61b5feb257bfab0530184337ff"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::CRandomFieldGridMap2D" ref="accefbf61b5feb257bfab0530184337ff" args="(TMapRepresentation mapType=mrAchim, float x_min=&#45;2, float x_max=2, float y_min=&#45;2, float y_max=2, float resolution=0.1)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">mrpt::slam::CRandomFieldGridMap2D::CRandomFieldGridMap2D </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a1bdb0ec64ac5ebc8f0b803b66151703a">TMapRepresentation</a>&#160;</td>
          <td class="paramname"><em>mapType</em> = <code>mrAchim</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>x_min</em> = <code>-2</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>x_max</em> = <code>2</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>y_min</em> = <code>-2</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>y_max</em> = <code>2</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>resolution</em> = <code>0.1</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Constructor. </p>

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

<p>Destructor. </p>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a0260e37a29c05698555e5df1b616d3d5"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::_GetBaseClass" ref="a0260e37a29c05698555e5df1b616d3d5" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static const <a class="el" href="structmrpt_1_1utils_1_1_t_runtime_class_id.html">mrpt::utils::TRuntimeClassId</a>* mrpt::slam::CRandomFieldGridMap2D::_GetBaseClass </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [static, protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Reimplemented from <a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#afc58cfbfb2beb973ccade2e8921fad90">mrpt::slam::CMetricMap</a>.</p>

<p>Reimplemented in <a class="el" href="classmrpt_1_1slam_1_1_c_wireless_power_grid_map2_d.html#ad3263515cb5be0f5cd14497bb3f5fb3d">mrpt::slam::CWirelessPowerGridMap2D</a>, and <a class="el" href="classmrpt_1_1slam_1_1_c_gas_concentration_grid_map2_d.html#ad3ac88547ae3e6abaf68aced49ebeb89">mrpt::slam::CGasConcentrationGridMap2D</a>.</p>

</div>
</div>
<a class="anchor" id="aabd4d4be402cdd01bc8db467f214516a"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::auxParticleFilterCleanUp" ref="aabd4d4be402cdd01bc8db467f214516a" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void mrpt::slam::CMetricMap::auxParticleFilterCleanUp </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline, virtual, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>This method is called at the end of each "prediction-update-map insertion" cycle within "mrpt::slam::CMetricMapBuilderRBPF::processActionObservation". </p>
<p>This method should normally do nothing, but in some cases can be used to free auxiliary cached variables. </p>

<p>Reimplemented in <a class="el" href="classmrpt_1_1slam_1_1_c_landmarks_map.html#a20f3250d3a6b02030ab58cfa7e544529">mrpt::slam::CLandmarksMap</a>, and <a class="el" href="classmrpt_1_1slam_1_1_c_multi_metric_map.html#a67dc96e1d740138fa14ca93537fdbdcd">mrpt::slam::CMultiMetricMap</a>.</p>

<p>Definition at line <a class="el" href="_c_metric_map_8h_source.html#l00326">326</a> of file <a class="el" href="_c_metric_map_8h_source.html">CMetricMap.h</a>.</p>

</div>
</div>
<a class="anchor" id="a8936d61e45446a74633d00a7ce6b4603"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::canComputeObservationLikelihood" ref="a8936d61e45446a74633d00a7ce6b4603" args="(const CObservation *obs)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool mrpt::slam::CMetricMap::canComputeObservationLikelihood </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1slam_1_1_c_observation.html">CObservation</a> *&#160;</td>
          <td class="paramname"><em>obs</em></td><td>)</td>
          <td><code> [inline, virtual, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns true if this map is able to compute a sensible likelihood function for this observation (i.e. </p>
<p>an occupancy grid map cannot with an image). </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">obs</td><td>The observation. </td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#ad5cefa1e3e6efb0cff473a32c5ed6009" title="Computes the log-likelihood of a given observation given an arbitrary robot 3D pose.">computeObservationLikelihood</a> </dd></dl>

<p>Reimplemented in <a class="el" href="classmrpt_1_1slam_1_1_c_occupancy_grid_map2_d.html#a614e663954432e3ebe8d0a6e7cc37e2b">mrpt::slam::COccupancyGridMap2D</a>, and <a class="el" href="classmrpt_1_1slam_1_1_c_multi_metric_map.html#add146361dd182988749657d9970a0abb">mrpt::slam::CMultiMetricMap</a>.</p>

<p>Definition at line <a class="el" href="_c_metric_map_8h_source.html#l00184">184</a> of file <a class="el" href="_c_metric_map_8h_source.html">CMetricMap.h</a>.</p>

</div>
</div>
<a class="anchor" id="ab3b66046cae11313beba57052b852eca"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::canComputeObservationsLikelihood" ref="ab3b66046cae11313beba57052b852eca" args="(const CSensoryFrame &amp;sf)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool mrpt::slam::CMetricMap::canComputeObservationsLikelihood </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1slam_1_1_c_sensory_frame.html">CSensoryFrame</a> &amp;&#160;</td>
          <td class="paramname"><em>sf</em></td><td>)</td>
          <td><code> [inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns true if this map is able to compute a sensible likelihood function for this observation (i.e. </p>
<p>an occupancy grid map cannot with an image). </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">sf</td><td>The observations. </td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#a8936d61e45446a74633d00a7ce6b4603" title="Returns true if this map is able to compute a sensible likelihood function for this observation (i...">canComputeObservationLikelihood</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a2003d2a313da0a880a43949201713243"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::cell2float" ref="a2003d2a313da0a880a43949201713243" args="(const TRandomFieldCell &amp;c) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">float mrpt::slam::CRandomFieldGridMap2D::cell2float </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structmrpt_1_1slam_1_1_t_random_field_cell.html">TRandomFieldCell</a> &amp;&#160;</td>
          <td class="paramname"><em>c</em></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_random_field_grid_map2_d_8h_source.html#l00126">126</a> of file <a class="el" href="_c_random_field_grid_map2_d_8h_source.html">CRandomFieldGridMap2D.h</a>.</p>

<p>References <a class="el" href="_c_random_field_grid_map2_d_8h_source.html#l00076">mrpt::slam::TRandomFieldCell::kf_mean</a>.</p>

</div>
</div>
<a class="anchor" id="ab1cff5e8d8397872ca5628ebeec4bb64"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::cell2float" ref="ab1cff5e8d8397872ca5628ebeec4bb64" args="(const T &amp;c) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual float mrpt::utils::CDynamicGrid::cell2float </td>
          <td>(</td>
          <td class="paramtype">const T &amp;&#160;</td>
          <td class="paramname"><em>c</em></td><td>)</td>
          <td> const<code> [inline, virtual, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The user must implement this in order to provide "saveToTextFile" a way to convert each cell into a numeric value. </p>

<p>Definition at line <a class="el" href="_c_dynamic_grid_8h_source.html#l00281">281</a> of file <a class="el" href="_c_dynamic_grid_8h_source.html">CDynamicGrid.h</a>.</p>

</div>
</div>
<a class="anchor" id="a4781cecfa674b11cd29470a0555a0622"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::cellByIndex" ref="a4781cecfa674b11cd29470a0555a0622" args="(unsigned int cx, unsigned int cy)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">T* mrpt::utils::CDynamicGrid::cellByIndex </td>
          <td>(</td>
          <td class="paramtype">unsigned int&#160;</td>
          <td class="paramname"><em>cx</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&#160;</td>
          <td class="paramname"><em>cy</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns a pointer to the contents of a cell given by its cell indexes, or NULL if it is out of the map extensions. </p>

<p>Definition at line <a class="el" href="_c_dynamic_grid_8h_source.html#l00236">236</a> of file <a class="el" href="_c_dynamic_grid_8h_source.html">CDynamicGrid.h</a>.</p>

</div>
</div>
<a class="anchor" id="a58d68888956305d5f86f56760922270b"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::cellByIndex" ref="a58d68888956305d5f86f56760922270b" args="(unsigned int cx, unsigned int cy) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const T* mrpt::utils::CDynamicGrid::cellByIndex </td>
          <td>(</td>
          <td class="paramtype">unsigned int&#160;</td>
          <td class="paramname"><em>cx</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&#160;</td>
          <td class="paramname"><em>cy</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const<code> [inline, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns a pointer to the contents of a cell given by its cell indexes, or NULL if it is out of the map extensions. </p>

<p>Definition at line <a class="el" href="_c_dynamic_grid_8h_source.html#l00245">245</a> of file <a class="el" href="_c_dynamic_grid_8h_source.html">CDynamicGrid.h</a>.</p>

</div>
</div>
<a class="anchor" id="a5277bca042c6ade6fd67d5c0a8a172f2"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::cellByPos" ref="a5277bca042c6ade6fd67d5c0a8a172f2" args="(float x, float y)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">T* mrpt::utils::CDynamicGrid::cellByPos </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>y</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns a pointer to the contents of a cell given by its coordinates, or NULL if it is out of the map extensions. </p>

<p>Definition at line <a class="el" href="_c_dynamic_grid_8h_source.html#l00210">210</a> of file <a class="el" href="_c_dynamic_grid_8h_source.html">CDynamicGrid.h</a>.</p>

</div>
</div>
<a class="anchor" id="aebbd206e29754dbdbd3aa1ee37be6dab"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::cellByPos" ref="aebbd206e29754dbdbd3aa1ee37be6dab" args="(float x, float y) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const T* mrpt::utils::CDynamicGrid::cellByPos </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>y</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const<code> [inline, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns a pointer to the contents of a cell given by its coordinates, or NULL if it is out of the map extensions. </p>

<p>Definition at line <a class="el" href="_c_dynamic_grid_8h_source.html#l00223">223</a> of file <a class="el" href="_c_dynamic_grid_8h_source.html">CDynamicGrid.h</a>.</p>

</div>
</div>
<a class="anchor" id="a814f4778b6ae7a2f9896311258d11d16"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::clear" ref="a814f4778b6ae7a2f9896311258d11d16" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void mrpt::slam::CRandomFieldGridMap2D::clear </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Calls the base <a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#afe18b3eac9b4ff07b674e0eb74652f5b" title="Erase all the contents of the map.">CMetricMap::clear</a> Declared here to avoid ambiguity between the two <a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a814f4778b6ae7a2f9896311258d11d16" title="Calls the base CMetricMap::clear Declared here to avoid ambiguity between the two clear() in both bas...">clear()</a> in both base classes. </p>

<p>Reimplemented from <a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#afe18b3eac9b4ff07b674e0eb74652f5b">mrpt::slam::CMetricMap</a>.</p>

<p>Definition at line <a class="el" href="_c_random_field_grid_map2_d_8h_source.html#l00123">123</a> of file <a class="el" href="_c_random_field_grid_map2_d_8h_source.html">CRandomFieldGridMap2D.h</a>.</p>

</div>
</div>
<a class="anchor" id="a9ef7857a0b36059c078e195a0a65ac00"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::clone" ref="a9ef7857a0b36059c078e195a0a65ac00" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1utils_1_1_c_object.html">CObject</a>* mrpt::utils::CObject::clone </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Cloning interface for smart pointers. </p>

<p>Reimplemented in <a class="el" href="classmrpt_1_1opengl_1_1_c_renderizable.html#acb2597d6d93b406501d9f3530eb56adf">mrpt::opengl::CRenderizable</a>, and <a class="el" href="classmrpt_1_1opengl_1_1_c_renderizable_display_list.html#ac164cb1d2cf682778ce52967cbd56469">mrpt::opengl::CRenderizableDisplayList</a>.</p>

<p>Definition at line <a class="el" href="_c_object_8h_source.html#l00154">154</a> of file <a class="el" href="_c_object_8h_source.html">CObject.h</a>.</p>

</div>
</div>
<a class="anchor" id="acf4c103e5db2f06ec814645f728f6ce2"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::compute3DMatchingRatio" ref="acf4c103e5db2f06ec814645f728f6ce2" args="(const CMetricMap *otherMap, const CPose3D &amp;otherMapPose, float minDistForCorr=0.10f, float minMahaDistForCorr=2.0f) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">float mrpt::slam::CRandomFieldGridMap2D::compute3DMatchingRatio </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html">CMetricMap</a> *&#160;</td>
          <td class="paramname"><em>otherMap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1poses_1_1_c_pose3_d.html">CPose3D</a> &amp;&#160;</td>
          <td class="paramname"><em>otherMapPose</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>minDistForCorr</em> = <code>0.10f</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>minMahaDistForCorr</em> = <code>2.0f</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Computes the ratio in [0,1] of correspondences between "this" and the "otherMap" map, whose 6D pose relative to "this" is "otherMapPose" In the case of a multi-metric map, this returns the average between the maps. </p>
<p>This method always return 0 for grid maps. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">otherMap</td><td>[IN] The other map to compute the matching with. </td></tr>
    <tr><td class="paramname">otherMapPose</td><td>[IN] The 6D pose of the other map as seen from "this". </td></tr>
    <tr><td class="paramname">minDistForCorr</td><td>[IN] The minimum distance between 2 non-probabilistic map elements for counting them as a correspondence. </td></tr>
    <tr><td class="paramname">minMahaDistForCorr</td><td>[IN] The minimum Mahalanobis distance between 2 probabilistic map elements for counting them as a correspondence.</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The matching ratio [0,1] </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#aa684de52360d687fb0ee30790f430574" title="Computes the matchings between this and another 2D points map.">computeMatchingWith2D</a> </dd></dl>

<p>Implements <a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#a8d59f040a850470da57f3294e346e69b">mrpt::slam::CMetricMap</a>.</p>

</div>
</div>
<a class="anchor" id="aa684de52360d687fb0ee30790f430574"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::computeMatchingWith2D" ref="aa684de52360d687fb0ee30790f430574" args="(const CMetricMap *otherMap, const CPose2D &amp;otherMapPose, float maxDistForCorrespondence, float maxAngularDistForCorrespondence, const CPose2D &amp;angularDistPivotPoint, TMatchingPairList &amp;correspondences, float &amp;correspondencesRatio, float *sumSqrDist=NULL, bool onlyKeepTheClosest=true, bool onlyUniqueRobust=false, const size_t decimation_other_map_points=1, const size_t offset_other_map_points=0) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void mrpt::slam::CMetricMap::computeMatchingWith2D </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html">CMetricMap</a> *&#160;</td>
          <td class="paramname"><em>otherMap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1poses_1_1_c_pose2_d.html">CPose2D</a> &amp;&#160;</td>
          <td class="paramname"><em>otherMapPose</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>maxDistForCorrespondence</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>maxAngularDistForCorrespondence</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1poses_1_1_c_pose2_d.html">CPose2D</a> &amp;&#160;</td>
          <td class="paramname"><em>angularDistPivotPoint</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classmrpt_1_1utils_1_1_t_matching_pair_list.html">TMatchingPairList</a> &amp;&#160;</td>
          <td class="paramname"><em>correspondences</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float &amp;&#160;</td>
          <td class="paramname"><em>correspondencesRatio</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float *&#160;</td>
          <td class="paramname"><em>sumSqrDist</em> = <code>NULL</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>onlyKeepTheClosest</em> = <code>true</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>onlyUniqueRobust</em> = <code>false</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const size_t&#160;</td>
          <td class="paramname"><em>decimation_other_map_points</em> = <code>1</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const size_t&#160;</td>
          <td class="paramname"><em>offset_other_map_points</em> = <code>0</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const<code> [inline, virtual, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Computes the matchings between this and another 2D points map. </p>
<p>This includes finding:</p>
<ul>
<li>The set of points pairs in each map</li>
<li>The mean squared distance between corresponding pairs. This method is the most time critical one into the ICP algorithm.</li>
</ul>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">otherMap</td><td>[IN] The other map to compute the matching with. </td></tr>
    <tr><td class="paramname">otherMapPose</td><td>[IN] The pose of the other map as seen from "this". </td></tr>
    <tr><td class="paramname">maxDistForCorrespondence</td><td>[IN] Maximum 2D linear distance between two points to be matched. </td></tr>
    <tr><td class="paramname">maxAngularDistForCorrespondence</td><td>[IN] In radians: The aim is to allow larger distances to more distant correspondences. </td></tr>
    <tr><td class="paramname">angularDistPivotPoint</td><td>[IN] The point used to calculate distances from in both maps. </td></tr>
    <tr><td class="paramname">correspondences</td><td>[OUT] The detected matchings pairs. </td></tr>
    <tr><td class="paramname">correspondencesRatio</td><td>[OUT] The ratio [0,1] of points in otherMap with at least one correspondence. </td></tr>
    <tr><td class="paramname">sumSqrDist</td><td>[OUT] The sum of all matched points squared distances.If undesired, set to NULL, as default. </td></tr>
    <tr><td class="paramname">onlyKeepTheClosest</td><td>[IN] If set to true, only the closest correspondence will be returned. If false (default) all are returned.</td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#a8d59f040a850470da57f3294e346e69b" title="Computes the ratio in [0,1] of correspondences between &quot;this&quot; and the &quot;otherMap&quot; map, whose 6D pose relative to &quot;this&quot; is &quot;otherMapPose&quot; In the case of a multi-metric map, this returns the average between the maps.">compute3DMatchingRatio</a> </dd></dl>

<p>Reimplemented in <a class="el" href="classmrpt_1_1slam_1_1_c_occupancy_grid_map2_d.html#a6329f217aeb92bb0ad787102aff24bdc">mrpt::slam::COccupancyGridMap2D</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_points_map.html#a396aa18fe072aec193268cdc4875daee">mrpt::slam::CPointsMap</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_beacon_map.html#a0a503ad4e15e0dbba66ba684eb250b43">mrpt::slam::CBeaconMap</a>, and <a class="el" href="classmrpt_1_1slam_1_1_c_multi_metric_map.html#ad234f67c0a6e6b2a155556dc1833ebfa">mrpt::slam::CMultiMetricMap</a>.</p>

<p>Definition at line <a class="el" href="_c_metric_map_8h_source.html#l00236">236</a> of file <a class="el" href="_c_metric_map_8h_source.html">CMetricMap.h</a>.</p>

<p>References <a class="el" href="mrpt__macros_8h_source.html#l00370">MRPT_START</a>, <a class="el" href="mrpt__macros_8h_source.html#l00131">THROW_EXCEPTION</a>, and <a class="el" href="mrpt__macros_8h_source.html#l00374">MRPT_END</a>.</p>

</div>
</div>
<a class="anchor" id="a7aafbdbb3f2cb17e14e1af9997c3fa48"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::computeMatchingWith3D" ref="a7aafbdbb3f2cb17e14e1af9997c3fa48" args="(const CMetricMap *otherMap, const CPose3D &amp;otherMapPose, float maxDistForCorrespondence, float maxAngularDistForCorrespondence, const CPoint3D &amp;angularDistPivotPoint, TMatchingPairList &amp;correspondences, float &amp;correspondencesRatio, float *sumSqrDist=NULL, bool onlyKeepTheClosest=true, bool onlyUniqueRobust=false, const size_t decimation_other_map_points=1, const size_t offset_other_map_points=0) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void mrpt::slam::CMetricMap::computeMatchingWith3D </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html">CMetricMap</a> *&#160;</td>
          <td class="paramname"><em>otherMap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1poses_1_1_c_pose3_d.html">CPose3D</a> &amp;&#160;</td>
          <td class="paramname"><em>otherMapPose</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>maxDistForCorrespondence</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>maxAngularDistForCorrespondence</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1poses_1_1_c_point3_d.html">CPoint3D</a> &amp;&#160;</td>
          <td class="paramname"><em>angularDistPivotPoint</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classmrpt_1_1utils_1_1_t_matching_pair_list.html">TMatchingPairList</a> &amp;&#160;</td>
          <td class="paramname"><em>correspondences</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float &amp;&#160;</td>
          <td class="paramname"><em>correspondencesRatio</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float *&#160;</td>
          <td class="paramname"><em>sumSqrDist</em> = <code>NULL</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>onlyKeepTheClosest</em> = <code>true</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>onlyUniqueRobust</em> = <code>false</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const size_t&#160;</td>
          <td class="paramname"><em>decimation_other_map_points</em> = <code>1</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const size_t&#160;</td>
          <td class="paramname"><em>offset_other_map_points</em> = <code>0</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const<code> [inline, virtual, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Computes the matchings between this and another 3D points map - method used in 3D-ICP. </p>
<p>This method finds the set of point pairs in each map.</p>
<p>The method is the most time critical one into the ICP algorithm.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">otherMap</td><td>[IN] The other map to compute the matching with. </td></tr>
    <tr><td class="paramname">otherMapPose</td><td>[IN] The pose of the other map as seen from "this". </td></tr>
    <tr><td class="paramname">maxDistForCorrespondence</td><td>[IN] Maximum 2D linear distance between two points to be matched. </td></tr>
    <tr><td class="paramname">maxAngularDistForCorrespondence</td><td>[IN] In radians: The aim is to allow larger distances to more distant correspondences. </td></tr>
    <tr><td class="paramname">angularDistPivotPoint</td><td>[IN] The point used to calculate distances from in both maps. </td></tr>
    <tr><td class="paramname">correspondences</td><td>[OUT] The detected matchings pairs. </td></tr>
    <tr><td class="paramname">correspondencesRatio</td><td>[OUT] The ratio [0,1] of points in otherMap with at least one correspondence. </td></tr>
    <tr><td class="paramname">sumSqrDist</td><td>[OUT] The sum of all matched points squared distances.If undesired, set to NULL, as default. </td></tr>
    <tr><td class="paramname">onlyKeepTheClosest</td><td>[IN] If set to true, only the closest correspondence will be returned. If false (default) all are returned.</td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#a8d59f040a850470da57f3294e346e69b" title="Computes the ratio in [0,1] of correspondences between &quot;this&quot; and the &quot;otherMap&quot; map, whose 6D pose relative to &quot;this&quot; is &quot;otherMapPose&quot; In the case of a multi-metric map, this returns the average between the maps.">compute3DMatchingRatio</a> </dd></dl>

<p>Reimplemented in <a class="el" href="classmrpt_1_1slam_1_1_c_points_map.html#a64e5a209ec58036ff3c74866efd6ec72">mrpt::slam::CPointsMap</a>.</p>

<p>Definition at line <a class="el" href="_c_metric_map_8h_source.html#l00272">272</a> of file <a class="el" href="_c_metric_map_8h_source.html">CMetricMap.h</a>.</p>

<p>References <a class="el" href="mrpt__macros_8h_source.html#l00370">MRPT_START</a>, <a class="el" href="mrpt__macros_8h_source.html#l00131">THROW_EXCEPTION</a>, and <a class="el" href="mrpt__macros_8h_source.html#l00374">MRPT_END</a>.</p>

</div>
</div>
<a class="anchor" id="af2bfb86feb6aeebfb36a6ef4ca9f46ef"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::computeMeanCellValue_DM_DMV" ref="af2bfb86feb6aeebfb36a6ef4ca9f46ef" args="(const TRandomFieldCell *cell) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">double mrpt::slam::CRandomFieldGridMap2D::computeMeanCellValue_DM_DMV </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structmrpt_1_1slam_1_1_t_random_field_cell.html">TRandomFieldCell</a> *&#160;</td>
          <td class="paramname"><em>cell</em></td><td>)</td>
          <td> const<code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Computes the average cell concentration, or the overall average value if it has never been observed. </p>

</div>
</div>
<a class="anchor" id="ad5cefa1e3e6efb0cff473a32c5ed6009"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::computeObservationLikelihood" ref="ad5cefa1e3e6efb0cff473a32c5ed6009" args="(const CObservation *obs, const CPose3D &amp;takenFrom)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual double mrpt::slam::CMetricMap::computeObservationLikelihood </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1slam_1_1_c_observation.html">CObservation</a> *&#160;</td>
          <td class="paramname"><em>obs</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1poses_1_1_c_pose3_d.html">CPose3D</a> &amp;&#160;</td>
          <td class="paramname"><em>takenFrom</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [pure virtual, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Computes the log-likelihood of a given observation given an arbitrary robot 3D pose. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">takenFrom</td><td>The robot's pose the observation is supposed to be taken from. </td></tr>
    <tr><td class="paramname">obs</td><td>The observation. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>This method returns a log-likelihood.</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd>Used in particle filter algorithms, see: CMultiMetricMapPDF::update </dd></dl>

<p>Implemented in <a class="el" href="classmrpt_1_1slam_1_1_c_occupancy_grid_map2_d.html#af42355207136d9c7bd4fef8fd82735df">mrpt::slam::COccupancyGridMap2D</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_points_map.html#a4f61bafb85ddf17eb783d8d4abb46c18">mrpt::slam::CPointsMap</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_landmarks_map.html#aabed5d111907270ef896b2588a8bfbb8">mrpt::slam::CLandmarksMap</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_beacon_map.html#a7d00a85d2ba0979a7137931641d8d736">mrpt::slam::CBeaconMap</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_multi_metric_map.html#adc874455480f0825aa90394394cbc5ed">mrpt::slam::CMultiMetricMap</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_height_grid_map2_d.html#a88f9fa6f7798f492e6a77ee82e5fb2d0">mrpt::slam::CHeightGridMap2D</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_reflectivity_grid_map2_d.html#a427df8d1170f71e8cbcaf4ccb4c6b2b4">mrpt::slam::CReflectivityGridMap2D</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_wireless_power_grid_map2_d.html#ac3e181c7e6f8ad2b2347d9704813e87e">mrpt::slam::CWirelessPowerGridMap2D</a>, and <a class="el" href="classmrpt_1_1slam_1_1_c_gas_concentration_grid_map2_d.html#af8dcebb36adf37bca86048b8b566a44a">mrpt::slam::CGasConcentrationGridMap2D</a>.</p>

</div>
</div>
<a class="anchor" id="a6adfc3df476a7edafaca40444d8dad04"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::computeObservationLikelihood" ref="a6adfc3df476a7edafaca40444d8dad04" args="(const CObservation *obs, const CPose2D &amp;takenFrom)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">double mrpt::slam::CMetricMap::computeObservationLikelihood </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1slam_1_1_c_observation.html">CObservation</a> *&#160;</td>
          <td class="paramname"><em>obs</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1poses_1_1_c_pose2_d.html">CPose2D</a> &amp;&#160;</td>
          <td class="paramname"><em>takenFrom</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Computes the log-likelihood of a given observation given an arbitrary robot 2D pose. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">takenFrom</td><td>The robot's pose the observation is supposed to be taken from. </td></tr>
    <tr><td class="paramname">obs</td><td>The observation. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>This method returns a log-likelihood.</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd>Used in particle filter algorithms, see: CMultiMetricMapPDF::update </dd></dl>

<p>Definition at line <a class="el" href="_c_metric_map_8h_source.html#l00175">175</a> of file <a class="el" href="_c_metric_map_8h_source.html">CMetricMap.h</a>.</p>

</div>
</div>
<a class="anchor" id="a8184371fde28bc35a9ec461240b83b43"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::computeObservationsLikelihood" ref="a8184371fde28bc35a9ec461240b83b43" args="(const CSensoryFrame &amp;sf, const CPose2D &amp;takenFrom)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">double mrpt::slam::CMetricMap::computeObservationsLikelihood </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1slam_1_1_c_sensory_frame.html">CSensoryFrame</a> &amp;&#160;</td>
          <td class="paramname"><em>sf</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1poses_1_1_c_pose2_d.html">CPose2D</a> &amp;&#160;</td>
          <td class="paramname"><em>takenFrom</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the sum of the log-likelihoods of each individual observation within a <a class="el" href="classmrpt_1_1slam_1_1_c_sensory_frame.html" title="Declares a class for storing a &quot;sensory frame&quot;, a set of &quot;observations&quot; taken by the robot approximat...">mrpt::slam::CSensoryFrame</a>. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">takenFrom</td><td>The robot's pose the observation is supposed to be taken from. </td></tr>
    <tr><td class="paramname">sf</td><td>The set of observations in a <a class="el" href="classmrpt_1_1slam_1_1_c_sensory_frame.html" title="Declares a class for storing a &quot;sensory frame&quot;, a set of &quot;observations&quot; taken by the robot approximat...">CSensoryFrame</a>. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>This method returns a log-likelihood. </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#ab3b66046cae11313beba57052b852eca" title="Returns true if this map is able to compute a sensible likelihood function for this observation (i...">canComputeObservationsLikelihood</a> </dd></dl>

</div>
</div>
<a class="anchor" id="aeff0d652dea1426a3e4a332c2c44f532"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::computeVarCellValue_DM_DMV" ref="aeff0d652dea1426a3e4a332c2c44f532" args="(const TRandomFieldCell *cell) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">double mrpt::slam::CRandomFieldGridMap2D::computeVarCellValue_DM_DMV </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structmrpt_1_1slam_1_1_t_random_field_cell.html">TRandomFieldCell</a> *&#160;</td>
          <td class="paramname"><em>cell</em></td><td>)</td>
          <td> const<code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Computes the estimated variance of the cell concentration, or the overall average variance if it has never been observed. </p>

</div>
</div>
<a class="anchor" id="aa1070e173c5f7e307b09c53f1fd256e2"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::duplicate" ref="aa1070e173c5f7e307b09c53f1fd256e2" args="() const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classmrpt_1_1utils_1_1_c_object.html">CObject</a>* mrpt::utils::CObject::duplicate </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [pure virtual, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns a copy of the object, indepently of its class. </p>

<p>Implemented in <a class="el" href="classmrpt_1_1graphs_1_1_c_network_of_poses3_d_inf.html#aa418a18b42f0cd0345f7f74254d3816a">mrpt::graphs::CNetworkOfPoses3DInf</a>, <a class="el" href="classmrpt_1_1graphs_1_1_c_network_of_poses2_d_inf.html#a3a4aefa2c8700d412e577aa67b38ef92">mrpt::graphs::CNetworkOfPoses2DInf</a>, <a class="el" href="classmrpt_1_1graphs_1_1_c_network_of_poses3_d_cov.html#a1e8073ae7f1eea303ff200be62a39dc8">mrpt::graphs::CNetworkOfPoses3DCov</a>, <a class="el" href="classmrpt_1_1graphs_1_1_c_network_of_poses2_d_cov.html#abdae8c21f63f137061ccb70cad7a00a4">mrpt::graphs::CNetworkOfPoses2DCov</a>, <a class="el" href="classmrpt_1_1graphs_1_1_c_network_of_poses3_d.html#a322d25fb1e05935950f9a7667c8186db">mrpt::graphs::CNetworkOfPoses3D</a>, <a class="el" href="classmrpt_1_1graphs_1_1_c_network_of_poses2_d.html#ac67931093925b89d8ffbf5940d53cba0">mrpt::graphs::CNetworkOfPoses2D</a>, <a class="el" href="classmrpt_1_1utils_1_1_t_stereo_camera.html#ab6a8fbe4d003f10c364378c5105be2ef">mrpt::utils::TStereoCamera</a>, <a class="el" href="classmrpt_1_1reactivenav_1_1_c_log_file_record___n_d.html#a3b657b853f3d81f1b85fe63ad90811a4">mrpt::reactivenav::CLogFileRecord_ND</a>, <a class="el" href="classmrpt_1_1utils_1_1_c_simple_database.html#ac8261cd70c8ccbb5d6f0bcbe02f7b129">mrpt::utils::CSimpleDatabase</a>, <a class="el" href="classmrpt_1_1utils_1_1_c_image.html#aad2da5b6028c862896eeff130254b268">mrpt::utils::CImage</a>, <a class="el" href="classmrpt_1_1detectors_1_1_c_detectable3_d.html#af14e72e5cb029e2b48ed085a269ec3d5">mrpt::detectors::CDetectable3D</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_observation3_d_range_scan.html#a0e414505f603f461879a817e628fd847">mrpt::slam::CObservation3DRangeScan</a>, <a class="el" href="classmrpt_1_1hmtslam_1_1_t_hypothesis_i_d_set.html#a91551aa5c70ca76a79009d152dd85132">mrpt::hmtslam::THypothesisIDSet</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_occupancy_grid_map2_d.html#a5e90b6efdf7c8646c43619f805d1447d">mrpt::slam::COccupancyGridMap2D</a>, <a class="el" href="classmrpt_1_1hmtslam_1_1_c_h_m_t_s_l_a_m.html#aaf8fcfb1dc4c86b88c86aec138a11072">mrpt::hmtslam::CHMTSLAM</a>, <a class="el" href="classmrpt_1_1hmtslam_1_1_c_local_metric_hypothesis.html#ac78d9a44f581338715379d0cd17e2fd1">mrpt::hmtslam::CLocalMetricHypothesis</a>, <a class="el" href="classmrpt_1_1gui_1_1_c_display_window3_d.html#af1330a1e443ddb156f55966a204404d3">mrpt::gui::CDisplayWindow3D</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_height_grid_map2_d.html#a197c2c0f0bd6b6b6cd82eb4b78b99e0d">mrpt::slam::CHeightGridMap2D</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_observation_i_m_u.html#addc93579b7a501a8486ed8178e1b1163">mrpt::slam::CObservationIMU</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_multi_metric_map_p_d_f.html#af9bb29381a79d37c8e48319e99b79506">mrpt::slam::CMultiMetricMapPDF</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_landmarks_map.html#a2092c4cab9d1062f66449832e970d427">mrpt::slam::CLandmarksMap</a>, <a class="el" href="classmrpt_1_1vision_1_1_c_feature.html#a43eac0701c624df4976a459ab0ed5f9a">mrpt::vision::CFeature</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_multi_metric_map.html#a40bb0f23493a06d109b9857882e73cc9">mrpt::slam::CMultiMetricMap</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_rawlog.html#a73cf5cd5a1118c882a75f7b489b4c260">mrpt::slam::CRawlog</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_sensory_frame.html#a42ae7a4409660ed30a889f4d293c7cbb">mrpt::slam::CSensoryFrame</a>, <a class="el" href="classmrpt_1_1poses_1_1_c_pose3_d.html#ad10511d0f2da9bd690a92bf8b80bffaa">mrpt::poses::CPose3D</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_observation2_d_range_scan.html#a8752d16a6e4ee043b88101c9850f4099">mrpt::slam::CObservation2DRangeScan</a>, <a class="el" href="classmrpt_1_1poses_1_1_c_point_p_d_f_particles.html#a7f571259a8c4934b39b51c1810c6953d">mrpt::poses::CPointPDFParticles</a>, <a class="el" href="classmrpt_1_1poses_1_1_c_pose3_d_interpolator.html#a6e0706f9975f7f26b3d8096c4b93604d">mrpt::poses::CPose3DInterpolator</a>, <a class="el" href="classmrpt_1_1opengl_1_1_c_open_g_l_viewport.html#af57c300ecbd7c559a9d93fd0614d8f37">mrpt::opengl::COpenGLViewport</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_beacon_map.html#ac96c1b225716e20ed93e20962bf029be">mrpt::slam::CBeaconMap</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_reflectivity_grid_map2_d.html#a738ccf6288f6b32ebe7d1c580967223a">mrpt::slam::CReflectivityGridMap2D</a>, <a class="el" href="classmrpt_1_1hmtslam_1_1_c_l_s_l_a_m_particle_data.html#aa32623b7b721c6c827dccf8418e29dc1">mrpt::hmtslam::CLSLAMParticleData</a>, <a class="el" href="classmrpt_1_1opengl_1_1_c_point_cloud.html#aee94205aa8bf0fa4465036031a062fc0">mrpt::opengl::CPointCloud</a>, <a class="el" href="classmrpt_1_1detectors_1_1_c_detectable2_d.html#a1ae410e57a6919e6007f6b33b12d9bf9">mrpt::detectors::CDetectable2D</a>, <a class="el" href="classmrpt_1_1opengl_1_1_c_open_g_l_scene.html#a9b3a8da932f784bb49c32e49dcda3b96">mrpt::opengl::COpenGLScene</a>, <a class="el" href="classmrpt_1_1opengl_1_1_c_point_cloud_coloured.html#a5f42667250317195e9a1f5b280797d1b">mrpt::opengl::CPointCloudColoured</a>, <a class="el" href="classmrpt_1_1math_1_1_c_matrix_d.html#aa929ee8c57cd51dc5642a605aa70bfbd">mrpt::math::CMatrixD</a>, <a class="el" href="classmrpt_1_1utils_1_1_c_m_h_properties_values_list.html#aa96c50b8298d9986b7e38df79cefd526">mrpt::utils::CMHPropertiesValuesList</a>, <a class="el" href="classmrpt_1_1opengl_1_1_c_planar_laser_scan.html#a174be00acf923c26a2a5933ffe750f6b">mrpt::opengl::CPlanarLaserScan</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_wireless_power_grid_map2_d.html#a446665d934bb68fc8582f33bff9d92b8">mrpt::slam::CWirelessPowerGridMap2D</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_observation_stereo_images.html#abb628a6fcb83bb9803bb4f72dffe1f1c">mrpt::slam::CObservationStereoImages</a>, <a class="el" href="classmrpt_1_1math_1_1_c_matrix.html#a4fb51439298d885903af7000d353f46b">mrpt::math::CMatrix</a>, <a class="el" href="classmrpt_1_1poses_1_1_c_pose3_d_p_d_f_particles.html#a7304e3b9362d80754232877aacdaa808">mrpt::poses::CPose3DPDFParticles</a>, <a class="el" href="classmrpt_1_1poses_1_1_c_pose3_d_quat.html#a9c680e7f88f85b165e8f806fd02d4a56">mrpt::poses::CPose3DQuat</a>, <a class="el" href="classmrpt_1_1hmtslam_1_1_c_h_m_h_map_node.html#acf667fcb7d982bf6dce0a4616136c262">mrpt::hmtslam::CHMHMapNode</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_beacon.html#a8c5aa5059603c4457fef60eb8fdb1ecf">mrpt::slam::CBeacon</a>, <a class="el" href="classmrpt_1_1opengl_1_1_c_text3_d.html#aaa3a55f9b83404ad3842cd764060683d">mrpt::opengl::CText3D</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_observation_stereo_images_features.html#aba4a19c73ed95546f0fcb16eb057f18e">mrpt::slam::CObservationStereoImagesFeatures</a>, <a class="el" href="classmrpt_1_1opengl_1_1_c_ellipsoid.html#a3650d34de6b1f5019fe777978c02cafb">mrpt::opengl::CEllipsoid</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_landmark.html#a75becf8cf9a5879930d55afddada8e8a">mrpt::slam::CLandmark</a>, <a class="el" href="classmrpt_1_1poses_1_1_c_pose3_d_quat_p_d_f_gaussian.html#ad33b8d9da7a6f510520c342cb1ba81bd">mrpt::poses::CPose3DQuatPDFGaussian</a>, <a class="el" href="classmrpt_1_1hmtslam_1_1_c_robot_poses_graph.html#aadda9db6b2b0928164ad50e8cd11eaee">mrpt::hmtslam::CRobotPosesGraph</a>, <a class="el" href="classmrpt_1_1opengl_1_1_c_mesh.html#a5d7468f17d7679ab2f620e1e200e3806">mrpt::opengl::CMesh</a>, <a class="el" href="classmrpt_1_1poses_1_1_c_pose_p_d_f_particles.html#a7cf711985eb19c122259fb73e57ac79b">mrpt::poses::CPosePDFParticles</a>, <a class="el" href="classmrpt_1_1poses_1_1_c_pose_p_d_f_s_o_g.html#ab76de1691de9b7eeb0aa79308743b3b1">mrpt::poses::CPosePDFSOG</a>, <a class="el" href="classmrpt_1_1gui_1_1_c_display_window_plots.html#aa6f1cf193c3bf6a2313b53951346e782">mrpt::gui::CDisplayWindowPlots</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_gas_concentration_grid_map2_d.html#a2291a08ea655179c09a95a7c2bd1795d">mrpt::slam::CGasConcentrationGridMap2D</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_observation_image.html#a3faac43a2aa3cc2cb83009dea36fb091">mrpt::slam::CObservationImage</a>, <a class="el" href="classmrpt_1_1opengl_1_1_c_set_of_lines.html#a310eb858ada8a9becd13c951c2d24bf8">mrpt::opengl::CSetOfLines</a>, <a class="el" href="classmrpt_1_1opengl_1_1_c_text.html#a3687a19a0da6211642fea5da8c3a8ec4">mrpt::opengl::CText</a>, <a class="el" href="classmrpt_1_1poses_1_1_c_pose3_d_p_d_f_gaussian.html#a9b27d9967b815ee3940c15de195a36e2">mrpt::poses::CPose3DPDFGaussian</a>, <a class="el" href="classmrpt_1_1poses_1_1_c_pose3_d_p_d_f_gaussian_inf.html#a9bd19644e5dbc753f2fbb5f6aaa973aa">mrpt::poses::CPose3DPDFGaussianInf</a>, <a class="el" href="classmrpt_1_1hmtslam_1_1_c_h_m_h_map_arc.html#a3d86e457d12686c0cfcc43ad82428799">mrpt::hmtslam::CHMHMapArc</a>, <a class="el" href="classmrpt_1_1opengl_1_1_c_polyhedron.html#a511f6a7e6cc8e6744bc0373174c7427d">mrpt::opengl::CPolyhedron</a>, <a class="el" href="classmrpt_1_1poses_1_1_c_pose_p_d_f_gaussian_inf.html#a7846f251ee6c4a06823a9e317efe9425">mrpt::poses::CPosePDFGaussianInf</a>, <a class="el" href="classmrpt_1_1hmtslam_1_1_c_hierarchical_m_h_map.html#a27438440f4020af9344d231faccc753f">mrpt::hmtslam::CHierarchicalMHMap</a>, <a class="el" href="classmrpt_1_1opengl_1_1_c_angular_observation_mesh.html#a18b235563a3fc738b91a6e6e53a9015f">mrpt::opengl::CAngularObservationMesh</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_coloured_points_map.html#aa9464b5162eb23c17d9e8cfb261d05a7">mrpt::slam::CColouredPointsMap</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_incremental_map_partitioner.html#a31d7ca9b000e8f07a79929e591343d86">mrpt::slam::CIncrementalMapPartitioner</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_r_b_p_f_particle_data.html#a5bcc1c02aed4050434ed55b74f2ff650">mrpt::slam::CRBPFParticleData</a>, <a class="el" href="classmrpt_1_1poses_1_1_c_point2_d.html#a0bf70b9de6ac93f51598aac53e2003d3">mrpt::poses::CPoint2D</a>, <a class="el" href="classmrpt_1_1poses_1_1_c_point_p_d_f_s_o_g.html#a49ae926af8ad565263ce3cfbfac678a0">mrpt::poses::CPointPDFSOG</a>, <a class="el" href="classmrpt_1_1poses_1_1_c_pose2_d.html#a7bfbc310c6895373d2a861c32a7e9a42">mrpt::poses::CPose2D</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_simple_points_map.html#ade98e5012f143f773dca038ebedaf414">mrpt::slam::CSimplePointsMap</a>, <a class="el" href="classmrpt_1_1opengl_1_1_c_disk.html#ac24e8aff817cff149884379a9f2bc8f3">mrpt::opengl::CDisk</a>, <a class="el" href="classmrpt_1_1opengl_1_1_c_set_of_objects.html#a7b52c011ee07d664d4fb68e8a8aadbcd">mrpt::opengl::CSetOfObjects</a>, <a class="el" href="classmrpt_1_1poses_1_1_c_pose3_d_p_d_f_s_o_g.html#a446f3aa07c01e02a3e6b217cf5add70a">mrpt::poses::CPose3DPDFSOG</a>, <a class="el" href="classmrpt_1_1utils_1_1_t_camera.html#ae3614449388ba0d04ada82669bec0737">mrpt::utils::TCamera</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_action_robot_movement2_d.html#a7e8d6d2fb451afbde43e9ac7221ddc9b">mrpt::slam::CActionRobotMovement2D</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_observation_battery_state.html#a2cb06e193f5eb42aa2a831020d95afff">mrpt::slam::CObservationBatteryState</a>, <a class="el" href="classmrpt_1_1opengl_1_1_c_grid_plane_x_y.html#abbd3dfcf7b030079b2abfba5ea6444be">mrpt::opengl::CGridPlaneXY</a>, <a class="el" href="classmrpt_1_1opengl_1_1_c_grid_plane_x_z.html#aefe4896e131caf88278a5a716217332e">mrpt::opengl::CGridPlaneXZ</a>, <a class="el" href="classmrpt_1_1poses_1_1_c_point3_d.html#a29bbab541ccead175735cb918d824df8">mrpt::poses::CPoint3D</a>, <a class="el" href="classmrpt_1_1poses_1_1_c_pose_p_d_f_gaussian.html#a965e60ece7618520c2b8ca8fffd193a8">mrpt::poses::CPosePDFGaussian</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_simple_map.html#a6d025252ed5f6b5f4e0a4e3ddc416b7f">mrpt::slam::CSimpleMap</a>, <a class="el" href="classmrpt_1_1opengl_1_1_c_arrow.html#a41cc3bf824b9cb780a3ab7cf192a3364">mrpt::opengl::CArrow</a>, <a class="el" href="classmrpt_1_1opengl_1_1_c_axis.html#ac25fb689167766f779d410e27ea1d49e">mrpt::opengl::CAxis</a>, <a class="el" href="classmrpt_1_1opengl_1_1_c_sphere.html#aa575a8579770705b353c529c2cb087fb">mrpt::opengl::CSphere</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_weighted_points_map.html#a0e0d2c095e57a26850f403067f8a57b9">mrpt::slam::CWeightedPointsMap</a>, <a class="el" href="classmrpt_1_1opengl_1_1_c_camera.html#a633a46c1730b7ab2a384894aaeb5a2b1">mrpt::opengl::CCamera</a>, <a class="el" href="classmrpt_1_1poses_1_1_c_pose_p_d_f_grid.html#ab2e0aecfd0e0b44f72034ccc3fbb9b31">mrpt::poses::CPosePDFGrid</a>, <a class="el" href="classmrpt_1_1utils_1_1_c_string_list.html#ac9a15d228b7367a12ca0b7eb4d83c6b5">mrpt::utils::CStringList</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_observation_odometry.html#a05fd7949574d81da2ba09078098ecf30">mrpt::slam::CObservationOdometry</a>, <a class="el" href="classmrpt_1_1opengl_1_1_c_box.html#a8c9b11cb2c190d0e483139fa867b18c6">mrpt::opengl::CBox</a>, <a class="el" href="classmrpt_1_1opengl_1_1_c_set_of_textured_triangles.html#ad2a5d067f01067243281582300ec203b">mrpt::opengl::CSetOfTexturedTriangles</a>, <a class="el" href="classmrpt_1_1utils_1_1_c_memory_chunk.html#a78bcb5c78c30e2ce9264f175992824e7">mrpt::utils::CMemoryChunk</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_action_collection.html#a407a76e436c9a8e8078894c35fdb5158">mrpt::slam::CActionCollection</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_observation_g_p_s.html#a55cbbc63858e0090c78510beec989412">mrpt::slam::CObservationGPS</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_observation_range.html#a99ebd8676c155b314f49dab5e3a76330">mrpt::slam::CObservationRange</a>, <a class="el" href="classmrpt_1_1reactivenav_1_1_c_log_file_record.html#a04c05b92a6607524ea23b9e5b5ed8b09">mrpt::reactivenav::CLogFileRecord</a>, <a class="el" href="classmrpt_1_1math_1_1_c_spline_interpolator1_d.html#a53aa9a1e2f53f277b9e1488e0c96b6c5">mrpt::math::CSplineInterpolator1D</a>, <a class="el" href="classmrpt_1_1utils_1_1_c_properties_values_list.html#aa79cf430bc89538e7550ec20a10491e4">mrpt::utils::CPropertiesValuesList</a>, <a class="el" href="classmrpt_1_1gui_1_1_c_display_window.html#a5f25675c29fb9c67cabf4c6ca2162cf3">mrpt::gui::CDisplayWindow</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_observation_bearing_range.html#a2507aece9dce13c5f3bb9f5a190e096c">mrpt::slam::CObservationBearingRange</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_observation_gas_sensors.html#abcc880fd8478f9062e10e765a6207ba9">mrpt::slam::CObservationGasSensors</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_observation_wireless_power.html#a9b77480065c165be0e906ad2ff971cd9">mrpt::slam::CObservationWirelessPower</a>, <a class="el" href="classmrpt_1_1opengl_1_1_c3_d_s_scene.html#a3cb1f8940317a760f31397e1c3ad0027">mrpt::opengl::C3DSScene</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_observation_visual_landmarks.html#ab1be9ba6c66ffd5ac0c3d3cef5a133f9">mrpt::slam::CObservationVisualLandmarks</a>, <a class="el" href="classmrpt_1_1math_1_1_c_matrix_b.html#a59912ae9f05fa0604d49df187947af11">mrpt::math::CMatrixB</a>, <a class="el" href="classmrpt_1_1poses_1_1_c_point_p_d_f_gaussian.html#ac4c2c51962f520b5879919cba0a9e206">mrpt::poses::CPointPDFGaussian</a>, <a class="el" href="classmrpt_1_1poses_1_1_c_poses2_d_sequence.html#aabce19dce3c15e10b340f26f4ebe535f">mrpt::poses::CPoses2DSequence</a>, <a class="el" href="classmrpt_1_1poses_1_1_c_poses3_d_sequence.html#a095af4ace78646a9fab689723fa00508">mrpt::poses::CPoses3DSequence</a>, <a class="el" href="classmrpt_1_1utils_1_1_c_simple_database_table.html#a696a686e91fd5f7289706fd0bd6ddfc5">mrpt::utils::CSimpleDatabaseTable</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_action_robot_movement3_d.html#a16bc246dde9470e74a1033da69c9866e">mrpt::slam::CActionRobotMovement3D</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_observation_beacon_ranges.html#a23e787119a1f9bd94eb9b5690e0daccb">mrpt::slam::CObservationBeaconRanges</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_observation_comment.html#a434bcdda2cc6f6c265ae62788adfd98a">mrpt::slam::CObservationComment</a>, <a class="el" href="classmrpt_1_1opengl_1_1_c_cylinder.html#a8e5b85adca444e64144ee6f3faf83114">mrpt::opengl::CCylinder</a>, <a class="el" href="classmrpt_1_1opengl_1_1_c_set_of_triangles.html#abbbbb3d087ed3ee7c2da39eac11ab95a">mrpt::opengl::CSetOfTriangles</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_observation_reflectivity.html#a17ef8a534a2149e36dc7b95fba49eae0">mrpt::slam::CObservationReflectivity</a>, <a class="el" href="classmrpt_1_1opengl_1_1_c_generalized_cylinder.html#a77bf22c0582d88b4faeb742d29b5c048">mrpt::opengl::CGeneralizedCylinder</a>, <a class="el" href="classmrpt_1_1math_1_1_c_polygon.html#a5e7e04d290bd0a8e5ea200c5c6161789">mrpt::math::CPolygon</a>, <a class="el" href="classmrpt_1_1poses_1_1_c_point2_d_p_d_f_gaussian.html#ae3fd0af40f8db138878c9bec82d334cb">mrpt::poses::CPoint2DPDFGaussian</a>, <a class="el" href="classmrpt_1_1poses_1_1_t_simple3_d_point.html#ad234b06eecf2225506f9095dd8e8a6d7">mrpt::poses::TSimple3DPoint</a>, <a class="el" href="classmrpt_1_1opengl_1_1_c_open_g_l_standard_object.html#a8988a84c557b3ca109ad0549abc5a146">mrpt::opengl::COpenGLStandardObject</a>, <a class="el" href="classmrpt_1_1opengl_1_1_c_simple_line.html#ad04236958bd785b246c4b128c0921fed">mrpt::opengl::CSimpleLine</a>, <a class="el" href="classmrpt_1_1opengl_1_1_c_textured_plane.html#a85b062e19d9544cdc2aca554ef99c326">mrpt::opengl::CTexturedPlane</a>, <a class="el" href="classmrpt_1_1utils_1_1_c_type_selector.html#ab43700d20fcedc8db931a39a061ef5a0">mrpt::utils::CTypeSelector</a>, and <a class="el" href="classmrpt_1_1reactivenav_1_1_c_log_file_record___v_f_f.html#af9583f931124d502e9c20d2786262b0e">mrpt::reactivenav::CLogFileRecord_VFF</a>.</p>

</div>
</div>
<a class="anchor" id="a534695890364f4b916bba07dad311bcf"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::duplicateGetSmartPtr" ref="a534695890364f4b916bba07dad311bcf" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1utils_1_1_c_object_ptr.html">mrpt::utils::CObjectPtr</a> mrpt::utils::CObject::duplicateGetSmartPtr </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns a copy of the object, indepently of its class, as a smart pointer (the newly created object will exist as long as any copy of this smart pointer). </p>

<p>Definition at line <a class="el" href="_c_object_8h_source.html#l00151">151</a> of file <a class="el" href="_c_object_8h_source.html">CObject.h</a>.</p>

</div>
</div>
<a class="anchor" id="a1abcf1677e597799ad7572b604f32645"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::fill" ref="a1abcf1677e597799ad7572b604f32645" args="(const T &amp;value)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void mrpt::utils::CDynamicGrid::fill </td>
          <td>(</td>
          <td class="paramtype">const T &amp;&#160;</td>
          <td class="paramname"><em>value</em></td><td>)</td>
          <td><code> [inline, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Fills all the cells with the same value. </p>

<p>Definition at line <a class="el" href="_c_dynamic_grid_8h_source.html#l00116">116</a> of file <a class="el" href="_c_dynamic_grid_8h_source.html">CDynamicGrid.h</a>.</p>

<p>References <a class="el" href="eigen__plugins_8h_source.html#l00058">fill()</a>.</p>

</div>
</div>
<a class="anchor" id="a2fa4c22d128c7d97a2df7311b52fde71"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::getAs3DObject" ref="a2fa4c22d128c7d97a2df7311b52fde71" args="(mrpt::opengl::CSetOfObjectsPtr &amp;outObj) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void mrpt::slam::CRandomFieldGridMap2D::getAs3DObject </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structmrpt_1_1opengl_1_1_c_set_of_objects_ptr.html">mrpt::opengl::CSetOfObjectsPtr</a> &amp;&#160;</td>
          <td class="paramname"><em>outObj</em></td><td>)</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns a 3D object representing the map. </p>

<p>Implements <a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#aca6f34ceb20942667a67cdd5723f87df">mrpt::slam::CMetricMap</a>.</p>

<p>Reimplemented in <a class="el" href="classmrpt_1_1slam_1_1_c_gas_concentration_grid_map2_d.html#a9080e3b407de76fe81bdd9b82447f701">mrpt::slam::CGasConcentrationGridMap2D</a>, and <a class="el" href="classmrpt_1_1slam_1_1_c_wireless_power_grid_map2_d.html#a08352dbfe4ec5ab35d6697e58e9cb5e0">mrpt::slam::CWirelessPowerGridMap2D</a>.</p>

</div>
</div>
<a class="anchor" id="afc6db16768f9079bf47d5b1476b5e996"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::getAsBitmapFile" ref="afc6db16768f9079bf47d5b1476b5e996" args="(mrpt::utils::CImage &amp;out_img) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void mrpt::slam::CRandomFieldGridMap2D::getAsBitmapFile </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classmrpt_1_1utils_1_1_c_image.html">mrpt::utils::CImage</a> &amp;&#160;</td>
          <td class="paramname"><em>out_img</em></td><td>)</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns an image just as described in <em>saveAsBitmapFile</em>. </p>

<p>Reimplemented in <a class="el" href="classmrpt_1_1slam_1_1_c_gas_concentration_grid_map2_d.html#a399f719e3f1a2af6b096565610c68578">mrpt::slam::CGasConcentrationGridMap2D</a>, and <a class="el" href="classmrpt_1_1slam_1_1_c_wireless_power_grid_map2_d.html#a91455da4c586f6401898e00ae39ec13f">mrpt::slam::CWirelessPowerGridMap2D</a>.</p>

</div>
</div>
<a class="anchor" id="aabe9a9913d0f135abd54ead888787281"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::getAsMatlab3DGraphScript" ref="aabe9a9913d0f135abd54ead888787281" args="(std::string &amp;out_script) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void mrpt::slam::CRandomFieldGridMap2D::getAsMatlab3DGraphScript </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classstd_1_1string.html">std::string</a> &amp;&#160;</td>
          <td class="paramname"><em>out_script</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Return a large text block with a MATLAB script to plot the contents of this map. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a2d24916fa541757e2fc02a5da12ec9ff" title="Save a matlab &quot;.m&quot; file which represents as 3D surfaces the mean and a given confidence level for the...">saveAsMatlab3DGraph</a> This method can only be called in a KF map model. </dd></dl>

</div>
</div>
<a class="anchor" id="aad1ca5fdd667b49e78b64c7a6f19a76b"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::getAsMatrix" ref="aad1ca5fdd667b49e78b64c7a6f19a76b" args="(MAT &amp;m) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void mrpt::utils::CDynamicGrid::getAsMatrix </td>
          <td>(</td>
          <td class="paramtype">MAT &amp;&#160;</td>
          <td class="paramname"><em>m</em></td><td>)</td>
          <td> const<code> [inline, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the entire grid as a matrix. </p>
<dl><dt><b>Template Parameters:</b></dt><dd>
  <table class="">
    <tr><td class="paramname">MAT</td><td>The type of the matrix, typically a CMatrixDouble. </td></tr>
  </table>
  </dd>
</dl>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[out]</td><td class="paramname">m</td><td>The output matrix; will be set automatically to the correct size. Entry (cy,cx) in the matrix contains the grid cell with indices (cx,cy). </td></tr>
  </table>
  </dd>
</dl>
<dl class="note"><dt><b>Note:</b></dt><dd>This method will compile only for cell types that can be converted to the type of the matrix elements (e.g. double). </dd></dl>

<p>Definition at line <a class="el" href="_c_dynamic_grid_8h_source.html#l00329">329</a> of file <a class="el" href="_c_dynamic_grid_8h_source.html">CDynamicGrid.h</a>.</p>

</div>
</div>
<a class="anchor" id="ae7b0688c0e2c0d75554e22b739649463"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::getAsSimplePointsMap" ref="ae7b0688c0e2c0d75554e22b739649463" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual const <a class="el" href="classmrpt_1_1slam_1_1_c_simple_points_map.html">CSimplePointsMap</a>* mrpt::slam::CMetricMap::getAsSimplePointsMap </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline, virtual, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>If the map is a simple points map or it's a multi-metric map that contains EXACTLY one simple points map, return it. </p>
<p>Otherwise, return NULL </p>

<p>Reimplemented in <a class="el" href="classmrpt_1_1slam_1_1_c_points_map.html#a9846b0622be65148a62575533919eaa0">mrpt::slam::CPointsMap</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_multi_metric_map.html#a9a29113ddce6422f468ef5aa716462ef">mrpt::slam::CMultiMetricMap</a>, and <a class="el" href="classmrpt_1_1slam_1_1_c_simple_points_map.html#a6c5f6976255dc9b50b218af23f8ea7bf">mrpt::slam::CSimplePointsMap</a>.</p>

<p>Definition at line <a class="el" href="_c_metric_map_8h_source.html#l00346">346</a> of file <a class="el" href="_c_metric_map_8h_source.html">CMetricMap.h</a>.</p>

</div>
</div>
<a class="anchor" id="ace4e7cc2a2f070d556c5074117a3aa2f"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::getAsSimplePointsMap" ref="ace4e7cc2a2f070d556c5074117a3aa2f" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classmrpt_1_1slam_1_1_c_simple_points_map.html">CSimplePointsMap</a>* mrpt::slam::CMetricMap::getAsSimplePointsMap </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline, virtual, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Reimplemented in <a class="el" href="classmrpt_1_1slam_1_1_c_points_map.html#a64c588c08d8ddbaf80c689c2ab06a72a">mrpt::slam::CPointsMap</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_multi_metric_map.html#a0e7cd4c36b7e61e041b5bad0dee83a70">mrpt::slam::CMultiMetricMap</a>, and <a class="el" href="classmrpt_1_1slam_1_1_c_simple_points_map.html#a340ffc456415944bd87fc75c370eb575">mrpt::slam::CSimplePointsMap</a>.</p>

<p>Definition at line <a class="el" href="_c_metric_map_8h_source.html#l00347">347</a> of file <a class="el" href="_c_metric_map_8h_source.html">CMetricMap.h</a>.</p>

</div>
</div>
<a class="anchor" id="a832c1f4446f52bef49d0b9c12aac23bd"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::getCommonInsertOptions" ref="a832c1f4446f52bef49d0b9c12aac23bd" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="structmrpt_1_1slam_1_1_c_random_field_grid_map2_d_1_1_t_insertion_options_common.html">CRandomFieldGridMap2D::TInsertionOptionsCommon</a>* mrpt::slam::CRandomFieldGridMap2D::getCommonInsertOptions </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [protected, pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the part of the options common to all <a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html" title="CRandomFieldGridMap2D represents a 2D grid map where each cell is associated one real-valued property...">CRandomFieldGridMap2D</a> classes. </p>

<p>Implemented in <a class="el" href="classmrpt_1_1slam_1_1_c_gas_concentration_grid_map2_d.html#ac3e4ca9b8d8a3345fac99bb63bc7d3d6">mrpt::slam::CGasConcentrationGridMap2D</a>, and <a class="el" href="classmrpt_1_1slam_1_1_c_wireless_power_grid_map2_d.html#aeb6f6a74b4a96edfc8b73bdbf69518fa">mrpt::slam::CWirelessPowerGridMap2D</a>.</p>

</div>
</div>
<a class="anchor" id="ae6db1a79c4966b3ad989011ef9cea9df"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::getMapType" ref="ae6db1a79c4966b3ad989011ef9cea9df" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a1bdb0ec64ac5ebc8f0b803b66151703a">TMapRepresentation</a> mrpt::slam::CRandomFieldGridMap2D::getMapType </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Return the type of the random-field grid map, according to parameters passed on construction. </p>

</div>
</div>
<a class="anchor" id="a42d516517b992a3e652d5cd26a1dedf6"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::getMeanAndCov" ref="a42d516517b992a3e652d5cd26a1dedf6" args="(vector_double &amp;out_means, CMatrixDouble &amp;out_cov) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void mrpt::slam::CRandomFieldGridMap2D::getMeanAndCov </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespacemrpt.html#a4a6aab2c98368ca6b554c04f8fe84cfb">vector_double</a> &amp;&#160;</td>
          <td class="paramname"><em>out_means</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespacemrpt_1_1math.html#a3814c2b868f059d6a7ab0d8ecd2311d6">CMatrixDouble</a> &amp;&#160;</td>
          <td class="paramname"><em>out_cov</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Return the mean and covariance vector of the full Kalman filter estimate (works for all KF-based methods). </p>

</div>
</div>
<a class="anchor" id="adc2166ca7c775540b668a2f3e81d0ba1"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::getResolution" ref="adc2166ca7c775540b668a2f3e81d0ba1" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">float mrpt::utils::CDynamicGrid::getResolution </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the resolution of the grid map. </p>

<p>Definition at line <a class="el" href="_c_dynamic_grid_8h_source.html#l00278">278</a> of file <a class="el" href="_c_dynamic_grid_8h_source.html">CDynamicGrid.h</a>.</p>

</div>
</div>
<a class="anchor" id="a1ccd2f2de279d41d9a7ebe4281abc739"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::GetRuntimeClass" ref="a1ccd2f2de279d41d9a7ebe4281abc739" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual const <a class="el" href="structmrpt_1_1utils_1_1_t_runtime_class_id.html">mrpt::utils::TRuntimeClassId</a>* mrpt::slam::CRandomFieldGridMap2D::GetRuntimeClass </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns information about the class of an object in runtime. </p>

<p>Reimplemented from <a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#a7ae0fed73fe1304f4fbb196bb3fe3400">mrpt::slam::CMetricMap</a>.</p>

<p>Reimplemented in <a class="el" href="classmrpt_1_1slam_1_1_c_wireless_power_grid_map2_d.html#adbd0ab414c57a658ab71583de492c5b1">mrpt::slam::CWirelessPowerGridMap2D</a>, and <a class="el" href="classmrpt_1_1slam_1_1_c_gas_concentration_grid_map2_d.html#a2872aa0dc367cd19d5c0f0fa92e06929">mrpt::slam::CGasConcentrationGridMap2D</a>.</p>

</div>
</div>
<a class="anchor" id="aeb24078d14768d08d00c1eb79c547ff3"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::getSizeX" ref="aeb24078d14768d08d00c1eb79c547ff3" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">size_t mrpt::utils::CDynamicGrid::getSizeX </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the horizontal size of grid map in cells count. </p>

<p>Definition at line <a class="el" href="_c_dynamic_grid_8h_source.html#l00254">254</a> of file <a class="el" href="_c_dynamic_grid_8h_source.html">CDynamicGrid.h</a>.</p>

</div>
</div>
<a class="anchor" id="a4d300627ac8a06e1e277292c1b0a711b"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::getSizeY" ref="a4d300627ac8a06e1e277292c1b0a711b" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">size_t mrpt::utils::CDynamicGrid::getSizeY </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the vertical size of grid map in cells count. </p>

<p>Definition at line <a class="el" href="_c_dynamic_grid_8h_source.html#l00258">258</a> of file <a class="el" href="_c_dynamic_grid_8h_source.html">CDynamicGrid.h</a>.</p>

</div>
</div>
<a class="anchor" id="a5b3ddaf4838deb69402688a149fff54c"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::getXMax" ref="a5b3ddaf4838deb69402688a149fff54c" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">float mrpt::utils::CDynamicGrid::getXMax </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the "x" coordinate of right side of grid map. </p>

<p>Definition at line <a class="el" href="_c_dynamic_grid_8h_source.html#l00266">266</a> of file <a class="el" href="_c_dynamic_grid_8h_source.html">CDynamicGrid.h</a>.</p>

</div>
</div>
<a class="anchor" id="a4056c7f1f93e0ad84b1dc11429080312"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::getXMin" ref="a4056c7f1f93e0ad84b1dc11429080312" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">float mrpt::utils::CDynamicGrid::getXMin </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the "x" coordinate of left side of grid map. </p>

<p>Definition at line <a class="el" href="_c_dynamic_grid_8h_source.html#l00262">262</a> of file <a class="el" href="_c_dynamic_grid_8h_source.html">CDynamicGrid.h</a>.</p>

</div>
</div>
<a class="anchor" id="aa287d6b8076e7377bb37a4e4194cf9b5"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::getYMax" ref="aa287d6b8076e7377bb37a4e4194cf9b5" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">float mrpt::utils::CDynamicGrid::getYMax </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the "y" coordinate of bottom side of grid map. </p>

<p>Definition at line <a class="el" href="_c_dynamic_grid_8h_source.html#l00274">274</a> of file <a class="el" href="_c_dynamic_grid_8h_source.html">CDynamicGrid.h</a>.</p>

</div>
</div>
<a class="anchor" id="ae0c391b4f19aea09157f837d7fa15a3b"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::getYMin" ref="ae0c391b4f19aea09157f837d7fa15a3b" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">float mrpt::utils::CDynamicGrid::getYMin </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the "y" coordinate of top side of grid map. </p>

<p>Definition at line <a class="el" href="_c_dynamic_grid_8h_source.html#l00270">270</a> of file <a class="el" href="_c_dynamic_grid_8h_source.html">CDynamicGrid.h</a>.</p>

</div>
</div>
<a class="anchor" id="a1c1e8c7d0d184ccdaa7d5a0ee5184e1e"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::hasSubscribers" ref="a1c1e8c7d0d184ccdaa7d5a0ee5184e1e" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool mrpt::utils::CObservable::hasSubscribers </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline, protected, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Can be called by a derived class before preparing an event for publishing with <em>publishEvent</em> to determine if there is no one subscribed, so it can save the wasted time preparing an event that will be not read. </p>

<p>Definition at line <a class="el" href="_c_observable_8h_source.html#l00069">69</a> of file <a class="el" href="_c_observable_8h_source.html">CObservable.h</a>.</p>

</div>
</div>
<a class="anchor" id="a20356dae1065b5ed663b08bed36d6f11"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::idx2cxcy" ref="a20356dae1065b5ed663b08bed36d6f11" args="(const int &amp;idx, int &amp;cx, int &amp;cy) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void mrpt::utils::CDynamicGrid::idx2cxcy </td>
          <td>(</td>
          <td class="paramtype">const int &amp;&#160;</td>
          <td class="paramname"><em>idx</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int &amp;&#160;</td>
          <td class="paramname"><em>cx</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int &amp;&#160;</td>
          <td class="paramname"><em>cy</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const<code> [inline, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Transform a global (linear) cell index value into its corresponding (x,y) cell indexes. </p>

<p>Definition at line <a class="el" href="_c_dynamic_grid_8h_source.html#l00306">306</a> of file <a class="el" href="_c_dynamic_grid_8h_source.html">CDynamicGrid.h</a>.</p>

</div>
</div>
<a class="anchor" id="a91a60d42d43bdc6d0174b492521fc5dc"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::idx2x" ref="a91a60d42d43bdc6d0174b492521fc5dc" args="(int cx) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">float mrpt::utils::CDynamicGrid::idx2x </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>cx</em></td><td>)</td>
          <td> const<code> [inline, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Transform a cell index into a coordinate value. </p>

<p>Definition at line <a class="el" href="_c_dynamic_grid_8h_source.html#l00314">314</a> of file <a class="el" href="_c_dynamic_grid_8h_source.html">CDynamicGrid.h</a>.</p>

</div>
</div>
<a class="anchor" id="aad004e29d48cd60015f6711f497483fa"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::idx2y" ref="aad004e29d48cd60015f6711f497483fa" args="(int cy) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">float mrpt::utils::CDynamicGrid::idx2y </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>cy</em></td><td>)</td>
          <td> const<code> [inline, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_dynamic_grid_8h_source.html#l00315">315</a> of file <a class="el" href="_c_dynamic_grid_8h_source.html">CDynamicGrid.h</a>.</p>

</div>
</div>
<a class="anchor" id="ad1d3f22228d6dbdb3c31c132713bf782"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::insertObservation" ref="ad1d3f22228d6dbdb3c31c132713bf782" args="(const CObservation *obs, const CPose3D *robotPose=NULL)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool mrpt::slam::CMetricMap::insertObservation </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1slam_1_1_c_observation.html">CObservation</a> *&#160;</td>
          <td class="paramname"><em>obs</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1poses_1_1_c_pose3_d.html">CPose3D</a> *&#160;</td>
          <td class="paramname"><em>robotPose</em> = <code>NULL</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Insert the observation information into this map. </p>
<p>This method must be implemented in derived classes. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">obs</td><td>The observation </td></tr>
    <tr><td class="paramname">robotPose</td><td>The 3D pose of the robot mobile base in the map reference system, or NULL (default) if you want to use the origin.</td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classmrpt_1_1slam_1_1_c_observation.html#a4dadc9d2618ea3701084e8cce4671564" title="This method is equivalent to:">CObservation::insertObservationInto</a> </dd></dl>

<p>Definition at line <a class="el" href="_c_metric_map_8h_source.html#l00133">133</a> of file <a class="el" href="_c_metric_map_8h_source.html">CMetricMap.h</a>.</p>

</div>
</div>
<a class="anchor" id="a76dee0556409f170b6de842670876310"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::insertObservation_KernelDM_DMV" ref="a76dee0556409f170b6de842670876310" args="(float normReading, const CPose3D &amp;sensorPose, bool is_DMV)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void mrpt::slam::CRandomFieldGridMap2D::insertObservation_KernelDM_DMV </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>normReading</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1poses_1_1_c_pose3_d.html">CPose3D</a> &amp;&#160;</td>
          <td class="paramname"><em>sensorPose</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>is_DMV</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The implementation of "insertObservation" for Achim Lilienthal's map models DM &amp; DM+V. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">normReading</td><td>Is a [0,1] normalized concentration reading. </td></tr>
    <tr><td class="paramname">sensorPose</td><td>Is the sensor pose on the robot </td></tr>
    <tr><td class="paramname">is_DMV</td><td>= false -&gt; map type is Kernel DM; true -&gt; map type is DM+V </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a683f55b585d646b2a621113166e3e413"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::insertObservation_KF" ref="a683f55b585d646b2a621113166e3e413" args="(float normReading, const CPose3D &amp;sensorPose)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void mrpt::slam::CRandomFieldGridMap2D::insertObservation_KF </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>normReading</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1poses_1_1_c_pose3_d.html">CPose3D</a> &amp;&#160;</td>
          <td class="paramname"><em>sensorPose</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The implementation of "insertObservation" for the (whole) Kalman Filter map model. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">normReading</td><td>Is a [0,1] normalized concentration reading. </td></tr>
    <tr><td class="paramname">sensorPose</td><td>Is the sensor pose </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a00d03cf9798e2930e20666204d09e652"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::insertObservation_KF2" ref="a00d03cf9798e2930e20666204d09e652" args="(float normReading, const CPose3D &amp;sensorPose)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void mrpt::slam::CRandomFieldGridMap2D::insertObservation_KF2 </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>normReading</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1poses_1_1_c_pose3_d.html">CPose3D</a> &amp;&#160;</td>
          <td class="paramname"><em>sensorPose</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The implementation of "insertObservation" for the Efficient Kalman Filter map model. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">normReading</td><td>Is a [0,1] normalized concentration reading. </td></tr>
    <tr><td class="paramname">sensorPose</td><td>Is the sensor pose </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a7cb614f5ec634ec6f6a20b14163e5b07"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::insertObservationPtr" ref="a7cb614f5ec634ec6f6a20b14163e5b07" args="(const CObservationPtr &amp;obs, const CPose3D *robotPose=NULL)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool mrpt::slam::CMetricMap::insertObservationPtr </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structmrpt_1_1slam_1_1_c_observation_ptr.html">CObservationPtr</a> &amp;&#160;</td>
          <td class="paramname"><em>obs</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1poses_1_1_c_pose3_d.html">CPose3D</a> *&#160;</td>
          <td class="paramname"><em>robotPose</em> = <code>NULL</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>A wrapper for smart pointers, just calls the non-smart pointer version. </p>

<p>Definition at line <a class="el" href="_c_metric_map_8h_source.html#l00147">147</a> of file <a class="el" href="_c_metric_map_8h_source.html">CMetricMap.h</a>.</p>

<p>References <a class="el" href="mrpt__macros_8h_source.html#l00370">MRPT_START</a>, <a class="el" href="mrpt__macros_8h_source.html#l00131">THROW_EXCEPTION</a>, <a class="el" href="_c_observation_8h_source.html#l00067">mrpt::slam::CObservationPtr::pointer()</a>, and <a class="el" href="mrpt__macros_8h_source.html#l00374">MRPT_END</a>.</p>

</div>
</div>
<a class="anchor" id="a9624bf853d1a300ea645d0d742f969c1"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::internal_clear" ref="a9624bf853d1a300ea645d0d742f969c1" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void mrpt::slam::CRandomFieldGridMap2D::internal_clear </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Erase all the contents of the map. </p>

<p>Implements <a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#a9c19a7f400d7edb087a81e28cafb39d1">mrpt::slam::CMetricMap</a>.</p>

<p>Reimplemented in <a class="el" href="classmrpt_1_1slam_1_1_c_gas_concentration_grid_map2_d.html#ab0198e46eedeab84a658372463fd88f7">mrpt::slam::CGasConcentrationGridMap2D</a>, and <a class="el" href="classmrpt_1_1slam_1_1_c_wireless_power_grid_map2_d.html#ad726f3137b80949b6089b1f35c55f01e">mrpt::slam::CWirelessPowerGridMap2D</a>.</p>

</div>
</div>
<a class="anchor" id="a1a5d553a88fe8001ee9bd99b3ce4b52d"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::isEmpty" ref="a1a5d553a88fe8001ee9bd99b3ce4b52d" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool mrpt::slam::CRandomFieldGridMap2D::isEmpty </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns true if the map is empty/no observation has been inserted (in this class it always return false, unless redefined otherwise in base classes) </p>

<p>Implements <a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#ab4243c534f004d3397c82f5b5e7d46a8">mrpt::slam::CMetricMap</a>.</p>

</div>
</div>
<a class="anchor" id="a9fbc1945a342365600bf352ec89fc617"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::loadFromProbabilisticPosesAndObservations" ref="a9fbc1945a342365600bf352ec89fc617" args="(const CSimpleMap &amp;Map)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void mrpt::slam::CMetricMap::loadFromProbabilisticPosesAndObservations </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1slam_1_1_c_simple_map.html">CSimpleMap</a> &amp;&#160;</td>
          <td class="paramname"><em>Map</em></td><td>)</td>
          <td><code> [inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Load the map contents from a <a class="el" href="classmrpt_1_1slam_1_1_c_simple_map.html" title="This class stores a sequence of &lt;Probabilistic Pose,SensoryFrame&gt; pairs, thus a &quot;metric map&quot; can be t...">CSimpleMap</a> object, erasing all previous content of the map. </p>
<p>This is automaticed invoking "insertObservation" for each observation at the mean 3D robot pose as given by the "poses::CPosePDF" in the <a class="el" href="classmrpt_1_1slam_1_1_c_simple_map.html" title="This class stores a sequence of &lt;Probabilistic Pose,SensoryFrame&gt; pairs, thus a &quot;metric map&quot; can be t...">CSimpleMap</a> object.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#ad1d3f22228d6dbdb3c31c132713bf782" title="Insert the observation information into this map.">insertObservation</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_simple_map.html" title="This class stores a sequence of &lt;Probabilistic Pose,SensoryFrame&gt; pairs, thus a &quot;metric map&quot; can be t...">CSimpleMap</a> </dd></dl>
<dl><dt><b>Exceptions:</b></dt><dd>
  <table class="exception">
    <tr><td class="paramname"><a class="el" href="classstd_1_1exception.html" title="STL class.">std::exception</a></td><td>Some internal steps in invoked methods can raise exceptions on invalid parameters, etc... </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="aedf155237d3fe3d595994b9659a4e688"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::loadFromSimpleMap" ref="aedf155237d3fe3d595994b9659a4e688" args="(const CSimpleMap &amp;Map)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void mrpt::slam::CMetricMap::loadFromSimpleMap </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1slam_1_1_c_simple_map.html">CSimpleMap</a> &amp;&#160;</td>
          <td class="paramname"><em>Map</em></td><td>)</td>
          <td><code> [inline, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Load the map contents from a <a class="el" href="classmrpt_1_1slam_1_1_c_simple_map.html" title="This class stores a sequence of &lt;Probabilistic Pose,SensoryFrame&gt; pairs, thus a &quot;metric map&quot; can be t...">CSimpleMap</a> object, erasing all previous content of the map. </p>
<p>This is automaticed invoking "insertObservation" for each observation at the mean 3D robot pose as given by the "poses::CPosePDF" in the <a class="el" href="classmrpt_1_1slam_1_1_c_simple_map.html" title="This class stores a sequence of &lt;Probabilistic Pose,SensoryFrame&gt; pairs, thus a &quot;metric map&quot; can be t...">CSimpleMap</a> object.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#ad1d3f22228d6dbdb3c31c132713bf782" title="Insert the observation information into this map.">insertObservation</a>, <a class="el" href="classmrpt_1_1slam_1_1_c_simple_map.html" title="This class stores a sequence of &lt;Probabilistic Pose,SensoryFrame&gt; pairs, thus a &quot;metric map&quot; can be t...">CSimpleMap</a> </dd></dl>
<dl><dt><b>Exceptions:</b></dt><dd>
  <table class="exception">
    <tr><td class="paramname"><a class="el" href="classstd_1_1exception.html" title="STL class.">std::exception</a></td><td>Some internal steps in invoked methods can raise exceptions on invalid parameters, etc... </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="_c_metric_map_8h_source.html#l00124">124</a> of file <a class="el" href="_c_metric_map_8h_source.html">CMetricMap.h</a>.</p>

</div>
</div>
<a class="anchor" id="aa99e6b75ba0d986dd68df5342d9a16e3"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::m_map_castaway_const" ref="aa99e6b75ba0d986dd68df5342d9a16e3" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classstd_1_1vector.html">std::vector</a>&lt;T&gt;&amp; mrpt::utils::CDynamicGrid::m_map_castaway_const </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline, protected, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Used only from logically const method that really need to modify the object. </p>

<p>Definition at line <a class="el" href="_c_dynamic_grid_8h_source.html#l00052">52</a> of file <a class="el" href="_c_dynamic_grid_8h_source.html">CDynamicGrid.h</a>.</p>

</div>
</div>
<a class="anchor" id="af5432ab6a12bdadea34f1940f02e8f07"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::predictMeasurement" ref="af5432ab6a12bdadea34f1940f02e8f07" args="(const double &amp;x, const double &amp;y, double &amp;out_predict_response, double &amp;out_predict_response_variance)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void mrpt::slam::CRandomFieldGridMap2D::predictMeasurement </td>
          <td>(</td>
          <td class="paramtype">const double &amp;&#160;</td>
          <td class="paramname"><em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const double &amp;&#160;</td>
          <td class="paramname"><em>y</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double &amp;&#160;</td>
          <td class="paramname"><em>out_predict_response</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double &amp;&#160;</td>
          <td class="paramname"><em>out_predict_response_variance</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the prediction of the measurement at some (x,y) coordinates, and its certainty (in the form of the expected variance). </p>
<p>This methods is implemented differently for the different gas map types. </p>

</div>
</div>
<a class="anchor" id="a0c384e00c06199bc2ff37ff5ecb520c9"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::publishEvent" ref="a0c384e00c06199bc2ff37ff5ecb520c9" args="(const mrptEvent &amp;e) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void mrpt::utils::CObservable::publishEvent </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1utils_1_1mrpt_event.html">mrptEvent</a> &amp;&#160;</td>
          <td class="paramname"><em>e</em></td><td>)</td>
          <td> const<code> [protected, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Called when you want this object to emit an event to all the observers currently subscribed to this object. </p>

</div>
</div>
<a class="anchor" id="a73ba83035a64939cdc3aa1c0dfed23ec"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::readFromStream" ref="a73ba83035a64939cdc3aa1c0dfed23ec" args="(mrpt::utils::CStream &amp;in, int version)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void mrpt::utils::CSerializable::readFromStream </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classmrpt_1_1utils_1_1_c_stream.html">mrpt::utils::CStream</a> &amp;&#160;</td>
          <td class="paramname"><em>in</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>version</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [protected, pure virtual, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Introduces a pure virtual method responsible for loading from a <a class="el" href="classmrpt_1_1utils_1_1_c_stream.html" title="This base class is used to provide a unified interface to files,memory buffers,..Please see the deriv...">CStream</a> This can not be used directly be users, instead use "stream &gt;&gt; object;" for reading it from a stream or "stream &gt;&gt; object_ptr;" if the class is unknown apriori. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">in</td><td>The input binary stream where the object data must read from. </td></tr>
    <tr><td class="paramname">version</td><td>The version of the object stored in the stream: use this version number in your code to know how to read the incoming data. </td></tr>
  </table>
  </dd>
</dl>
<dl><dt><b>Exceptions:</b></dt><dd>
  <table class="exception">
    <tr><td class="paramname"><a class="el" href="classstd_1_1exception.html" title="STL class.">std::exception</a></td><td>On any error, see <a class="el" href="classmrpt_1_1utils_1_1_c_stream.html#a1b8cd3d084b5a95a3f65c6eed6e7cc6d" title="Reads a block of bytes from the stream into Buffer On any error, or if ZERO bytes are read...">CStream::ReadBuffer</a> </td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classmrpt_1_1utils_1_1_c_stream.html" title="This base class is used to provide a unified interface to files,memory buffers,..Please see the deriv...">CStream</a> </dd></dl>

<p>Implemented in <a class="el" href="classmrpt_1_1math_1_1_c_matrix_d.html#a0194e57ec48c1dfc6aa00c23d3409143">mrpt::math::CMatrixD</a>, and <a class="el" href="classmrpt_1_1math_1_1_c_matrix.html#a12db95e8c32d48d2d2483936dec516a7">mrpt::math::CMatrix</a>.</p>

</div>
</div>
<a class="anchor" id="ae0efc7ac2c68687c98128ef15a84bf2e"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::recoverMeanAndCov" ref="ae0efc7ac2c68687c98128ef15a84bf2e" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void mrpt::slam::CRandomFieldGridMap2D::recoverMeanAndCov </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>In the KF2 implementation, takes the auxiliary matrices and from them update the cells' mean and std values. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#ab03b2e1abfd332618cdf4c27f335d688" title="Only for the KF2 implementation.">m_hasToRecoverMeanAndCov</a> </dd></dl>

</div>
</div>
<a class="anchor" id="af43d36e226e0c62a03353504bc443556"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::resize" ref="af43d36e226e0c62a03353504bc443556" args="(float new_x_min, float new_x_max, float new_y_min, float new_y_max, const T &amp;defaultValueNewCells, float additionalMarginMeters=2.0f)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void mrpt::utils::CDynamicGrid::resize </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>new_x_min</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>new_x_max</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>new_y_min</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>new_y_max</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const T &amp;&#160;</td>
          <td class="paramname"><em>defaultValueNewCells</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>additionalMarginMeters</em> = <code>2.0f</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Changes the size of the grid, maintaining previous contents. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="eigen__plugins_8h.html#a8133077108cd44f617e7784243eb5db9" title="Changes the size of matrix, maintaining its previous content as possible and padding with zeros where...">setSize</a> </dd></dl>

<p>Definition at line <a class="el" href="_c_dynamic_grid_8h_source.html#l00121">121</a> of file <a class="el" href="_c_dynamic_grid_8h_source.html">CDynamicGrid.h</a>.</p>

<p>References <a class="el" href="mrpt__macros_8h_source.html#l00370">MRPT_START</a>, <a class="el" href="mrpt__macros_8h_source.html#l00283">MRPT_CHECK_NORMAL_NUMBER</a>, <a class="el" href="_core_source.html#l00604">Eigen::internal::y</a>, <a class="el" href="bits_8h_source.html#l00113">mrpt::utils::round()</a>, and <a class="el" href="mrpt__macros_8h_source.html#l00374">MRPT_END</a>.</p>

</div>
</div>
<a class="anchor" id="a609f16ecd8a54610090f48b474b5098f"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::resize" ref="a609f16ecd8a54610090f48b474b5098f" args="(float new_x_min, float new_x_max, float new_y_min, float new_y_max, const TRandomFieldCell &amp;defaultValueNewCells, float additionalMarginMeters=1.0f)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void mrpt::slam::CRandomFieldGridMap2D::resize </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>new_x_min</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>new_x_max</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>new_y_min</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>new_y_max</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="structmrpt_1_1slam_1_1_t_random_field_cell.html">TRandomFieldCell</a> &amp;&#160;</td>
          <td class="paramname"><em>defaultValueNewCells</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>additionalMarginMeters</em> = <code>1.0f</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Changes the size of the grid, maintaining previous contents. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#a926be9ff11d4f3a8f5553262b8fcacd9" title="Changes the size of the grid, ERASING all previous contents.">setSize</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ae9683b3ad3051a68b012aa67aa544ce0"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::saveAsBitmapFile" ref="ae9683b3ad3051a68b012aa67aa544ce0" args="(const std::string &amp;filName) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void mrpt::slam::CRandomFieldGridMap2D::saveAsBitmapFile </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classstd_1_1string.html">std::string</a> &amp;&#160;</td>
          <td class="paramname"><em>filName</em></td><td>)</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Save the current map as a graphical file (BMP,PNG,...). </p>
<p>The file format will be derived from the file extension (see <a class="el" href="classmrpt_1_1utils_1_1_c_image.html#a1b64eea6332fce6366c859d210b3e3d5" title="Save the image to a file, whose format is determined from the extension (internally uses OpenCV)...">CImage::saveToFile</a> ) It depends on the map representation model: mrAchim: Each pixel is the ratio <img class="formulaInl" alt="$ \sum{\frac{wR}{w}} $" src="form_106.png"/> mrKalmanFilter: Each pixel is the mean value of the Gaussian that represents each cell.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><em><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#afc6db16768f9079bf47d5b1476b5e996" title="Returns an image just as described in saveAsBitmapFile.">getAsBitmapFile()</a></em> </dd></dl>

</div>
</div>
<a class="anchor" id="a2d24916fa541757e2fc02a5da12ec9ff"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::saveAsMatlab3DGraph" ref="a2d24916fa541757e2fc02a5da12ec9ff" args="(const std::string &amp;filName) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void mrpt::slam::CRandomFieldGridMap2D::saveAsMatlab3DGraph </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classstd_1_1string.html">std::string</a> &amp;&#160;</td>
          <td class="paramname"><em>filName</em></td><td>)</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Save a matlab ".m" file which represents as 3D surfaces the mean and a given confidence level for the concentration of each cell. </p>
<p>This method can only be called in a KF map model. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#aabe9a9913d0f135abd54ead888787281" title="Return a large text block with a MATLAB script to plot the contents of this map.">getAsMatlab3DGraphScript</a> </dd></dl>

<p>Reimplemented in <a class="el" href="classmrpt_1_1slam_1_1_c_gas_concentration_grid_map2_d.html#a906ba39706f8dae92934e4cce782f3e2">mrpt::slam::CGasConcentrationGridMap2D</a>, and <a class="el" href="classmrpt_1_1slam_1_1_c_wireless_power_grid_map2_d.html#aeb7d67847a5dba887737d50880b10b2a">mrpt::slam::CWirelessPowerGridMap2D</a>.</p>

</div>
</div>
<a class="anchor" id="a8c58a41751a103962401f5f2768e0bc8"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::saveMetricMapRepresentationToFile" ref="a8c58a41751a103962401f5f2768e0bc8" args="(const std::string &amp;filNamePrefix) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void mrpt::slam::CRandomFieldGridMap2D::saveMetricMapRepresentationToFile </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classstd_1_1string.html">std::string</a> &amp;&#160;</td>
          <td class="paramname"><em>filNamePrefix</em></td><td>)</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The implementation in this class just calls all the corresponding method of the contained metric maps. </p>

<p>Implements <a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#ae53f6697d660d43ebaaf8621945ebef0">mrpt::slam::CMetricMap</a>.</p>

<p>Reimplemented in <a class="el" href="classmrpt_1_1slam_1_1_c_gas_concentration_grid_map2_d.html#a18f4a633d9150f2dc7113aa214360a6d">mrpt::slam::CGasConcentrationGridMap2D</a>, and <a class="el" href="classmrpt_1_1slam_1_1_c_wireless_power_grid_map2_d.html#a2ec9206ae9c6dcdec41695bc682fb3d6">mrpt::slam::CWirelessPowerGridMap2D</a>.</p>

</div>
</div>
<a class="anchor" id="ad4a3fca506c6391411806f563de64047"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::saveToTextFile" ref="ad4a3fca506c6391411806f563de64047" args="(const std::string &amp;fileName) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void mrpt::utils::CDynamicGrid::saveToTextFile </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classstd_1_1string.html">std::string</a> &amp;&#160;</td>
          <td class="paramname"><em>fileName</em></td><td>)</td>
          <td> const<code> [inline, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_dynamic_grid_8h_source.html#l00286">286</a> of file <a class="el" href="_c_dynamic_grid_8h_source.html">CDynamicGrid.h</a>.</p>

<p>References <a class="el" href="group__mrpt__system__os.html#ga9b309cf44c48a430f3c70524e7492108">mrpt::system::os::fopen()</a>, <a class="el" href="group__mrpt__system__os.html#ga4cc3a0ea9b292a90300224b00e1c8fac">mrpt::system::os::fprintf()</a>, and <a class="el" href="group__mrpt__system__os.html#gaf465efb0a560da1737c595780530bddf">mrpt::system::os::fclose()</a>.</p>

</div>
</div>
<a class="anchor" id="a926be9ff11d4f3a8f5553262b8fcacd9"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::setSize" ref="a926be9ff11d4f3a8f5553262b8fcacd9" args="(float x_min, float x_max, float y_min, float y_max, float resolution)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void mrpt::utils::CDynamicGrid::setSize </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>x_min</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>x_max</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>y_min</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>y_max</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>resolution</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Changes the size of the grid, ERASING all previous contents. </p>
<dl class="see"><dt><b>See also:</b></dt><dd>resize </dd></dl>

<p>Definition at line <a class="el" href="_c_dynamic_grid_8h_source.html#l00083">83</a> of file <a class="el" href="_c_dynamic_grid_8h_source.html">CDynamicGrid.h</a>.</p>

<p>References <a class="el" href="bits_8h_source.html#l00113">mrpt::utils::round()</a>.</p>

</div>
</div>
<a class="anchor" id="ae6235efcb6d5da8e9db1ad6ccfb8225c"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::squareDistanceToClosestCorrespondence" ref="ae6235efcb6d5da8e9db1ad6ccfb8225c" args="(const float &amp;x0, const float &amp;y0) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual float mrpt::slam::CMetricMap::squareDistanceToClosestCorrespondence </td>
          <td>(</td>
          <td class="paramtype">const float &amp;&#160;</td>
          <td class="paramname"><em>x0</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const float &amp;&#160;</td>
          <td class="paramname"><em>y0</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const<code> [inline, virtual, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the square distance from the 2D point (x0,y0) to the closest correspondence in the map. </p>

<p>Definition at line <a class="el" href="_c_metric_map_8h_source.html#l00333">333</a> of file <a class="el" href="_c_metric_map_8h_source.html">CMetricMap.h</a>.</p>

<p>References <a class="el" href="mrpt__macros_8h_source.html#l00370">MRPT_START</a>, <a class="el" href="mrpt__macros_8h_source.html#l00131">THROW_EXCEPTION</a>, and <a class="el" href="mrpt__macros_8h_source.html#l00374">MRPT_END</a>.</p>

</div>
</div>
<a class="anchor" id="a0b6b801e67bca3d8e0d355e7035f8013"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::writeToStream" ref="a0b6b801e67bca3d8e0d355e7035f8013" args="(mrpt::utils::CStream &amp;out, int *getVersion) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void mrpt::utils::CSerializable::writeToStream </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classmrpt_1_1utils_1_1_c_stream.html">mrpt::utils::CStream</a> &amp;&#160;</td>
          <td class="paramname"><em>out</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&#160;</td>
          <td class="paramname"><em>getVersion</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const<code> [protected, pure virtual, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Introduces a pure virtual method responsible for writing to a <a class="el" href="classmrpt_1_1utils_1_1_c_stream.html" title="This base class is used to provide a unified interface to files,memory buffers,..Please see the deriv...">CStream</a>. </p>
<p>This can not be used directly be users, instead use "stream &lt;&lt; object;" for writing it to a stream. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">out</td><td>The output binary stream where object must be dumped. </td></tr>
    <tr><td class="paramname">getVersion</td><td>If NULL, the object must be dumped. If not, only the version of the object dump must be returned in this pointer. This enables the versioning of objects dumping and backward compatibility with previously stored data. </td></tr>
  </table>
  </dd>
</dl>
<dl><dt><b>Exceptions:</b></dt><dd>
  <table class="exception">
    <tr><td class="paramname"><a class="el" href="classstd_1_1exception.html" title="STL class.">std::exception</a></td><td>On any error, see <a class="el" href="classmrpt_1_1utils_1_1_c_stream.html#a276005e7110c9de74ff3277b3f7bf621" title="Writes a block of bytes to the stream from Buffer.">CStream::WriteBuffer</a> </td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classmrpt_1_1utils_1_1_c_stream.html" title="This base class is used to provide a unified interface to files,memory buffers,..Please see the deriv...">CStream</a> </dd></dl>

<p>Implemented in <a class="el" href="classmrpt_1_1math_1_1_c_matrix_d.html#a767e787b52208ab4dd46ba7f5e2fd224">mrpt::math::CMatrixD</a>, and <a class="el" href="classmrpt_1_1math_1_1_c_matrix.html#a059d7eaf80dab9c7435154146d2b7dbf">mrpt::math::CMatrix</a>.</p>

</div>
</div>
<a class="anchor" id="af7c9b186fa24f231178f0b1ccd778ab1"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::x2idx" ref="af7c9b186fa24f231178f0b1ccd778ab1" args="(float x) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int mrpt::utils::CDynamicGrid::x2idx </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>x</em></td><td>)</td>
          <td> const<code> [inline, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Transform a coordinate values into cell indexes. </p>

<p>Definition at line <a class="el" href="_c_dynamic_grid_8h_source.html#l00301">301</a> of file <a class="el" href="_c_dynamic_grid_8h_source.html">CDynamicGrid.h</a>.</p>

</div>
</div>
<a class="anchor" id="ae5f9732fa03110a3a1c801672d073251"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::x2idx" ref="ae5f9732fa03110a3a1c801672d073251" args="(float x, float x_min) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int mrpt::utils::CDynamicGrid::x2idx </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>x_min</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const<code> [inline, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Transform a coordinate value into a cell index, using a diferent "x_min" value. </p>

<p>Definition at line <a class="el" href="_c_dynamic_grid_8h_source.html#l00319">319</a> of file <a class="el" href="_c_dynamic_grid_8h_source.html">CDynamicGrid.h</a>.</p>

</div>
</div>
<a class="anchor" id="a63dedb14db1e7363f45ab7c6aed9fdb8"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::xy2idx" ref="a63dedb14db1e7363f45ab7c6aed9fdb8" args="(float x, float y) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int mrpt::utils::CDynamicGrid::xy2idx </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>y</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const<code> [inline, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_dynamic_grid_8h_source.html#l00303">303</a> of file <a class="el" href="_c_dynamic_grid_8h_source.html">CDynamicGrid.h</a>.</p>

</div>
</div>
<a class="anchor" id="af5210a6b58e116584fb7ec391048573b"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::y2idx" ref="af5210a6b58e116584fb7ec391048573b" args="(float y) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int mrpt::utils::CDynamicGrid::y2idx </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>y</em></td><td>)</td>
          <td> const<code> [inline, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_dynamic_grid_8h_source.html#l00302">302</a> of file <a class="el" href="_c_dynamic_grid_8h_source.html">CDynamicGrid.h</a>.</p>

</div>
</div>
<a class="anchor" id="a0460a7c8543c6e9f8de28cc5cadfa640"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::y2idx" ref="a0460a7c8543c6e9f8de28cc5cadfa640" args="(float y, float y_min) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int mrpt::utils::CDynamicGrid::y2idx </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>y</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>y_min</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const<code> [inline, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_dynamic_grid_8h_source.html#l00320">320</a> of file <a class="el" href="_c_dynamic_grid_8h_source.html">CDynamicGrid.h</a>.</p>

</div>
</div>
<hr/><h2>Friends And Related Function Documentation</h2>
<a class="anchor" id="a6fec28a53e20dfc1c4d046c26f9f7b48"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::mrpt::utils::CStream" ref="a6fec28a53e20dfc1c4d046c26f9f7b48" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">friend class <a class="el" href="classmrpt_1_1utils_1_1_c_stream.html">mrpt::utils::CStream</a><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Reimplemented from <a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#a6fec28a53e20dfc1c4d046c26f9f7b48">mrpt::slam::CMetricMap</a>.</p>

<p>Definition at line <a class="el" href="_c_random_field_grid_map2_d_8h_source.html#l00117">117</a> of file <a class="el" href="_c_random_field_grid_map2_d_8h_source.html">CRandomFieldGridMap2D.h</a>.</p>

</div>
</div>
<hr/><h2>Member Data Documentation</h2>
<a class="anchor" id="a1cbb8630027acc3d6d227fa7d78c724f"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::classCMetricMap" ref="a1cbb8630027acc3d6d227fa7d78c724f" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="structmrpt_1_1utils_1_1_t_runtime_class_id.html">mrpt::utils::TRuntimeClassId</a> <a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#a1cbb8630027acc3d6d227fa7d78c724f">mrpt::slam::CMetricMap::classCMetricMap</a><code> [static, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_metric_map_8h_source.html#l00081">81</a> of file <a class="el" href="_c_metric_map_8h_source.html">CMetricMap.h</a>.</p>

</div>
</div>
<a class="anchor" id="acb51e4dd811d62c2696aee449d0a4715"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::classCObject" ref="acb51e4dd811d62c2696aee449d0a4715" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="structmrpt_1_1utils_1_1_t_runtime_class_id.html">mrpt::utils::TRuntimeClassId</a> <a class="el" href="classmrpt_1_1utils_1_1_c_object.html#acb51e4dd811d62c2696aee449d0a4715">mrpt::utils::CObject::classCObject</a><code> [static, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_object_8h_source.html#l00139">139</a> of file <a class="el" href="_c_object_8h_source.html">CObject.h</a>.</p>

</div>
</div>
<a class="anchor" id="a2dcaecb5fb40ce8f2659254b785bbdcc"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::classCRandomFieldGridMap2D" ref="a2dcaecb5fb40ce8f2659254b785bbdcc" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="structmrpt_1_1utils_1_1_t_runtime_class_id.html">mrpt::utils::TRuntimeClassId</a> <a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a2dcaecb5fb40ce8f2659254b785bbdcc">mrpt::slam::CRandomFieldGridMap2D::classCRandomFieldGridMap2D</a><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_random_field_grid_map2_d_8h_source.html#l00117">117</a> of file <a class="el" href="_c_random_field_grid_map2_d_8h_source.html">CRandomFieldGridMap2D.h</a>.</p>

</div>
</div>
<a class="anchor" id="a28ec2a03d277a8469b8ecfc81892afdf"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::classCSerializable" ref="a28ec2a03d277a8469b8ecfc81892afdf" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="structmrpt_1_1utils_1_1_t_runtime_class_id.html">mrpt::utils::TRuntimeClassId</a> <a class="el" href="classmrpt_1_1utils_1_1_c_serializable.html#a28ec2a03d277a8469b8ecfc81892afdf">mrpt::utils::CSerializable::classCSerializable</a><code> [static, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_serializable_8h_source.html#l00056">56</a> of file <a class="el" href="_c_serializable_8h_source.html">CSerializable.h</a>.</p>

</div>
</div>
<a class="anchor" id="a1976b75b9ce20b44bc4eb70d97fac7fa"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::m_average_normreadings_count" ref="a1976b75b9ce20b44bc4eb70d97fac7fa" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">size_t <a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a1976b75b9ce20b44bc4eb70d97fac7fa">mrpt::slam::CRandomFieldGridMap2D::m_average_normreadings_count</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_random_field_grid_map2_d_8h_source.html#l00298">298</a> of file <a class="el" href="_c_random_field_grid_map2_d_8h_source.html">CRandomFieldGridMap2D.h</a>.</p>

</div>
</div>
<a class="anchor" id="a84197bd6e66dd5812150812e945d3d33"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::m_average_normreadings_mean" ref="a84197bd6e66dd5812150812e945d3d33" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">double <a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a84197bd6e66dd5812150812e945d3d33">mrpt::slam::CRandomFieldGridMap2D::m_average_normreadings_mean</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_random_field_grid_map2_d_8h_source.html#l00297">297</a> of file <a class="el" href="_c_random_field_grid_map2_d_8h_source.html">CRandomFieldGridMap2D.h</a>.</p>

</div>
</div>
<a class="anchor" id="af8ef1584cd3d129dad99299c08c0fa77"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::m_average_normreadings_var" ref="af8ef1584cd3d129dad99299c08c0fa77" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">double <a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#af8ef1584cd3d129dad99299c08c0fa77">mrpt::slam::CRandomFieldGridMap2D::m_average_normreadings_var</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_random_field_grid_map2_d_8h_source.html#l00297">297</a> of file <a class="el" href="_c_random_field_grid_map2_d_8h_source.html">CRandomFieldGridMap2D.h</a>.</p>

</div>
</div>
<a class="anchor" id="a835c94b79ca4037c4a49638fd69049a9"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::m_cov" ref="a835c94b79ca4037c4a49638fd69049a9" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_d.html">CMatrixD</a> <a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a835c94b79ca4037c4a49638fd69049a9">mrpt::slam::CRandomFieldGridMap2D::m_cov</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The whole covariance matrix, used for the Kalman Filter map representation. </p>

<p>Definition at line <a class="el" href="_c_random_field_grid_map2_d_8h_source.html#l00284">284</a> of file <a class="el" href="_c_random_field_grid_map2_d_8h_source.html">CRandomFieldGridMap2D.h</a>.</p>

</div>
</div>
<a class="anchor" id="a2b50a8c61d853cc452b82d58756e9603"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::m_disableSaveAs3DObject" ref="a2b50a8c61d853cc452b82d58756e9603" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classmrpt_1_1slam_1_1_c_metric_map.html#a2b50a8c61d853cc452b82d58756e9603">mrpt::slam::CMetricMap::m_disableSaveAs3DObject</a><code> [inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>When set to true (default=false), calling "getAs3DObject" will have no effects. </p>

<p>Definition at line <a class="el" href="_c_metric_map_8h_source.html#l00321">321</a> of file <a class="el" href="_c_metric_map_8h_source.html">CMetricMap.h</a>.</p>

</div>
</div>
<a class="anchor" id="a01e5b4ea2c6d1c51ececad2f07829324"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::m_DM_gaussWindow" ref="a01e5b4ea2c6d1c51ececad2f07829324" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classstd_1_1vector.html">std::vector</a>&lt;float&gt; <a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a01e5b4ea2c6d1c51ececad2f07829324">mrpt::slam::CRandomFieldGridMap2D::m_DM_gaussWindow</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_random_field_grid_map2_d_8h_source.html#l00296">296</a> of file <a class="el" href="_c_random_field_grid_map2_d_8h_source.html">CRandomFieldGridMap2D.h</a>.</p>

</div>
</div>
<a class="anchor" id="aaffe8baacca2ecea8fbf65d1a33839cb"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::m_DM_lastCutOff" ref="aaffe8baacca2ecea8fbf65d1a33839cb" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">float <a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#aaffe8baacca2ecea8fbf65d1a33839cb">mrpt::slam::CRandomFieldGridMap2D::m_DM_lastCutOff</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_random_field_grid_map2_d_8h_source.html#l00295">295</a> of file <a class="el" href="_c_random_field_grid_map2_d_8h_source.html">CRandomFieldGridMap2D.h</a>.</p>

</div>
</div>
<a class="anchor" id="ab03b2e1abfd332618cdf4c27f335d688"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::m_hasToRecoverMeanAndCov" ref="ab03b2e1abfd332618cdf4c27f335d688" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#ab03b2e1abfd332618cdf4c27f335d688">mrpt::slam::CRandomFieldGridMap2D::m_hasToRecoverMeanAndCov</a><code> [mutable, protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Only for the KF2 implementation. </p>

<p>Definition at line <a class="el" href="_c_random_field_grid_map2_d_8h_source.html#l00291">291</a> of file <a class="el" href="_c_random_field_grid_map2_d_8h_source.html">CRandomFieldGridMap2D.h</a>.</p>

</div>
</div>
<a class="anchor" id="afaaa020b87fd1dd95f86de61512faed3"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::m_insertOptions_common" ref="afaaa020b87fd1dd95f86de61512faed3" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structmrpt_1_1slam_1_1_c_random_field_grid_map2_d_1_1_t_insertion_options_common.html">TInsertionOptionsCommon</a>* <a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#afaaa020b87fd1dd95f86de61512faed3">mrpt::slam::CRandomFieldGridMap2D::m_insertOptions_common</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Common options to all random-field grid maps: pointer that is set to the derived-class instance of "insertOptions" upon construction of this class. </p>

<p>Definition at line <a class="el" href="_c_random_field_grid_map2_d_8h_source.html#l00276">276</a> of file <a class="el" href="_c_random_field_grid_map2_d_8h_source.html">CRandomFieldGridMap2D.h</a>.</p>

</div>
</div>
<a class="anchor" id="a44e35967e6dfa4a1d4ea877310c10ebb"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::m_map" ref="a44e35967e6dfa4a1d4ea877310c10ebb" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classstd_1_1vector.html">std::vector</a>&lt;T&gt; <a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#a44e35967e6dfa4a1d4ea877310c10ebb">mrpt::utils::CDynamicGrid::m_map</a><code> [protected, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The cells. </p>

<p>Definition at line <a class="el" href="_c_dynamic_grid_8h_source.html#l00049">49</a> of file <a class="el" href="_c_dynamic_grid_8h_source.html">CDynamicGrid.h</a>.</p>

</div>
</div>
<a class="anchor" id="ac708ec88c7f83b1f55292d338b4597d3"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::m_mapType" ref="ac708ec88c7f83b1f55292d338b4597d3" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a1bdb0ec64ac5ebc8f0b803b66151703a">TMapRepresentation</a> <a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#ac708ec88c7f83b1f55292d338b4597d3">mrpt::slam::CRandomFieldGridMap2D::m_mapType</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The map representation type of this map, as passed in the constructor. </p>

<p>Definition at line <a class="el" href="_c_random_field_grid_map2_d_8h_source.html#l00282">282</a> of file <a class="el" href="_c_random_field_grid_map2_d_8h_source.html">CRandomFieldGridMap2D.h</a>.</p>

</div>
</div>
<a class="anchor" id="a0d8fd68a29ddbdd0b4b635ef4a082357"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::m_resolution" ref="a0d8fd68a29ddbdd0b4b635ef4a082357" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">float <a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#a0d8fd68a29ddbdd0b4b635ef4a082357">mrpt::utils::CDynamicGrid::m_resolution</a><code> [protected, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_dynamic_grid_8h_source.html#l00055">55</a> of file <a class="el" href="_c_dynamic_grid_8h_source.html">CDynamicGrid.h</a>.</p>

</div>
</div>
<a class="anchor" id="a3c6d52443dc50cdcd4aac442df119231"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::m_size_x" ref="a3c6d52443dc50cdcd4aac442df119231" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">size_t <a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#a3c6d52443dc50cdcd4aac442df119231">mrpt::utils::CDynamicGrid::m_size_x</a><code> [protected, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_dynamic_grid_8h_source.html#l00056">56</a> of file <a class="el" href="_c_dynamic_grid_8h_source.html">CDynamicGrid.h</a>.</p>

</div>
</div>
<a class="anchor" id="aa60d1d0c9e789f4201cda9974dfe36df"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::m_size_y" ref="aa60d1d0c9e789f4201cda9974dfe36df" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">size_t <a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#aa60d1d0c9e789f4201cda9974dfe36df">mrpt::utils::CDynamicGrid::m_size_y</a><code> [protected, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_dynamic_grid_8h_source.html#l00056">56</a> of file <a class="el" href="_c_dynamic_grid_8h_source.html">CDynamicGrid.h</a>.</p>

</div>
</div>
<a class="anchor" id="a420cf955fe634e3c3809cce95c29b14f"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::m_stackedCov" ref="a420cf955fe634e3c3809cce95c29b14f" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_d.html">CMatrixD</a> <a class="el" href="classmrpt_1_1slam_1_1_c_random_field_grid_map2_d.html#a420cf955fe634e3c3809cce95c29b14f">mrpt::slam::CRandomFieldGridMap2D::m_stackedCov</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The compressed band diagonal matrix for the KF2 implementation. </p>
<p>The format is a Nx(W^2+2W+1) matrix, one row per cell in the grid map with the cross-covariances between each cell and half of the window around it in the grid. </p>

<p>Definition at line <a class="el" href="_c_random_field_grid_map2_d_8h_source.html#l00290">290</a> of file <a class="el" href="_c_random_field_grid_map2_d_8h_source.html">CRandomFieldGridMap2D.h</a>.</p>

</div>
</div>
<a class="anchor" id="ab7fa28466fd34353ec079990c2519103"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::m_x_max" ref="ab7fa28466fd34353ec079990c2519103" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">float <a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#ab7fa28466fd34353ec079990c2519103">mrpt::utils::CDynamicGrid::m_x_max</a><code> [protected, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_dynamic_grid_8h_source.html#l00054">54</a> of file <a class="el" href="_c_dynamic_grid_8h_source.html">CDynamicGrid.h</a>.</p>

</div>
</div>
<a class="anchor" id="a9aa912e950257c3a3a50d29f89485aee"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::m_x_min" ref="a9aa912e950257c3a3a50d29f89485aee" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">float <a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#a9aa912e950257c3a3a50d29f89485aee">mrpt::utils::CDynamicGrid::m_x_min</a><code> [protected, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_dynamic_grid_8h_source.html#l00054">54</a> of file <a class="el" href="_c_dynamic_grid_8h_source.html">CDynamicGrid.h</a>.</p>

</div>
</div>
<a class="anchor" id="a706b0fdf9622d791d34132403f9f8451"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::m_y_max" ref="a706b0fdf9622d791d34132403f9f8451" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">float <a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#a706b0fdf9622d791d34132403f9f8451">mrpt::utils::CDynamicGrid::m_y_max</a><code> [protected, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_dynamic_grid_8h_source.html#l00054">54</a> of file <a class="el" href="_c_dynamic_grid_8h_source.html">CDynamicGrid.h</a>.</p>

</div>
</div>
<a class="anchor" id="ac6e709aef8fdbb23f8c24ce61ae93a9e"></a><!-- doxytag: member="mrpt::slam::CRandomFieldGridMap2D::m_y_min" ref="ac6e709aef8fdbb23f8c24ce61ae93a9e" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">float <a class="el" href="classmrpt_1_1utils_1_1_c_dynamic_grid.html#ac6e709aef8fdbb23f8c24ce61ae93a9e">mrpt::utils::CDynamicGrid::m_y_min</a><code> [protected, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_dynamic_grid_8h_source.html#l00054">54</a> of file <a class="el" href="_c_dynamic_grid_8h_source.html">CDynamicGrid.h</a>.</p>

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