<?xml version='1.0' encoding='UTF-8' standalone='yes' ?>
<tagfile>
  <compound kind="file">
    <name>eig3.c</name>
    <path>/tmp/ws/src/gmcl/src/gmcl/pf/</path>
    <filename>eig3_8c.html</filename>
    <member kind="define">
      <type>#define</type>
      <name>MAX</name>
      <anchorfile>eig3_8c.html</anchorfile>
      <anchor>afa99ec4acc4ecb2dc3c2d05da15d0e3f</anchor>
      <arglist>(a, b)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>eigen_decomposition</name>
      <anchorfile>eig3_8c.html</anchorfile>
      <anchor>a7f1557b7e7c736dd14d99bf31f77df8f</anchor>
      <arglist>(double A[n][n], double V[n][n], double d[n])</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static double</type>
      <name>hypot2</name>
      <anchorfile>eig3_8c.html</anchorfile>
      <anchor>a15ea76429a93fe852559fae8cba4245b</anchor>
      <arglist>(double x, double y)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static void</type>
      <name>tql2</name>
      <anchorfile>eig3_8c.html</anchorfile>
      <anchor>af0dda992a0b1287f065cdb0d8e31229a</anchor>
      <arglist>(double V[n][n], double d[n], double e[n])</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static void</type>
      <name>tred2</name>
      <anchorfile>eig3_8c.html</anchorfile>
      <anchor>ae6a616c3110d66d701c2b35aec4de178</anchor>
      <arglist>(double V[n][n], double d[n], double e[n])</arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static int</type>
      <name>n</name>
      <anchorfile>eig3_8c.html</anchorfile>
      <anchor>a76f11d9a0a47b94f72c2d0e77fb32240</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>eig3.h</name>
    <path>/tmp/ws/src/gmcl/include/gmcl/pf/</path>
    <filename>eig3_8h.html</filename>
    <member kind="function">
      <type>void</type>
      <name>eigen_decomposition</name>
      <anchorfile>eig3_8h.html</anchorfile>
      <anchor>aa8be76822846425ea1d0aa20462fe4cc</anchor>
      <arglist>(double A[3][3], double V[3][3], double d[3])</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>gmcl_laser.cpp</name>
    <path>/tmp/ws/src/gmcl/src/gmcl/sensors/</path>
    <filename>gmcl__laser_8cpp.html</filename>
    <includes id="gmcl__laser_8h" name="gmcl_laser.h" local="yes" imported="no">gmcl/sensors/gmcl_laser.h</includes>
  </compound>
  <compound kind="file">
    <name>gmcl_laser.h</name>
    <path>/tmp/ws/src/gmcl/include/gmcl/sensors/</path>
    <filename>gmcl__laser_8h.html</filename>
    <includes id="gmcl__sensor_8h" name="gmcl_sensor.h" local="yes" imported="no">gmcl_sensor.h</includes>
    <includes id="map_8h" name="map.h" local="yes" imported="no">../map/map.h</includes>
    <class kind="class">gmcl::GMCLLaser</class>
    <class kind="class">gmcl::GMCLLaserData</class>
    <namespace>gmcl</namespace>
    <member kind="enumeration">
      <type></type>
      <name>laser_model_t</name>
      <anchorfile>namespacegmcl.html</anchorfile>
      <anchor>ab4815fed082aac0eaab50945c96b10f4</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>LASER_MODEL_BEAM</name>
      <anchorfile>namespacegmcl.html</anchorfile>
      <anchor>ab4815fed082aac0eaab50945c96b10f4a3e88f1fbad6085160e6bf4a0560c767c</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>LASER_MODEL_LIKELIHOOD_FIELD</name>
      <anchorfile>namespacegmcl.html</anchorfile>
      <anchor>ab4815fed082aac0eaab50945c96b10f4ab992f099258bc12fa9ac8eeb8d1da548</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>LASER_MODEL_LIKELIHOOD_FIELD_PROB</name>
      <anchorfile>namespacegmcl.html</anchorfile>
      <anchor>ab4815fed082aac0eaab50945c96b10f4a7707788b311efa7bd297f5d5409372f6</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>gmcl_node.cpp</name>
    <path>/tmp/ws/src/gmcl/src/</path>
    <filename>gmcl__node_8cpp.html</filename>
    <includes id="map_8h" name="map.h" local="yes" imported="no">gmcl/map/map.h</includes>
    <includes id="pf_8h" name="pf.h" local="yes" imported="no">gmcl/pf/pf.h</includes>
    <includes id="gmcl__odom_8h" name="gmcl_odom.h" local="yes" imported="no">gmcl/sensors/gmcl_odom.h</includes>
    <includes id="gmcl__laser_8h" name="gmcl_laser.h" local="yes" imported="no">gmcl/sensors/gmcl_laser.h</includes>
    <includes id="portable__utils_8hpp" name="portable_utils.hpp" local="yes" imported="no">portable_utils.hpp</includes>
    <class kind="struct">gmcl_hyp_t</class>
    <class kind="class">GmclNode</class>
    <member kind="define">
      <type>#define</type>
      <name>NEW_UNIFORM_SAMPLING</name>
      <anchorfile>gmcl__node_8cpp.html</anchorfile>
      <anchor>a75af3afadf140f0fa58181515af6ac07</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>USAGE</name>
      <anchorfile>gmcl__node_8cpp.html</anchorfile>
      <anchor>a56fe9bff0a1be75aae2da3e593053e2c</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" static="yes">
      <type>static double</type>
      <name>angle_diff</name>
      <anchorfile>gmcl__node_8cpp.html</anchorfile>
      <anchor>a4245ab25f5d431e40eafba39bc25ed1c</anchor>
      <arglist>(double a, double b)</arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>main</name>
      <anchorfile>gmcl__node_8cpp.html</anchorfile>
      <anchor>a3c04138a5bfe5d72780bb7e82a18e627</anchor>
      <arglist>(int argc, char **argv)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static double</type>
      <name>normalize</name>
      <anchorfile>gmcl__node_8cpp.html</anchorfile>
      <anchor>aa7a3531e33998b7883dec8951cff5ade</anchor>
      <arglist>(double z)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>sigintHandler</name>
      <anchorfile>gmcl__node_8cpp.html</anchorfile>
      <anchor>a458379afdbad052bb3077d6b425d2fee</anchor>
      <arglist>(int sig)</arglist>
    </member>
    <member kind="function">
      <type>std::string</type>
      <name>stripSlash</name>
      <anchorfile>gmcl__node_8cpp.html</anchorfile>
      <anchor>aaaf96e2284f11ea6e78e1956967aa503</anchor>
      <arglist>(const std::string &amp;in)</arglist>
    </member>
    <member kind="variable">
      <type>boost::shared_ptr&lt; GmclNode &gt;</type>
      <name>gmcl_node_ptr</name>
      <anchorfile>gmcl__node_8cpp.html</anchorfile>
      <anchor>a7f016ee5650b00e06f8925f87971f5df</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const std::string</type>
      <name>scan_topic_</name>
      <anchorfile>gmcl__node_8cpp.html</anchorfile>
      <anchor>a7210cd83e45f121f6f24e345dd68f3fa</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>gmcl_odom.cpp</name>
    <path>/tmp/ws/src/gmcl/src/gmcl/sensors/</path>
    <filename>gmcl__odom_8cpp.html</filename>
    <includes id="gmcl__odom_8h" name="gmcl_odom.h" local="yes" imported="no">gmcl/sensors/gmcl_odom.h</includes>
    <member kind="function" static="yes">
      <type>static double</type>
      <name>angle_diff</name>
      <anchorfile>gmcl__odom_8cpp.html</anchorfile>
      <anchor>a4245ab25f5d431e40eafba39bc25ed1c</anchor>
      <arglist>(double a, double b)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static double</type>
      <name>normalize</name>
      <anchorfile>gmcl__odom_8cpp.html</anchorfile>
      <anchor>aa7a3531e33998b7883dec8951cff5ade</anchor>
      <arglist>(double z)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>gmcl_odom.h</name>
    <path>/tmp/ws/src/gmcl/include/gmcl/sensors/</path>
    <filename>gmcl__odom_8h.html</filename>
    <includes id="gmcl__sensor_8h" name="gmcl_sensor.h" local="yes" imported="no">gmcl_sensor.h</includes>
    <includes id="pf__pdf_8h" name="pf_pdf.h" local="yes" imported="no">../pf/pf_pdf.h</includes>
    <class kind="class">gmcl::GMCLOdom</class>
    <class kind="class">gmcl::GMCLOdomData</class>
    <namespace>gmcl</namespace>
    <member kind="enumeration">
      <type></type>
      <name>odom_model_t</name>
      <anchorfile>namespacegmcl.html</anchorfile>
      <anchor>a404e88a20d2697fa5b2a6e0ed8571d2c</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>ODOM_MODEL_DIFF</name>
      <anchorfile>namespacegmcl.html</anchorfile>
      <anchor>a404e88a20d2697fa5b2a6e0ed8571d2cacd4d61e11d4595c41a00fb3d06f7d3d6</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>ODOM_MODEL_OMNI</name>
      <anchorfile>namespacegmcl.html</anchorfile>
      <anchor>a404e88a20d2697fa5b2a6e0ed8571d2ca8274019387e40c57cfedb92e1396b655</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>ODOM_MODEL_DIFF_CORRECTED</name>
      <anchorfile>namespacegmcl.html</anchorfile>
      <anchor>a404e88a20d2697fa5b2a6e0ed8571d2cac613043a91d0e89ee1584e963a6d279d</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>ODOM_MODEL_OMNI_CORRECTED</name>
      <anchorfile>namespacegmcl.html</anchorfile>
      <anchor>a404e88a20d2697fa5b2a6e0ed8571d2ca9aae48f1336347ffe19f4f3bba77b3ca</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>gmcl_sensor.cpp</name>
    <path>/tmp/ws/src/gmcl/src/gmcl/sensors/</path>
    <filename>gmcl__sensor_8cpp.html</filename>
    <includes id="gmcl__sensor_8h" name="gmcl_sensor.h" local="yes" imported="no">gmcl/sensors/gmcl_sensor.h</includes>
  </compound>
  <compound kind="file">
    <name>gmcl_sensor.h</name>
    <path>/tmp/ws/src/gmcl/include/gmcl/sensors/</path>
    <filename>gmcl__sensor_8h.html</filename>
    <includes id="pf_8h" name="pf.h" local="yes" imported="no">../pf/pf.h</includes>
    <class kind="class">gmcl::GMCLSensor</class>
    <class kind="class">gmcl::GMCLSensorData</class>
    <namespace>gmcl</namespace>
  </compound>
  <compound kind="file">
    <name>map.c</name>
    <path>/tmp/ws/src/gmcl/src/gmcl/map/</path>
    <filename>map_8c.html</filename>
    <includes id="map_8h" name="map.h" local="yes" imported="no">gmcl/map/map.h</includes>
    <member kind="function">
      <type>energy_map_t *</type>
      <name>energy_map_alloc</name>
      <anchorfile>map_8c.html</anchorfile>
      <anchor>a16e9c1cbbbd323d8f88410ff851ee603</anchor>
      <arglist>(map_t *map, double resoultion_x, double resoultion_y, size_t max_beams, double laser_min_range, double laser_max_range)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>energy_map_free</name>
      <anchorfile>map_8c.html</anchorfile>
      <anchor>aa24235d1d7dadca54ff3c6869bdc3884</anchor>
      <arglist>(energy_map_t *energy_map)</arglist>
    </member>
    <member kind="function">
      <type>map_t *</type>
      <name>map_alloc</name>
      <anchorfile>map_8c.html</anchorfile>
      <anchor>a5e13067d7a1585098333aad092bc4170</anchor>
      <arglist>(void)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>map_free</name>
      <anchorfile>map_8c.html</anchorfile>
      <anchor>ae24d01dffc5a376977089830b93c9254</anchor>
      <arglist>(map_t *map)</arglist>
    </member>
    <member kind="function">
      <type>map_cell_t *</type>
      <name>map_get_cell</name>
      <anchorfile>map_8c.html</anchorfile>
      <anchor>afc1f52c7eae799f87db2b9a18065575e</anchor>
      <arglist>(map_t *map, double ox, double oy, double oa)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>map.h</name>
    <path>/tmp/ws/src/gmcl/include/gmcl/map/</path>
    <filename>map_8h.html</filename>
    <includes id="pf_8h" name="pf.h" local="yes" imported="no">gmcl/pf/pf.h</includes>
    <class kind="struct">energy_map_t</class>
    <class kind="struct">energy_pose_t</class>
    <class kind="struct">lsensor_scan_t</class>
    <class kind="struct">map_cell_t</class>
    <class kind="struct">map_t</class>
    <member kind="define">
      <type>#define</type>
      <name>MAP_GXWX</name>
      <anchorfile>map_8h.html</anchorfile>
      <anchor>a79e45f847f78a785a458c466f21bff5b</anchor>
      <arglist>(map, x)</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>MAP_GYWY</name>
      <anchorfile>map_8h.html</anchorfile>
      <anchor>af8b13db2071d825ea39fac94a7ef7a9c</anchor>
      <arglist>(map, y)</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>MAP_INDEX</name>
      <anchorfile>map_8h.html</anchorfile>
      <anchor>ad88ccf81d3407428653a519b1f8cc8b9</anchor>
      <arglist>(map, i, j)</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>MAP_VALID</name>
      <anchorfile>map_8h.html</anchorfile>
      <anchor>a7757f56d022f38d91feb08ebcb6e3fa1</anchor>
      <arglist>(map, i, j)</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>MAP_WIFI_MAX_LEVELS</name>
      <anchorfile>map_8h.html</anchorfile>
      <anchor>a89bc37042bd96306a83b4a959f426f69</anchor>
      <arglist></arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>MAP_WXGX</name>
      <anchorfile>map_8h.html</anchorfile>
      <anchor>a4563de4a7b9a202482b497e254013266</anchor>
      <arglist>(map, i)</arglist>
    </member>
    <member kind="define">
      <type>#define</type>
      <name>MAP_WYGY</name>
      <anchorfile>map_8h.html</anchorfile>
      <anchor>a3d472d8b8c3d5e49be2a0243b1a36fbc</anchor>
      <arglist>(map, j)</arglist>
    </member>
    <member kind="function">
      <type>energy_map_t *</type>
      <name>energy_map_alloc</name>
      <anchorfile>map_8h.html</anchorfile>
      <anchor>a16e9c1cbbbd323d8f88410ff851ee603</anchor>
      <arglist>(map_t *map, double resoultion_x, double resoultion_y, size_t max_beams, double laser_min_range, double laser_max_range)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>energy_map_free</name>
      <anchorfile>map_8h.html</anchorfile>
      <anchor>aa24235d1d7dadca54ff3c6869bdc3884</anchor>
      <arglist>(energy_map_t *energy_map)</arglist>
    </member>
    <member kind="function">
      <type>map_t *</type>
      <name>map_alloc</name>
      <anchorfile>map_8h.html</anchorfile>
      <anchor>a5e13067d7a1585098333aad092bc4170</anchor>
      <arglist>(void)</arglist>
    </member>
    <member kind="function">
      <type>double</type>
      <name>map_calc_range</name>
      <anchorfile>map_8h.html</anchorfile>
      <anchor>aafef11c4d8efd07a4cb20bad5fc4bc83</anchor>
      <arglist>(map_t *map, double ox, double oy, double oa, double max_range)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>map_calc_SER</name>
      <anchorfile>map_8h.html</anchorfile>
      <anchor>a0de9b1476d4cd0058203b63938402cb3</anchor>
      <arglist>(energy_map_t *energy_map, lsensor_scan_t *laser_scan)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>map_clear_SER</name>
      <anchorfile>map_8h.html</anchorfile>
      <anchor>a99fef090ef0f19b57ebe45f60e2b910e</anchor>
      <arglist>(energy_map_t *energy_map)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>map_diff_SER</name>
      <anchorfile>map_8h.html</anchorfile>
      <anchor>aeb07ab6e41f91099928f2897e6cd1b9c</anchor>
      <arglist>(energy_map_t *energy_map)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>map_draw_cspace</name>
      <anchorfile>map_8h.html</anchorfile>
      <anchor>a2375a4a21f00ea7dd97be17d027adcbc</anchor>
      <arglist>(map_t *map, struct _rtk_fig_t *fig)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>map_draw_occ</name>
      <anchorfile>map_8h.html</anchorfile>
      <anchor>acc6b4aacd0e285e7866209c2dfba9a85</anchor>
      <arglist>(map_t *map, struct _rtk_fig_t *fig)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>map_draw_wifi</name>
      <anchorfile>map_8h.html</anchorfile>
      <anchor>a8cdf88d9cba5960b2e8f4a8a5c26f879</anchor>
      <arglist>(map_t *map, struct _rtk_fig_t *fig, int index)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>map_free</name>
      <anchorfile>map_8h.html</anchorfile>
      <anchor>ae24d01dffc5a376977089830b93c9254</anchor>
      <arglist>(map_t *map)</arglist>
    </member>
    <member kind="function">
      <type>map_cell_t *</type>
      <name>map_get_cell</name>
      <anchorfile>map_8h.html</anchorfile>
      <anchor>afc1f52c7eae799f87db2b9a18065575e</anchor>
      <arglist>(map_t *map, double ox, double oy, double oa)</arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>map_load_occ</name>
      <anchorfile>map_8h.html</anchorfile>
      <anchor>a8338e47e6501b9549ab165e2ac1522d8</anchor>
      <arglist>(map_t *map, const char *filename, double scale, int negate)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>map_update_cspace</name>
      <anchorfile>map_8h.html</anchorfile>
      <anchor>a7a2e9876667cad69c3b70881c1aaf1ac</anchor>
      <arglist>(map_t *map, double max_occ_dist)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>map_update_espace</name>
      <anchorfile>map_8h.html</anchorfile>
      <anchor>a8268c8f574283d2ee5c03e0da880fc4b</anchor>
      <arglist>(energy_map_t *energy_map, map_t *map, lsensor_scan_t *laser_scan)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>map_cspace.cpp</name>
    <path>/tmp/ws/src/gmcl/src/gmcl/map/</path>
    <filename>map__cspace_8cpp.html</filename>
    <includes id="map_8h" name="map.h" local="yes" imported="no">gmcl/map/map.h</includes>
    <class kind="class">CachedDistanceMap</class>
    <class kind="class">CellData</class>
    <member kind="function">
      <type>void</type>
      <name>enqueue</name>
      <anchorfile>map__cspace_8cpp.html</anchorfile>
      <anchor>a494ed82d2dc7c22daa80385f65351656</anchor>
      <arglist>(map_t *map, int i, int j, int src_i, int src_j, std::priority_queue&lt; CellData &gt; &amp;Q, CachedDistanceMap *cdm, unsigned char *marked)</arglist>
    </member>
    <member kind="function">
      <type>CachedDistanceMap *</type>
      <name>get_distance_map</name>
      <anchorfile>map__cspace_8cpp.html</anchorfile>
      <anchor>a66cf0ddd53f475cf732ac14d1456cab2</anchor>
      <arglist>(double scale, double max_dist)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>map_update_cspace</name>
      <anchorfile>map__cspace_8cpp.html</anchorfile>
      <anchor>a7a2e9876667cad69c3b70881c1aaf1ac</anchor>
      <arglist>(map_t *map, double max_occ_dist)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>operator&lt;</name>
      <anchorfile>map__cspace_8cpp.html</anchorfile>
      <anchor>a19c44c0680f5e1f23a261fad06dfaedd</anchor>
      <arglist>(const CellData &amp;a, const CellData &amp;b)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>map_draw.c</name>
    <path>/tmp/ws/src/gmcl/src/gmcl/map/</path>
    <filename>map__draw_8c.html</filename>
  </compound>
  <compound kind="file">
    <name>map_espace.cpp</name>
    <path>/tmp/ws/src/gmcl/src/gmcl/map/</path>
    <filename>map__espace_8cpp.html</filename>
    <includes id="map_8h" name="map.h" local="yes" imported="no">gmcl/map/map.h</includes>
    <includes id="pf_8h" name="pf.h" local="yes" imported="no">gmcl/pf/pf.h</includes>
    <member kind="function">
      <type>void</type>
      <name>map_calc_SER</name>
      <anchorfile>map__espace_8cpp.html</anchorfile>
      <anchor>a0de9b1476d4cd0058203b63938402cb3</anchor>
      <arglist>(energy_map_t *energy_map, lsensor_scan_t *laser_scan)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>map_clear_SER</name>
      <anchorfile>map__espace_8cpp.html</anchorfile>
      <anchor>a99fef090ef0f19b57ebe45f60e2b910e</anchor>
      <arglist>(energy_map_t *energy_map)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>map_diff_SER</name>
      <anchorfile>map__espace_8cpp.html</anchorfile>
      <anchor>aeb07ab6e41f91099928f2897e6cd1b9c</anchor>
      <arglist>(energy_map_t *energy_map)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>map_update_espace</name>
      <anchorfile>map__espace_8cpp.html</anchorfile>
      <anchor>a8268c8f574283d2ee5c03e0da880fc4b</anchor>
      <arglist>(energy_map_t *energy_map, map_t *map, lsensor_scan_t *laser_scan)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>map_range.c</name>
    <path>/tmp/ws/src/gmcl/src/gmcl/map/</path>
    <filename>map__range_8c.html</filename>
    <includes id="map_8h" name="map.h" local="yes" imported="no">gmcl/map/map.h</includes>
    <member kind="function">
      <type>double</type>
      <name>map_calc_range</name>
      <anchorfile>map__range_8c.html</anchorfile>
      <anchor>aafef11c4d8efd07a4cb20bad5fc4bc83</anchor>
      <arglist>(map_t *map, double ox, double oy, double oa, double max_range)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>map_store.c</name>
    <path>/tmp/ws/src/gmcl/src/gmcl/map/</path>
    <filename>map__store_8c.html</filename>
    <includes id="map_8h" name="map.h" local="yes" imported="no">gmcl/map/map.h</includes>
    <member kind="function">
      <type>int</type>
      <name>map_load_occ</name>
      <anchorfile>map__store_8c.html</anchorfile>
      <anchor>a8338e47e6501b9549ab165e2ac1522d8</anchor>
      <arglist>(map_t *map, const char *filename, double scale, int negate)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>pf.c</name>
    <path>/tmp/ws/src/gmcl/src/gmcl/pf/</path>
    <filename>pf_8c.html</filename>
    <includes id="map_8h" name="map.h" local="yes" imported="no">gmcl/map/map.h</includes>
    <includes id="pf_8h" name="pf.h" local="yes" imported="no">gmcl/pf/pf.h</includes>
    <includes id="pf__pdf_8h" name="pf_pdf.h" local="yes" imported="no">gmcl/pf/pf_pdf.h</includes>
    <includes id="pf__kdtree_8h" name="pf_kdtree.h" local="yes" imported="no">gmcl/pf/pf_kdtree.h</includes>
    <includes id="portable__utils_8hpp" name="portable_utils.hpp" local="yes" imported="no">portable_utils.hpp</includes>
    <member kind="function">
      <type>void</type>
      <name>copy_set</name>
      <anchorfile>pf_8c.html</anchorfile>
      <anchor>a693660604e12992236e660b466ce76c2</anchor>
      <arglist>(pf_sample_set_t *set_a, pf_sample_set_t *set_b)</arglist>
    </member>
    <member kind="function">
      <type>pf_t *</type>
      <name>pf_alloc</name>
      <anchorfile>pf_8c.html</anchorfile>
      <anchor>abf6afc5325439a2243f25e74a7fd887a</anchor>
      <arglist>(int min_samples, int max_samples, int N_aux_particles, double alpha_slow, double alpha_fast, double crossover_alpha, double mutation_prob, pf_init_model_fn_t random_pose_fn, void *random_pose_data, void *e_random_pose_data)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_cluster_stats</name>
      <anchorfile>pf_8c.html</anchorfile>
      <anchor>af2ae5d54790e0aca689b71a16fe4c7cb</anchor>
      <arglist>(pf_t *pf, pf_sample_set_t *set)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_free</name>
      <anchorfile>pf_8c.html</anchorfile>
      <anchor>a340271a4464113cbe3c4448d514b23c7</anchor>
      <arglist>(pf_t *pf)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_get_cep_stats</name>
      <anchorfile>pf_8c.html</anchorfile>
      <anchor>abdccd5641a5c2a1ff66d4fe80e723bd2</anchor>
      <arglist>(pf_t *pf, pf_vector_t *mean, double *var)</arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>pf_get_cluster_stats</name>
      <anchorfile>pf_8c.html</anchorfile>
      <anchor>af6717acdd4070ef6f7385cb06fd32dd4</anchor>
      <arglist>(pf_t *pf, int clabel, double *weight, pf_vector_t *mean, pf_matrix_t *cov)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_init</name>
      <anchorfile>pf_8c.html</anchorfile>
      <anchor>aa158e637ec3c10493f2729f063146944</anchor>
      <arglist>(pf_t *pf, pf_vector_t mean, pf_matrix_t cov)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_init_converged</name>
      <anchorfile>pf_8c.html</anchorfile>
      <anchor>a8093be5fa7501f1a8e903c43b5705be0</anchor>
      <arglist>(pf_t *pf)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_init_model</name>
      <anchorfile>pf_8c.html</anchorfile>
      <anchor>ae7540b7ad97193caa79a4f76afdcbf3f</anchor>
      <arglist>(pf_t *pf, pf_init_model_fn_t init_fn, void *init_data, void *e_init_data)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_normlize_weight</name>
      <anchorfile>pf_8c.html</anchorfile>
      <anchor>a9468ce1f7c942a3395eba2846e631235</anchor>
      <arglist>(pf_t *pf)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static int</type>
      <name>pf_resample_limit</name>
      <anchorfile>pf_8c.html</anchorfile>
      <anchor>aa28e373c884f68244531f1dcbb086b8c</anchor>
      <arglist>(pf_t *pf, int k)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_set_model_type</name>
      <anchorfile>pf_8c.html</anchorfile>
      <anchor>a4aea7cc6e0c42825cc8457bcdb28d0ac</anchor>
      <arglist>(pf_t *pf, pf_model_type *pf_model)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_set_selective_resampling</name>
      <anchorfile>pf_8c.html</anchorfile>
      <anchor>adbdbc82024445c0a81904c3abb8c2dce</anchor>
      <arglist>(pf_t *pf, int selective_resampling)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_update_action</name>
      <anchorfile>pf_8c.html</anchorfile>
      <anchor>a241694fcc56ec6459fef6acc68996eb8</anchor>
      <arglist>(pf_t *pf, pf_action_model_fn_t action_fn, void *action_data)</arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>pf_update_converged</name>
      <anchorfile>pf_8c.html</anchorfile>
      <anchor>a6caa24ec973890583e691fc8616e10e0</anchor>
      <arglist>(pf_t *pf)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_update_crossover_mutation</name>
      <anchorfile>pf_8c.html</anchorfile>
      <anchor>a665a6882ddd3be50c1e1bdba00110430</anchor>
      <arglist>(pf_t *pf, pf_reupdate_sensor_fn_t laser_fn, void *laser_data)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_update_resample</name>
      <anchorfile>pf_8c.html</anchorfile>
      <anchor>a3e18db8990238fb9edc912009f64e3db</anchor>
      <arglist>(pf_t *pf)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_update_sensor</name>
      <anchorfile>pf_8c.html</anchorfile>
      <anchor>a46da114fe914e5416e14812096a8e5a5</anchor>
      <arglist>(pf_t *pf, pf_laser_model_fn_t laser_fn, void *laser_data)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>pf.h</name>
    <path>/tmp/ws/src/gmcl/include/gmcl/pf/</path>
    <filename>pf_8h.html</filename>
    <includes id="pf__vector_8h" name="pf_vector.h" local="yes" imported="no">pf_vector.h</includes>
    <includes id="pf__kdtree_8h" name="pf_kdtree.h" local="yes" imported="no">pf_kdtree.h</includes>
    <class kind="struct">_pf_model_type</class>
    <class kind="struct">_pf_sample_set_t</class>
    <class kind="struct">_pf_t</class>
    <class kind="struct">pf_cluster_t</class>
    <class kind="struct">pf_sample_t</class>
    <member kind="typedef">
      <type>void(*</type>
      <name>pf_action_model_fn_t</name>
      <anchorfile>pf_8h.html</anchorfile>
      <anchor>a8e8299c4c339c8eacc4a5a6f536313d9</anchor>
      <arglist>)(void *action_data, struct _pf_sample_set_t *set)</arglist>
    </member>
    <member kind="typedef">
      <type>pf_vector_t(*</type>
      <name>pf_init_model_fn_t</name>
      <anchorfile>pf_8h.html</anchorfile>
      <anchor>a0a526d38ad0eaa7c9bbc578c7017696e</anchor>
      <arglist>)(struct _pf_t *pf, void *init_data, void *e_init_data)</arglist>
    </member>
    <member kind="typedef">
      <type>void(*</type>
      <name>pf_laser_model_fn_t</name>
      <anchorfile>pf_8h.html</anchorfile>
      <anchor>a377d744d2bb12cc737ef6295fcf8ba35</anchor>
      <arglist>)(void *laser_data, struct _pf_sample_set_t *set)</arglist>
    </member>
    <member kind="typedef">
      <type>struct _pf_model_type</type>
      <name>pf_model_type</name>
      <anchorfile>pf_8h.html</anchorfile>
      <anchor>aeadd83a44940f002bbb735ab54c72411</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>void(*</type>
      <name>pf_reupdate_sensor_fn_t</name>
      <anchorfile>pf_8h.html</anchorfile>
      <anchor>ad162cd5d6af53b64180562a7c645fe05</anchor>
      <arglist>)(struct _pf_t *pf, void *laser_data)</arglist>
    </member>
    <member kind="typedef">
      <type>struct _pf_sample_set_t</type>
      <name>pf_sample_set_t</name>
      <anchorfile>pf_8h.html</anchorfile>
      <anchor>a3075ae6e6dffed65457385e575f889c4</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>struct _pf_t</type>
      <name>pf_t</name>
      <anchorfile>pf_8h.html</anchorfile>
      <anchor>a948299995556a7ce16489221a916997f</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>pf_t *</type>
      <name>pf_alloc</name>
      <anchorfile>pf_8h.html</anchorfile>
      <anchor>abf6afc5325439a2243f25e74a7fd887a</anchor>
      <arglist>(int min_samples, int max_samples, int N_aux_particles, double alpha_slow, double alpha_fast, double crossover_alpha, double mutation_prob, pf_init_model_fn_t random_pose_fn, void *random_pose_data, void *e_random_pose_data)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_cluster_stats</name>
      <anchorfile>pf_8h.html</anchorfile>
      <anchor>af2ae5d54790e0aca689b71a16fe4c7cb</anchor>
      <arglist>(pf_t *pf, pf_sample_set_t *set)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_copy_set</name>
      <anchorfile>pf_8h.html</anchorfile>
      <anchor>aa04ad7b926ac346cd2c15a0ef66a4835</anchor>
      <arglist>(pf_sample_set_t *set_a, pf_sample_set_t *set_b)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_draw_cep_stats</name>
      <anchorfile>pf_8h.html</anchorfile>
      <anchor>aa6eb2cdfec481645840b74703a82d416</anchor>
      <arglist>(pf_t *pf, struct _rtk_fig_t *fig)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_draw_cluster_stats</name>
      <anchorfile>pf_8h.html</anchorfile>
      <anchor>ac98d0b8f0a0711c7db5e7420705c9eda</anchor>
      <arglist>(pf_t *pf, struct _rtk_fig_t *fig)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_draw_hist</name>
      <anchorfile>pf_8h.html</anchorfile>
      <anchor>a1809f29acf541a1bbad75d65ee3a619f</anchor>
      <arglist>(pf_t *pf, struct _rtk_fig_t *fig)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_draw_samples</name>
      <anchorfile>pf_8h.html</anchorfile>
      <anchor>a633c764333b25a6cbcee8309003bc199</anchor>
      <arglist>(pf_t *pf, struct _rtk_fig_t *fig, int max_samples)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_free</name>
      <anchorfile>pf_8h.html</anchorfile>
      <anchor>a340271a4464113cbe3c4448d514b23c7</anchor>
      <arglist>(pf_t *pf)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_get_cep_stats</name>
      <anchorfile>pf_8h.html</anchorfile>
      <anchor>abdccd5641a5c2a1ff66d4fe80e723bd2</anchor>
      <arglist>(pf_t *pf, pf_vector_t *mean, double *var)</arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>pf_get_cluster_stats</name>
      <anchorfile>pf_8h.html</anchorfile>
      <anchor>a818930949b3b6d5afd4d216bb69e6e78</anchor>
      <arglist>(pf_t *pf, int cluster, double *weight, pf_vector_t *mean, pf_matrix_t *cov)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_init</name>
      <anchorfile>pf_8h.html</anchorfile>
      <anchor>aa158e637ec3c10493f2729f063146944</anchor>
      <arglist>(pf_t *pf, pf_vector_t mean, pf_matrix_t cov)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_init_converged</name>
      <anchorfile>pf_8h.html</anchorfile>
      <anchor>a8093be5fa7501f1a8e903c43b5705be0</anchor>
      <arglist>(pf_t *pf)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_init_model</name>
      <anchorfile>pf_8h.html</anchorfile>
      <anchor>ae7540b7ad97193caa79a4f76afdcbf3f</anchor>
      <arglist>(pf_t *pf, pf_init_model_fn_t init_fn, void *init_data, void *e_init_data)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_normlize_weight</name>
      <anchorfile>pf_8h.html</anchorfile>
      <anchor>a9468ce1f7c942a3395eba2846e631235</anchor>
      <arglist>(pf_t *pf)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_set_model_type</name>
      <anchorfile>pf_8h.html</anchorfile>
      <anchor>a5f12c8342d37737b354f9a511b59dfbd</anchor>
      <arglist>(pf_t *pf, pf_model_type *pf_model_)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_set_selective_resampling</name>
      <anchorfile>pf_8h.html</anchorfile>
      <anchor>adbdbc82024445c0a81904c3abb8c2dce</anchor>
      <arglist>(pf_t *pf, int selective_resampling)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_update_action</name>
      <anchorfile>pf_8h.html</anchorfile>
      <anchor>a241694fcc56ec6459fef6acc68996eb8</anchor>
      <arglist>(pf_t *pf, pf_action_model_fn_t action_fn, void *action_data)</arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>pf_update_converged</name>
      <anchorfile>pf_8h.html</anchorfile>
      <anchor>a6caa24ec973890583e691fc8616e10e0</anchor>
      <arglist>(pf_t *pf)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_update_crossover_mutation</name>
      <anchorfile>pf_8h.html</anchorfile>
      <anchor>a665a6882ddd3be50c1e1bdba00110430</anchor>
      <arglist>(pf_t *pf, pf_reupdate_sensor_fn_t laser_fn, void *laser_data)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_update_resample</name>
      <anchorfile>pf_8h.html</anchorfile>
      <anchor>a3e18db8990238fb9edc912009f64e3db</anchor>
      <arglist>(pf_t *pf)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_update_sensor</name>
      <anchorfile>pf_8h.html</anchorfile>
      <anchor>a46da114fe914e5416e14812096a8e5a5</anchor>
      <arglist>(pf_t *pf, pf_laser_model_fn_t laser_fn, void *laser_data)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>pf_draw.c</name>
    <path>/tmp/ws/src/gmcl/src/gmcl/pf/</path>
    <filename>pf__draw_8c.html</filename>
  </compound>
  <compound kind="file">
    <name>pf_kdtree.c</name>
    <path>/tmp/ws/src/gmcl/src/gmcl/pf/</path>
    <filename>pf__kdtree_8c.html</filename>
    <includes id="pf__vector_8h" name="pf_vector.h" local="yes" imported="no">gmcl/pf/pf_vector.h</includes>
    <includes id="pf__kdtree_8h" name="pf_kdtree.h" local="yes" imported="no">gmcl/pf/pf_kdtree.h</includes>
    <member kind="function">
      <type>pf_kdtree_t *</type>
      <name>pf_kdtree_alloc</name>
      <anchorfile>pf__kdtree_8c.html</anchorfile>
      <anchor>aaf8d3a461e5d387a34b43b2865f439a0</anchor>
      <arglist>(int max_size)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_kdtree_clear</name>
      <anchorfile>pf__kdtree_8c.html</anchorfile>
      <anchor>afc558bc7d59167c6d5ebcd23b06c5129</anchor>
      <arglist>(pf_kdtree_t *self)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_kdtree_cluster</name>
      <anchorfile>pf__kdtree_8c.html</anchorfile>
      <anchor>a8757b78853ad243c2b823b8560c1027a</anchor>
      <arglist>(pf_kdtree_t *self)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static void</type>
      <name>pf_kdtree_cluster_node</name>
      <anchorfile>pf__kdtree_8c.html</anchorfile>
      <anchor>aafcf7661b12063d66b1827feac1d36ad</anchor>
      <arglist>(pf_kdtree_t *self, pf_kdtree_node_t *node, int depth)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static int</type>
      <name>pf_kdtree_equal</name>
      <anchorfile>pf__kdtree_8c.html</anchorfile>
      <anchor>a1472252390e49c0ed32bc5e0c446a62a</anchor>
      <arglist>(pf_kdtree_t *self, int key_a[], int key_b[])</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static pf_kdtree_node_t *</type>
      <name>pf_kdtree_find_node</name>
      <anchorfile>pf__kdtree_8c.html</anchorfile>
      <anchor>a430a4635925d5966adac3eff0802fb34</anchor>
      <arglist>(pf_kdtree_t *self, pf_kdtree_node_t *node, int key[])</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_kdtree_free</name>
      <anchorfile>pf__kdtree_8c.html</anchorfile>
      <anchor>ac1f471ee15033bbe30a96abe56f1e072</anchor>
      <arglist>(pf_kdtree_t *self)</arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>pf_kdtree_get_cluster</name>
      <anchorfile>pf__kdtree_8c.html</anchorfile>
      <anchor>a84700cffabc8cd46af8145cb215fbc56</anchor>
      <arglist>(pf_kdtree_t *self, pf_vector_t pose)</arglist>
    </member>
    <member kind="function">
      <type>double</type>
      <name>pf_kdtree_get_prob</name>
      <anchorfile>pf__kdtree_8c.html</anchorfile>
      <anchor>a0f854496ce2d903ba3cc0efd7577afce</anchor>
      <arglist>(pf_kdtree_t *self, pf_vector_t pose)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_kdtree_insert</name>
      <anchorfile>pf__kdtree_8c.html</anchorfile>
      <anchor>a25bb0665463cacfc166b50be94079940</anchor>
      <arglist>(pf_kdtree_t *self, pf_vector_t pose, double value)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static pf_kdtree_node_t *</type>
      <name>pf_kdtree_insert_node</name>
      <anchorfile>pf__kdtree_8c.html</anchorfile>
      <anchor>abafa1da6f9d51b9ac5397071d2801f52</anchor>
      <arglist>(pf_kdtree_t *self, pf_kdtree_node_t *parent, pf_kdtree_node_t *node, int key[], double value)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>pf_kdtree.h</name>
    <path>/tmp/ws/src/gmcl/include/gmcl/pf/</path>
    <filename>pf__kdtree_8h.html</filename>
    <class kind="struct">pf_kdtree_node</class>
    <class kind="struct">pf_kdtree_t</class>
    <member kind="typedef">
      <type>struct pf_kdtree_node</type>
      <name>pf_kdtree_node_t</name>
      <anchorfile>pf__kdtree_8h.html</anchorfile>
      <anchor>a05fb8223798c8ce1e5d56e4bf6756ee2</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>pf_kdtree_t *</type>
      <name>pf_kdtree_alloc</name>
      <anchorfile>pf__kdtree_8h.html</anchorfile>
      <anchor>aaf8d3a461e5d387a34b43b2865f439a0</anchor>
      <arglist>(int max_size)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_kdtree_clear</name>
      <anchorfile>pf__kdtree_8h.html</anchorfile>
      <anchor>afc558bc7d59167c6d5ebcd23b06c5129</anchor>
      <arglist>(pf_kdtree_t *self)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_kdtree_cluster</name>
      <anchorfile>pf__kdtree_8h.html</anchorfile>
      <anchor>a8757b78853ad243c2b823b8560c1027a</anchor>
      <arglist>(pf_kdtree_t *self)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_kdtree_free</name>
      <anchorfile>pf__kdtree_8h.html</anchorfile>
      <anchor>ac1f471ee15033bbe30a96abe56f1e072</anchor>
      <arglist>(pf_kdtree_t *self)</arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>pf_kdtree_get_cluster</name>
      <anchorfile>pf__kdtree_8h.html</anchorfile>
      <anchor>a84700cffabc8cd46af8145cb215fbc56</anchor>
      <arglist>(pf_kdtree_t *self, pf_vector_t pose)</arglist>
    </member>
    <member kind="function">
      <type>double</type>
      <name>pf_kdtree_get_prob</name>
      <anchorfile>pf__kdtree_8h.html</anchorfile>
      <anchor>a0f854496ce2d903ba3cc0efd7577afce</anchor>
      <arglist>(pf_kdtree_t *self, pf_vector_t pose)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_kdtree_insert</name>
      <anchorfile>pf__kdtree_8h.html</anchorfile>
      <anchor>a25bb0665463cacfc166b50be94079940</anchor>
      <arglist>(pf_kdtree_t *self, pf_vector_t pose, double value)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>pf_pdf.c</name>
    <path>/tmp/ws/src/gmcl/src/gmcl/pf/</path>
    <filename>pf__pdf_8c.html</filename>
    <includes id="pf__pdf_8h" name="pf_pdf.h" local="yes" imported="no">gmcl/pf/pf_pdf.h</includes>
    <includes id="portable__utils_8hpp" name="portable_utils.hpp" local="yes" imported="no">portable_utils.hpp</includes>
    <member kind="function">
      <type>pf_pdf_gaussian_t *</type>
      <name>pf_pdf_gaussian_alloc</name>
      <anchorfile>pf__pdf_8c.html</anchorfile>
      <anchor>a8c9d577c5d330927252097e3eb119583</anchor>
      <arglist>(pf_vector_t x, pf_matrix_t cx)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_pdf_gaussian_free</name>
      <anchorfile>pf__pdf_8c.html</anchorfile>
      <anchor>a6a02cc46438e272cbb9d5f80ef4581e9</anchor>
      <arglist>(pf_pdf_gaussian_t *pdf)</arglist>
    </member>
    <member kind="function">
      <type>pf_vector_t</type>
      <name>pf_pdf_gaussian_sample</name>
      <anchorfile>pf__pdf_8c.html</anchorfile>
      <anchor>ae5c36efbbf482e91fe7ec9fa31747770</anchor>
      <arglist>(pf_pdf_gaussian_t *pdf)</arglist>
    </member>
    <member kind="function">
      <type>double</type>
      <name>pf_ran_gaussian</name>
      <anchorfile>pf__pdf_8c.html</anchorfile>
      <anchor>abdfc0a4cb6ab83434b698504774ef885</anchor>
      <arglist>(double sigma)</arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static unsigned int</type>
      <name>pf_pdf_seed</name>
      <anchorfile>pf__pdf_8c.html</anchorfile>
      <anchor>a00b523609f66297f8b118a254e284387</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>pf_pdf.h</name>
    <path>/tmp/ws/src/gmcl/include/gmcl/pf/</path>
    <filename>pf__pdf_8h.html</filename>
    <includes id="pf__vector_8h" name="pf_vector.h" local="yes" imported="no">pf_vector.h</includes>
    <class kind="struct">pf_pdf_gaussian_t</class>
    <member kind="function">
      <type>pf_pdf_gaussian_t *</type>
      <name>pf_pdf_gaussian_alloc</name>
      <anchorfile>pf__pdf_8h.html</anchorfile>
      <anchor>a8c9d577c5d330927252097e3eb119583</anchor>
      <arglist>(pf_vector_t x, pf_matrix_t cx)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_pdf_gaussian_free</name>
      <anchorfile>pf__pdf_8h.html</anchorfile>
      <anchor>a6a02cc46438e272cbb9d5f80ef4581e9</anchor>
      <arglist>(pf_pdf_gaussian_t *pdf)</arglist>
    </member>
    <member kind="function">
      <type>pf_vector_t</type>
      <name>pf_pdf_gaussian_sample</name>
      <anchorfile>pf__pdf_8h.html</anchorfile>
      <anchor>ae5c36efbbf482e91fe7ec9fa31747770</anchor>
      <arglist>(pf_pdf_gaussian_t *pdf)</arglist>
    </member>
    <member kind="function">
      <type>double</type>
      <name>pf_ran_gaussian</name>
      <anchorfile>pf__pdf_8h.html</anchorfile>
      <anchor>abdfc0a4cb6ab83434b698504774ef885</anchor>
      <arglist>(double sigma)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>pf_vector.c</name>
    <path>/tmp/ws/src/gmcl/src/gmcl/pf/</path>
    <filename>pf__vector_8c.html</filename>
    <includes id="pf__vector_8h" name="pf_vector.h" local="yes" imported="no">gmcl/pf/pf_vector.h</includes>
    <includes id="eig3_8h" name="eig3.h" local="yes" imported="no">gmcl/pf/eig3.h</includes>
    <member kind="function">
      <type>int</type>
      <name>pf_matrix_finite</name>
      <anchorfile>pf__vector_8c.html</anchorfile>
      <anchor>aed54fc5a3049ab08b50346e48bbf133f</anchor>
      <arglist>(pf_matrix_t a)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_matrix_fprintf</name>
      <anchorfile>pf__vector_8c.html</anchorfile>
      <anchor>aa22be9ace91468ebf9c8d9070304a79a</anchor>
      <arglist>(pf_matrix_t a, FILE *file, const char *fmt)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_matrix_unitary</name>
      <anchorfile>pf__vector_8c.html</anchorfile>
      <anchor>ad944a39674d5646c0b5c9924ae70dbab</anchor>
      <arglist>(pf_matrix_t *r, pf_matrix_t *d, pf_matrix_t a)</arglist>
    </member>
    <member kind="function">
      <type>pf_matrix_t</type>
      <name>pf_matrix_zero</name>
      <anchorfile>pf__vector_8c.html</anchorfile>
      <anchor>a01593a3f7444c9a71fd6d4576725d47a</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>pf_vector_t</type>
      <name>pf_vector_add</name>
      <anchorfile>pf__vector_8c.html</anchorfile>
      <anchor>a2051f656596498eac7fdfb91ba63c4cc</anchor>
      <arglist>(pf_vector_t a, pf_vector_t b)</arglist>
    </member>
    <member kind="function">
      <type>pf_vector_t</type>
      <name>pf_vector_coord_add</name>
      <anchorfile>pf__vector_8c.html</anchorfile>
      <anchor>afe6b50abf661ef62686a25eccfb406e1</anchor>
      <arglist>(pf_vector_t a, pf_vector_t b)</arglist>
    </member>
    <member kind="function">
      <type>pf_vector_t</type>
      <name>pf_vector_coord_sub</name>
      <anchorfile>pf__vector_8c.html</anchorfile>
      <anchor>a2aab3aeff86a6459df4aaf510b58977a</anchor>
      <arglist>(pf_vector_t a, pf_vector_t b)</arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>pf_vector_finite</name>
      <anchorfile>pf__vector_8c.html</anchorfile>
      <anchor>ad9d8ddf05b11454accf79e19ff59e81e</anchor>
      <arglist>(pf_vector_t a)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_vector_fprintf</name>
      <anchorfile>pf__vector_8c.html</anchorfile>
      <anchor>a9c41679324d1baa74c013fc1f0f03db4</anchor>
      <arglist>(pf_vector_t a, FILE *file, const char *fmt)</arglist>
    </member>
    <member kind="function">
      <type>pf_vector_t</type>
      <name>pf_vector_sub</name>
      <anchorfile>pf__vector_8c.html</anchorfile>
      <anchor>a247856e0c7581f87362cb7b044e812ef</anchor>
      <arglist>(pf_vector_t a, pf_vector_t b)</arglist>
    </member>
    <member kind="function">
      <type>pf_vector_t</type>
      <name>pf_vector_zero</name>
      <anchorfile>pf__vector_8c.html</anchorfile>
      <anchor>ad2d4a1744eaacdc7b4525a019a3bbcff</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>pf_vector.h</name>
    <path>/tmp/ws/src/gmcl/include/gmcl/pf/</path>
    <filename>pf__vector_8h.html</filename>
    <class kind="struct">pf_matrix_t</class>
    <class kind="struct">pf_vector_t</class>
    <member kind="function">
      <type>int</type>
      <name>pf_matrix_finite</name>
      <anchorfile>pf__vector_8h.html</anchorfile>
      <anchor>aed54fc5a3049ab08b50346e48bbf133f</anchor>
      <arglist>(pf_matrix_t a)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_matrix_fprintf</name>
      <anchorfile>pf__vector_8h.html</anchorfile>
      <anchor>af4f7cc94a1ffbaf84bdb95202737b0a1</anchor>
      <arglist>(pf_matrix_t s, FILE *file, const char *fmt)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_matrix_unitary</name>
      <anchorfile>pf__vector_8h.html</anchorfile>
      <anchor>ad944a39674d5646c0b5c9924ae70dbab</anchor>
      <arglist>(pf_matrix_t *r, pf_matrix_t *d, pf_matrix_t a)</arglist>
    </member>
    <member kind="function">
      <type>pf_matrix_t</type>
      <name>pf_matrix_zero</name>
      <anchorfile>pf__vector_8h.html</anchorfile>
      <anchor>a01593a3f7444c9a71fd6d4576725d47a</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>pf_vector_t</type>
      <name>pf_vector_add</name>
      <anchorfile>pf__vector_8h.html</anchorfile>
      <anchor>a2051f656596498eac7fdfb91ba63c4cc</anchor>
      <arglist>(pf_vector_t a, pf_vector_t b)</arglist>
    </member>
    <member kind="function">
      <type>pf_vector_t</type>
      <name>pf_vector_coord_add</name>
      <anchorfile>pf__vector_8h.html</anchorfile>
      <anchor>afe6b50abf661ef62686a25eccfb406e1</anchor>
      <arglist>(pf_vector_t a, pf_vector_t b)</arglist>
    </member>
    <member kind="function">
      <type>pf_vector_t</type>
      <name>pf_vector_coord_sub</name>
      <anchorfile>pf__vector_8h.html</anchorfile>
      <anchor>a2aab3aeff86a6459df4aaf510b58977a</anchor>
      <arglist>(pf_vector_t a, pf_vector_t b)</arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>pf_vector_finite</name>
      <anchorfile>pf__vector_8h.html</anchorfile>
      <anchor>ad9d8ddf05b11454accf79e19ff59e81e</anchor>
      <arglist>(pf_vector_t a)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pf_vector_fprintf</name>
      <anchorfile>pf__vector_8h.html</anchorfile>
      <anchor>afa2e4e1893c60a4c4f1608e8583ee35f</anchor>
      <arglist>(pf_vector_t s, FILE *file, const char *fmt)</arglist>
    </member>
    <member kind="function">
      <type>pf_vector_t</type>
      <name>pf_vector_sub</name>
      <anchorfile>pf__vector_8h.html</anchorfile>
      <anchor>a247856e0c7581f87362cb7b044e812ef</anchor>
      <arglist>(pf_vector_t a, pf_vector_t b)</arglist>
    </member>
    <member kind="function">
      <type>pf_vector_t</type>
      <name>pf_vector_zero</name>
      <anchorfile>pf__vector_8h.html</anchorfile>
      <anchor>ad2d4a1744eaacdc7b4525a019a3bbcff</anchor>
      <arglist>()</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>portable_utils.hpp</name>
    <path>/tmp/ws/src/gmcl/src/include/</path>
    <filename>portable__utils_8hpp.html</filename>
    <member kind="function" static="yes">
      <type>static double</type>
      <name>drand48</name>
      <anchorfile>portable__utils_8hpp.html</anchorfile>
      <anchor>a134edc5d76023c865d406094d70a9764</anchor>
      <arglist>(void)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static void</type>
      <name>srand48</name>
      <anchorfile>portable__utils_8hpp.html</anchorfile>
      <anchor>abface9f370a8b39282c86e1d7d27f332</anchor>
      <arglist>(long int seedval)</arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>_pf_model_type</name>
    <filename>struct__pf__model__type.html</filename>
    <member kind="variable">
      <type>bool</type>
      <name>use_adaptive_sampling</name>
      <anchorfile>struct__pf__model__type.html</anchorfile>
      <anchor>aa29ffa1cb31ef48b40f8310971febbf6</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>bool</type>
      <name>use_crossover_mutation</name>
      <anchorfile>struct__pf__model__type.html</anchorfile>
      <anchor>aa2e3e1808c3c87836376f4b3061b2943</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>bool</type>
      <name>use_optimal_filter</name>
      <anchorfile>struct__pf__model__type.html</anchorfile>
      <anchor>a773e632fa5a62a05dac3aad1d7978c10</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>bool</type>
      <name>use_self_adaptive</name>
      <anchorfile>struct__pf__model__type.html</anchorfile>
      <anchor>adc7808fc6a24221f87e546096e2a4e1d</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>_pf_sample_set_t</name>
    <filename>struct__pf__sample__set__t.html</filename>
    <member kind="variable">
      <type>pf_sample_t *</type>
      <name>aux_samples</name>
      <anchorfile>struct__pf__sample__set__t.html</anchorfile>
      <anchor>a867735d6fb7830fe198c578a518c96bc</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>cluster_count</name>
      <anchorfile>struct__pf__sample__set__t.html</anchorfile>
      <anchor>a0a6cc28513a0f672bb76655d651dd54a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>cluster_max_count</name>
      <anchorfile>struct__pf__sample__set__t.html</anchorfile>
      <anchor>a2694043163f3283670e2b0b20062a7b5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>pf_cluster_t *</type>
      <name>clusters</name>
      <anchorfile>struct__pf__sample__set__t.html</anchorfile>
      <anchor>ab4f4541da504ceab98942599c3157c78</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>converged</name>
      <anchorfile>struct__pf__sample__set__t.html</anchorfile>
      <anchor>a93820b25bc66464f8a202b3c57520535</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>pf_matrix_t</type>
      <name>cov</name>
      <anchorfile>struct__pf__sample__set__t.html</anchorfile>
      <anchor>ac900d759311cfad78aa89516e3d8e443</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>pf_kdtree_t *</type>
      <name>kdtree</name>
      <anchorfile>struct__pf__sample__set__t.html</anchorfile>
      <anchor>a4a220e98a56568d37d0be50ee5ad30c9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>pf_vector_t</type>
      <name>mean</name>
      <anchorfile>struct__pf__sample__set__t.html</anchorfile>
      <anchor>a610c806c7e94496351372ac870fcd45e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>n_effective</name>
      <anchorfile>struct__pf__sample__set__t.html</anchorfile>
      <anchor>ae31b0b1175e6355530af7577b1c1afca</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>struct _pf_t *</type>
      <name>pf</name>
      <anchorfile>struct__pf__sample__set__t.html</anchorfile>
      <anchor>a045a0f0df4d6544fa0055400895b4d49</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>sample_count</name>
      <anchorfile>struct__pf__sample__set__t.html</anchorfile>
      <anchor>a3675a8bce5f799f6c394c95a5ca68af5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>pf_sample_t *</type>
      <name>samples</name>
      <anchorfile>struct__pf__sample__set__t.html</anchorfile>
      <anchor>ad70713ed63fc4d5619197f06017f246a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>total_weight</name>
      <anchorfile>struct__pf__sample__set__t.html</anchorfile>
      <anchor>a7f23e5e9e9ad230fe051b355ed7857f1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>updated_count</name>
      <anchorfile>struct__pf__sample__set__t.html</anchorfile>
      <anchor>ad9db983de8787127c8c59b1bd488d0e9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int *</type>
      <name>updated_index</name>
      <anchorfile>struct__pf__sample__set__t.html</anchorfile>
      <anchor>aaf5c750e1324de9ef2495a8834f6adcb</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>_pf_t</name>
    <filename>struct__pf__t.html</filename>
    <member kind="variable">
      <type>double</type>
      <name>alpha_fast</name>
      <anchorfile>struct__pf__t.html</anchorfile>
      <anchor>a9ff6ca9bd519a956aa01797694e5f15c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>alpha_slow</name>
      <anchorfile>struct__pf__t.html</anchorfile>
      <anchor>a80816db3ffb4c399ca221e2f19e3c2e0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>converged</name>
      <anchorfile>struct__pf__t.html</anchorfile>
      <anchor>abc25dc55eae0b4a166755f45048019e7</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>crossover_alpha</name>
      <anchorfile>struct__pf__t.html</anchorfile>
      <anchor>a90b6329c5d5899a1dc71180ee1cafced</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>current_set</name>
      <anchorfile>struct__pf__t.html</anchorfile>
      <anchor>a23cf0448c8b5f76f60c56e848865d484</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>dist_threshold</name>
      <anchorfile>struct__pf__t.html</anchorfile>
      <anchor>aa1efadfc08ba59f8fe55071519d209c2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>void *</type>
      <name>e_random_pose_data</name>
      <anchorfile>struct__pf__t.html</anchorfile>
      <anchor>a7804391026976c212348e02424314952</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int *</type>
      <name>limit_cache</name>
      <anchorfile>struct__pf__t.html</anchorfile>
      <anchor>afec7a84a3ccfacb42791f786acfbcf81</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>max_samples</name>
      <anchorfile>struct__pf__t.html</anchorfile>
      <anchor>a8434c18b71246a187cb705e5aba049e6</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>min_samples</name>
      <anchorfile>struct__pf__t.html</anchorfile>
      <anchor>a7116f78f8d05ca35ad17240967bf30c4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>pf_model_type</type>
      <name>model</name>
      <anchorfile>struct__pf__t.html</anchorfile>
      <anchor>af39100088e8e801cb2efed322538f0d1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>mutation_prob</name>
      <anchorfile>struct__pf__t.html</anchorfile>
      <anchor>aedd19ad1048b599f521004c7fd810402</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>N_aux_particles</name>
      <anchorfile>struct__pf__t.html</anchorfile>
      <anchor>a4028937f1ec5fe2ced7e2c0ce6eacf55</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>pop_err</name>
      <anchorfile>struct__pf__t.html</anchorfile>
      <anchor>afa176e9527cb51f3ef2563fe86a3861e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>pop_z</name>
      <anchorfile>struct__pf__t.html</anchorfile>
      <anchor>ab70ff4e12ee6ed1469a67aff0de36ebc</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>void *</type>
      <name>random_pose_data</name>
      <anchorfile>struct__pf__t.html</anchorfile>
      <anchor>a4f8ab4cfeeda1f7ee91a633dfc37728f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>pf_init_model_fn_t</type>
      <name>random_pose_fn</name>
      <anchorfile>struct__pf__t.html</anchorfile>
      <anchor>a4ea2363cb6fb0cd4cd70b7817ffdfff6</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>selective_resampling</name>
      <anchorfile>struct__pf__t.html</anchorfile>
      <anchor>abc6252ca850fe993667913d7ade00a40</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>pf_sample_set_t</type>
      <name>sets</name>
      <anchorfile>struct__pf__t.html</anchorfile>
      <anchor>a56013d9af994b1781074b0e8f30c495a</anchor>
      <arglist>[2]</arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>w_fast</name>
      <anchorfile>struct__pf__t.html</anchorfile>
      <anchor>a8c9011dce69524801db184a5d524e5d2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>w_slow</name>
      <anchorfile>struct__pf__t.html</anchorfile>
      <anchor>a4a272f2ad96b0353bdca47f9c7f66ea1</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>CachedDistanceMap</name>
    <filename>classCachedDistanceMap.html</filename>
    <member kind="function">
      <type></type>
      <name>CachedDistanceMap</name>
      <anchorfile>classCachedDistanceMap.html</anchorfile>
      <anchor>a8fc75e399ee68356ddf4b422474c8672</anchor>
      <arglist>(double scale, double max_dist)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~CachedDistanceMap</name>
      <anchorfile>classCachedDistanceMap.html</anchorfile>
      <anchor>a6921a50ae59e4a47f5ec949f79a836ed</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>cell_radius_</name>
      <anchorfile>classCachedDistanceMap.html</anchorfile>
      <anchor>a7d5b908120e36cac53247fa50c7e6fa1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double **</type>
      <name>distances_</name>
      <anchorfile>classCachedDistanceMap.html</anchorfile>
      <anchor>a2d6c645fa9a6ea550d1dd485538565fe</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>max_dist_</name>
      <anchorfile>classCachedDistanceMap.html</anchorfile>
      <anchor>abf4b86778fe9f6e071c4122c4b51660c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>scale_</name>
      <anchorfile>classCachedDistanceMap.html</anchorfile>
      <anchor>af2c6e3296d3d0609912aa98d631a36bd</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>CellData</name>
    <filename>classCellData.html</filename>
    <member kind="variable">
      <type>unsigned int</type>
      <name>i_</name>
      <anchorfile>classCellData.html</anchorfile>
      <anchor>ac2c38505633d9ab434a87f7c429df045</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>unsigned int</type>
      <name>j_</name>
      <anchorfile>classCellData.html</anchorfile>
      <anchor>a45779c78babe3ad17ff9f409a9be6d39</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>map_t *</type>
      <name>map_</name>
      <anchorfile>classCellData.html</anchorfile>
      <anchor>aa4ae7938365761c7672fcc1262019c56</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>unsigned int</type>
      <name>src_i_</name>
      <anchorfile>classCellData.html</anchorfile>
      <anchor>a125b5db63c85845092f02d4ca0fd2eb3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>unsigned int</type>
      <name>src_j_</name>
      <anchorfile>classCellData.html</anchorfile>
      <anchor>a9ebe08a43f8f682a0b3d5a60998665c6</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>energy_map_t</name>
    <filename>structenergy__map__t.html</filename>
    <member kind="variable">
      <type>int</type>
      <name>accepted_count</name>
      <anchorfile>structenergy__map__t.html</anchorfile>
      <anchor>a0c20cefab6664194b0c8950eee055c4f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int *</type>
      <name>accepted_index</name>
      <anchorfile>structenergy__map__t.html</anchorfile>
      <anchor>ad57272201690c100c9af6844dec1e610</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>laser_max_range</name>
      <anchorfile>structenergy__map__t.html</anchorfile>
      <anchor>a52d4cbdbaf49d4abe98b31af6b378aca</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>laser_min_range</name>
      <anchorfile>structenergy__map__t.html</anchorfile>
      <anchor>a8da59227a109ea65d106dcf5e208fc81</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>lasers_energy_val</name>
      <anchorfile>structenergy__map__t.html</anchorfile>
      <anchor>ae2f31a0e6dcaeb392dbe05e942fde903</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>max_beams</name>
      <anchorfile>structenergy__map__t.html</anchorfile>
      <anchor>affc43b59afdf0ea1b9b5add81042402b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>max_x</name>
      <anchorfile>structenergy__map__t.html</anchorfile>
      <anchor>a1b3c6661fdef65c2d397db988e3b59a2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>max_y</name>
      <anchorfile>structenergy__map__t.html</anchorfile>
      <anchor>afbefe098734481910213ba2545f085a4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>min_x</name>
      <anchorfile>structenergy__map__t.html</anchorfile>
      <anchor>a486c6904618695e445370f4f697f62ab</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>min_y</name>
      <anchorfile>structenergy__map__t.html</anchorfile>
      <anchor>a1d1450e5d189bf5c6674cad4091d5c31</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>energy_pose_t *</type>
      <name>poses</name>
      <anchorfile>structenergy__map__t.html</anchorfile>
      <anchor>a3d0df602c173947d08334cafbf1f9126</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>resoultion_x</name>
      <anchorfile>structenergy__map__t.html</anchorfile>
      <anchor>a154b82b23aab2e6d095f6d33a137f2e8</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>resoultion_y</name>
      <anchorfile>structenergy__map__t.html</anchorfile>
      <anchor>aa62e7725f41394d2971249f16f06cc84</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>size_x</name>
      <anchorfile>structenergy__map__t.html</anchorfile>
      <anchor>a1b98ea3d831bdaeafa2f8608a84bdd3a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>size_y</name>
      <anchorfile>structenergy__map__t.html</anchorfile>
      <anchor>a1366af94d9e126348df340cd42d0c34c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>threshold_val</name>
      <anchorfile>structenergy__map__t.html</anchorfile>
      <anchor>a357ec03212c67b5a1ca5a5b730ea770f</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>energy_pose_t</name>
    <filename>structenergy__pose__t.html</filename>
    <member kind="variable">
      <type>double</type>
      <name>energy_val</name>
      <anchorfile>structenergy__pose__t.html</anchorfile>
      <anchor>a5445846256664e6b67bdd91f734b9dcf</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>orientation_yaw</name>
      <anchorfile>structenergy__pose__t.html</anchorfile>
      <anchor>a8916edc474fe9e3c9072ec8bd5cf5fce</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>pose_x</name>
      <anchorfile>structenergy__pose__t.html</anchorfile>
      <anchor>aa9973fbe852ee45b76abb8f253bdc5ba</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>pose_y</name>
      <anchorfile>structenergy__pose__t.html</anchorfile>
      <anchor>a0483ef3a2a8200339709528e6f2a5e59</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>gmcl_hyp_t</name>
    <filename>structgmcl__hyp__t.html</filename>
    <member kind="variable">
      <type>pf_matrix_t</type>
      <name>pf_pose_cov</name>
      <anchorfile>structgmcl__hyp__t.html</anchorfile>
      <anchor>a871a41849dc4fb6f537ff352567539b0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>pf_vector_t</type>
      <name>pf_pose_mean</name>
      <anchorfile>structgmcl__hyp__t.html</anchorfile>
      <anchor>aba8f07b9e580fc0599ccf744e37bfe43</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>weight</name>
      <anchorfile>structgmcl__hyp__t.html</anchorfile>
      <anchor>aa22e74ff5e61444b76afa8e050558a8b</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>gmcl::GMCLLaser</name>
    <filename>classgmcl_1_1GMCLLaser.html</filename>
    <base>gmcl::GMCLSensor</base>
    <member kind="function">
      <type></type>
      <name>GMCLLaser</name>
      <anchorfile>classgmcl_1_1GMCLLaser.html</anchorfile>
      <anchor>a343ff01fd630539cb4a31305ae0bbc1c</anchor>
      <arglist>(size_t max_beams, map_t *map)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual double</type>
      <name>PoseWeight</name>
      <anchorfile>classgmcl_1_1GMCLLaser.html</anchorfile>
      <anchor>a325d74715bfb03180718a55d7a12f167</anchor>
      <arglist>(pf_vector_t pose, GMCLLaserData *data)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>SetLaserScan</name>
      <anchorfile>classgmcl_1_1GMCLLaser.html</anchorfile>
      <anchor>ae787897a9c8d2e63e165c1d3ee7d901b</anchor>
      <arglist>(lsensor_scan_t &amp;laser_scan)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>SetModelBeam</name>
      <anchorfile>classgmcl_1_1GMCLLaser.html</anchorfile>
      <anchor>a90c992e95bf0d7724fe66d999a8d405e</anchor>
      <arglist>(double z_hit, double z_short, double z_max, double z_rand, double sigma_hit, double lambda_short, double chi_outlier)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>SetModelLikelihoodField</name>
      <anchorfile>classgmcl_1_1GMCLLaser.html</anchorfile>
      <anchor>a04a22e78c1a30f26da2c7f0e2af4dbb8</anchor>
      <arglist>(double z_hit, double z_rand, double sigma_hit, double max_occ_dist)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>SetModelLikelihoodFieldProb</name>
      <anchorfile>classgmcl_1_1GMCLLaser.html</anchorfile>
      <anchor>aaed56a0668fa65d421d922fe746d3907</anchor>
      <arglist>(double z_hit, double z_rand, double sigma_hit, double max_occ_dist, bool do_beamskip, double beam_skip_distance, double beam_skip_threshold, double beam_skip_error_threshold)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>UpdateSensor</name>
      <anchorfile>classgmcl_1_1GMCLLaser.html</anchorfile>
      <anchor>a9fa30ddf792dc831e8bac531861ea399</anchor>
      <arglist>(pf_t *pf, GMCLSensorData *data)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~GMCLLaser</name>
      <anchorfile>classgmcl_1_1GMCLLaser.html</anchorfile>
      <anchor>a40d8b489780e1acfc66d35531b327d14</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static bool</type>
      <name>ReUpdateSensor</name>
      <anchorfile>classgmcl_1_1GMCLLaser.html</anchorfile>
      <anchor>ae4a4ff53c0997e619ddf2ea84f4de172</anchor>
      <arglist>(pf_t *pf, GMCLSensorData *data)</arglist>
    </member>
    <member kind="variable">
      <type>float</type>
      <name>range_max</name>
      <anchorfile>classgmcl_1_1GMCLLaser.html</anchorfile>
      <anchor>af5ea926849a20947410bd9700d52b983</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>float</type>
      <name>range_min</name>
      <anchorfile>classgmcl_1_1GMCLLaser.html</anchorfile>
      <anchor>a55d13d64f12c7b60fbd14a59b7561a3d</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>reallocTempData</name>
      <anchorfile>classgmcl_1_1GMCLLaser.html</anchorfile>
      <anchor>a0a5cbc65840ce856e62064cc112e05e2</anchor>
      <arglist>(int max_samples, int max_obs)</arglist>
    </member>
    <member kind="function" protection="private" static="yes">
      <type>static void</type>
      <name>BeamModel</name>
      <anchorfile>classgmcl_1_1GMCLLaser.html</anchorfile>
      <anchor>a9e8c3291e618eb1c1f7cbeb1f0e261d0</anchor>
      <arglist>(GMCLLaserData *data, pf_sample_set_t *set)</arglist>
    </member>
    <member kind="function" protection="private" static="yes">
      <type>static void</type>
      <name>LikelihoodFieldModel</name>
      <anchorfile>classgmcl_1_1GMCLLaser.html</anchorfile>
      <anchor>a9117faa632934963c102fe8a92b67b96</anchor>
      <arglist>(GMCLLaserData *data, pf_sample_set_t *set)</arglist>
    </member>
    <member kind="function" protection="private" static="yes">
      <type>static void</type>
      <name>LikelihoodFieldModelProb</name>
      <anchorfile>classgmcl_1_1GMCLLaser.html</anchorfile>
      <anchor>a0bd58c12fccc5b16dd5f12c3f6a10da3</anchor>
      <arglist>(GMCLLaserData *data, pf_sample_set_t *set)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>beam_skip_distance</name>
      <anchorfile>classgmcl_1_1GMCLLaser.html</anchorfile>
      <anchor>a56177db1bd88fb26f3c7558b58121192</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>beam_skip_error_threshold</name>
      <anchorfile>classgmcl_1_1GMCLLaser.html</anchorfile>
      <anchor>adfe5a9fc8778d6edc51b033fad05779a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>beam_skip_threshold</name>
      <anchorfile>classgmcl_1_1GMCLLaser.html</anchorfile>
      <anchor>a1383cfa69dc100fe4aeee83dd5ee53f4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>chi_outlier</name>
      <anchorfile>classgmcl_1_1GMCLLaser.html</anchorfile>
      <anchor>aaa847283029d249dc5dc77afd5bebae1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>do_beamskip</name>
      <anchorfile>classgmcl_1_1GMCLLaser.html</anchorfile>
      <anchor>a06c21b2bca99fc5b1e76e0359334efb4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>lambda_short</name>
      <anchorfile>classgmcl_1_1GMCLLaser.html</anchorfile>
      <anchor>a6ae7cb4c8c12ce987141a13ecd3d22d1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>pf_vector_t</type>
      <name>laser_pose</name>
      <anchorfile>classgmcl_1_1GMCLLaser.html</anchorfile>
      <anchor>a09f112ef53bfd64ccbf0eb296f48da04</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>map_t *</type>
      <name>map</name>
      <anchorfile>classgmcl_1_1GMCLLaser.html</anchorfile>
      <anchor>afe4893a865f4c83865fbb5517719d44e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>int</type>
      <name>max_beams</name>
      <anchorfile>classgmcl_1_1GMCLLaser.html</anchorfile>
      <anchor>a082165d281f85b398ce97db049965765</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>int</type>
      <name>max_obs</name>
      <anchorfile>classgmcl_1_1GMCLLaser.html</anchorfile>
      <anchor>a95f66c17dda9f72e4123a325d4b72d17</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>int</type>
      <name>max_samples</name>
      <anchorfile>classgmcl_1_1GMCLLaser.html</anchorfile>
      <anchor>a5b61abca61a372082564685cec3560a8</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>laser_model_t</type>
      <name>model_type</name>
      <anchorfile>classgmcl_1_1GMCLLaser.html</anchorfile>
      <anchor>a9f8e2c8267335aba78d40eaa20d2bf88</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>sigma_hit</name>
      <anchorfile>classgmcl_1_1GMCLLaser.html</anchorfile>
      <anchor>afa72b6ae0a971d792d661b6f8b5bbd33</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double **</type>
      <name>temp_obs</name>
      <anchorfile>classgmcl_1_1GMCLLaser.html</anchorfile>
      <anchor>a588cff098c0e1c211520210879b57429</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>time</name>
      <anchorfile>classgmcl_1_1GMCLLaser.html</anchorfile>
      <anchor>a04ce78360e81dc3fd0371b647f79044f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>z_hit</name>
      <anchorfile>classgmcl_1_1GMCLLaser.html</anchorfile>
      <anchor>a0a4b2ff720215e9fd68110aa85e5cc58</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>z_max</name>
      <anchorfile>classgmcl_1_1GMCLLaser.html</anchorfile>
      <anchor>a8603ce5d6901856015113b43395abeaa</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>z_rand</name>
      <anchorfile>classgmcl_1_1GMCLLaser.html</anchorfile>
      <anchor>afa3e45ed809776938396941eb32e190a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>z_short</name>
      <anchorfile>classgmcl_1_1GMCLLaser.html</anchorfile>
      <anchor>adecd719b447cfefdfb99afbb94c2787f</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>gmcl::GMCLLaserData</name>
    <filename>classgmcl_1_1GMCLLaserData.html</filename>
    <base>gmcl::GMCLSensorData</base>
    <member kind="function">
      <type></type>
      <name>GMCLLaserData</name>
      <anchorfile>classgmcl_1_1GMCLLaserData.html</anchorfile>
      <anchor>ad340bf46df3694c898148526b1712e5b</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~GMCLLaserData</name>
      <anchorfile>classgmcl_1_1GMCLLaserData.html</anchorfile>
      <anchor>a5cefb3a273f19f867c8899a0bc4615b5</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>range_count</name>
      <anchorfile>classgmcl_1_1GMCLLaserData.html</anchorfile>
      <anchor>a147ba469b029c7cb7c43c12153df8255</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double(*</type>
      <name>ranges</name>
      <anchorfile>classgmcl_1_1GMCLLaserData.html</anchorfile>
      <anchor>afc79a61c7bdd3259dab0f9c4206302c8</anchor>
      <arglist>)[2]</arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static std::vector&lt; GMCLLaserData * &gt;</type>
      <name>sldata</name>
      <anchorfile>classgmcl_1_1GMCLLaserData.html</anchorfile>
      <anchor>a2e4b225daf681b340884bc235e8e4201</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>GmclNode</name>
    <filename>classGmclNode.html</filename>
    <member kind="function">
      <type></type>
      <name>GmclNode</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>ad4e2702ec6490ad900deee48ce1dcb32</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>process</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>ab683acaa4d614b4d16c529e8bfc20462</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>runFromBag</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>af04840dca032cd786fcd372b8cf85c2a</anchor>
      <arglist>(const std::string &amp;in_bag_fn, bool trigger_global_localization=false)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>savePoseToServer</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>adac232979d201628b7883632f2e3f7a2</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~GmclNode</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>ab1a7186d284fc0cbd5bc47f3e8f914ae</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>applyInitialPose</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a3d0ada66e65c7df8850187b0df725f59</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>checkLaserReceived</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a5656c4499c282216660f20c4065fe229</anchor>
      <arglist>(const ros::TimerEvent &amp;event)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>map_t *</type>
      <name>convertMap</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>aea594ac75471cce3b4af0adf5b2caae2</anchor>
      <arglist>(const nav_msgs::OccupancyGrid &amp;map_msg)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>freeMapDependentMemory</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a542d386adb78d23a9ebbf805493c876e</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>bool</type>
      <name>getOdomPose</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a93af7f93ceb84cf911f8abf30a6d968a</anchor>
      <arglist>(geometry_msgs::PoseStamped &amp;pose, double &amp;x, double &amp;y, double &amp;yaw, const ros::Time &amp;t, const std::string &amp;f)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>bool</type>
      <name>globalLocalizationCallback</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a763cb945fa2e9e20bca13d5b1c006780</anchor>
      <arglist>(std_srvs::Empty::Request &amp;req, std_srvs::Empty::Response &amp;res)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>handelNewLaser</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a5f29df5eb13fc4f32b069b08e8d5d9b7</anchor>
      <arglist>(const sensor_msgs::LaserScanConstPtr &amp;laser_scan)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>handleInitialPoseMessage</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a03f2d6c31403ece016fe9b1f83e348fa</anchor>
      <arglist>(const geometry_msgs::PoseWithCovarianceStamped &amp;msg)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>handleMapMessage</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>abada56f2575af191001111e72204c45b</anchor>
      <arglist>(const nav_msgs::OccupancyGrid &amp;msg)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>initialPoseReceived</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a5265d6eb32971c1acb57cf007f9019a0</anchor>
      <arglist>(const geometry_msgs::PoseWithCovarianceStampedConstPtr &amp;msg)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>laserReceived</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a18bfc8767db2021b175955f203b0b57e</anchor>
      <arglist>(const sensor_msgs::LaserScanConstPtr &amp;laser_scan)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>mapReceived</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>ab05d270dc1e9777c13af8e1fb02762c0</anchor>
      <arglist>(const nav_msgs::OccupancyGridConstPtr &amp;msg)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>bool</type>
      <name>nomotionUpdateCallback</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a3b34393e225b299e6448a5ae7ec5b546</anchor>
      <arglist>(std_srvs::Empty::Request &amp;req, std_srvs::Empty::Response &amp;res)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>reconfigureCB</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a4b153293db7fb66cb603da65e01836cd</anchor>
      <arglist>(gmcl::GMCLConfig &amp;config, uint32_t level)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>requestMap</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>ac17c085b662e85106c93357af40559e1</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>bool</type>
      <name>setMapCallback</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a1d9c3bb0967d77976da8f974e419fbba</anchor>
      <arglist>(nav_msgs::SetMap::Request &amp;req, nav_msgs::SetMap::Response &amp;res)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>standardDeviationDiagnostics</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>ad7c0c0d47b73c159b6719add13cda195</anchor>
      <arglist>(diagnostic_updater::DiagnosticStatusWrapper &amp;diagnostic_status)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>updatePoseFromServer</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a2abedbe90806429a62df00e26bc12e32</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private" static="yes">
      <type>static pf_vector_t</type>
      <name>uniformPoseGenerator</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a1c92fb0782900ba96d0650e18b29e3f9</anchor>
      <arglist>(pf_t *pf, void *arg, void *e_arg)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>a_thresh_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>ada34babef371b6fa30715597b087f28d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>alpha1_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a0fb2c7bdd4358c7759e9eb712e803f4d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>alpha2_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a4250f8891d482578101d1df304f0c33a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>alpha3_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>aec539d6f333809c1b6b5acaf858cb55f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>alpha4_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a31c013b8b6ab3b4d1cfae3ba50476ba4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>alpha5_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a589cb6959bb7d9831bab99f48dddee19</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>alpha_fast_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a664c668771cb8e069244af22b867860d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>alpha_slow_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a608b499e4fdb0c63a03d344fcf5297d1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::WallDuration</type>
      <name>bag_scan_period_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a462641f72df1a487b7cc34d86a64413f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::string</type>
      <name>base_frame_id_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>abe851cecfdd6e03f774ce989914f4989</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>beam_skip_distance_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>ae64f978af50382bac7c90be2d01eeafc</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>beam_skip_error_threshold_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>affb00441a3fd45b97fc716c2cac1281f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>beam_skip_threshold_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a0f8dcc979ff3e25edf2670ce2a48b400</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Timer</type>
      <name>check_laser_timer_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a73becbc91c7381a528da308bdecb9e89</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Duration</type>
      <name>cloud_pub_interval</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a46a63c2563f7e0c977556d78293a3e8e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::recursive_mutex</type>
      <name>configuration_mutex_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a89614afaabe01f7913002bd63e0d7431</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>crossover_alpha_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>af1e58081f02a1e4f800e887eec07d27c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>d_thresh_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a5a8c1e85084435cf3cc3c0a5328738ed</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>gmcl::GMCLConfig</type>
      <name>default_config_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>adb00d30025834074fc1885cc68c349e7</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>diagnostic_updater::Updater</type>
      <name>diagnosic_updater_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a5f379c8c3125f974c7e788d2121feab0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>do_beamskip_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>abc8b5a52fe3206bf3d261cb142e5f0cc</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>dynamic_reconfigure::Server&lt; gmcl::GMCLConfig &gt; *</type>
      <name>dsrv_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>aab2800202e34863c890860cce9071e1b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>energy_map_t *</type>
      <name>energy_map_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a4e2e82c4b082a7f5b40373ddcb5d32e9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Publisher</type>
      <name>energy_particlecloud_pub_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a02982543ca0d9c36483cc9c2adf9aeb0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>first_map_only_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a07d67fe846070c4a059516073372ef4d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>first_map_received_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a51abae13f4f7e1f435207ffef21bc182</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>first_reconfigure_call_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a52bc84f69e94468c7904d3153d039733</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::map&lt; std::string, int &gt;</type>
      <name>frame_to_laser_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>aef3e980eacd5d55dc8e75fb79da994a2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::string</type>
      <name>global_frame_id_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>adf39cd87ee86982fc1bb418a3e7b90a4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::ServiceServer</type>
      <name>global_loc_srv_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a65edfdda590b3f86c73cd5fb34acb9cd</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Duration</type>
      <name>gui_publish_period</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>adba5a5ad9ba3efe0a5c224c2bc111d13</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>init_cov_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>afad893f4b8e3d11e79e3ca26a266fd48</anchor>
      <arglist>[3]</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>init_pose_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>abf9546ad93d60cd867c3c7a49426c7c1</anchor>
      <arglist>[3]</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>gmcl_hyp_t *</type>
      <name>initial_pose_hyp_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a27d94ee8061384544bcd5e40d2b0762e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Subscriber</type>
      <name>initial_pose_sub_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a8619770d2602ae47f514b9a9baa283a2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Subscriber</type>
      <name>initial_pose_sub_old_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a16aff3a890bfc4dac68c9c4c10367d25</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>lambda_short_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>ae64d7a9c09b896e07db3e9dbf809a40a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>GMCLLaser *</type>
      <name>laser_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a85ecf7f2a0bf8611d170276b993a1b80</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Duration</type>
      <name>laser_check_interval_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>aafba982aa0625590510221ab31444782</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>int</type>
      <name>laser_index</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>ae35e71893b165b38caabbcd384bf9975</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>laser_likelihood_max_dist_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a0efa0948b185dba92090c6e533b0d6a1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>laser_max_range_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>aeea0184468e6d36708dc842b2aa16cd8</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>laser_min_range_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a5a93fcbd2fd204cd9984cdf95a4514c9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>laser_model_t</type>
      <name>laser_model_type_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a9ab4821dec789a69b161aa70bd691e5b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>tf2_ros::MessageFilter&lt; sensor_msgs::LaserScan &gt; *</type>
      <name>laser_scan_filter_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a9bf4654e4bf8850c34c99493aa2377eb</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>message_filters::Subscriber&lt; sensor_msgs::LaserScan &gt; *</type>
      <name>laser_scan_sub_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>ad94496f659242af73b11d26625cc1609</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::vector&lt; GMCLLaser * &gt;</type>
      <name>lasers_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>ae8f3408ac27d083401ee5289a2a0faa2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::vector&lt; bool &gt;</type>
      <name>lasers_update_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>ae1a72dc18e1706ceb9e96813c7d9bc06</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Time</type>
      <name>last_cloud_pub_time</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>ac267ec5b508c40af10a32790d46f6507</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Time</type>
      <name>last_laser_received_ts_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a593b79a80f8e2a1bce7276f90b107610</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>geometry_msgs::PoseWithCovarianceStamped</type>
      <name>last_published_pose</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a6ddc58f38a408dd6192845611d6dd0ba</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>geometry_msgs::PoseStamped</type>
      <name>latest_odom_pose_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a6bcc9465d1a65b7d2ba86fc6c7a9ea27</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>tf2::Transform</type>
      <name>latest_tf_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>ae3125fe7608a30d2fb0b32974172a26a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>latest_tf_valid_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>af28959010c3513b52dacf0cc881974f5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::vector&lt; GMCLLaserData * &gt;</type>
      <name>ldata_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>ac6244d427193d88a632fc0624cce633b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>m_force_update</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a8d17c28f8de9318d5ef6dcf3eb586d1f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>map_t *</type>
      <name>map_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a0f67fe8f27e40f8e36b4da29058bb098</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Subscriber</type>
      <name>map_sub_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a9ba1deff713487a5042d13f57992d8a5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>char *</type>
      <name>mapdata</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a1ad71c9e6e2d61509c54fcb189aa8f49</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>int</type>
      <name>max_beams_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>ac7a3941739fd67936db68497b94c70ba</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>int</type>
      <name>max_particles_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>aa1ae7e8e534457107c7930637cc67506</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>int</type>
      <name>min_particles_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a50e98d8086d52eec1d3014940bc487fc</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>mutation_prob_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>ad98bf365a629363758bbb7d24bb4b43b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>int</type>
      <name>N_aux_particles_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>afed37a101b6a05b0cef6dad7e5b8aac4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::NodeHandle</type>
      <name>nh_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a7ae197ac904c1c7e784839fd17d01e0f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::ServiceServer</type>
      <name>nomotion_update_srv_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a529db571a883e8d2e45b3486141791d4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>GMCLOdom *</type>
      <name>odom_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a8effeb0491a153a8fb108dd44f6d83c3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::string</type>
      <name>odom_frame_id_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>aafe24b3bbee7d5b2bc1a095baa148c08</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>odom_model_t</type>
      <name>odom_model_type_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>ada15bde3bac3c8208e764a8755e8fa42</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Publisher</type>
      <name>particlecloud_pub_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a356be255fe131646684ccf3b5abaa6b8</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>pf_t *</type>
      <name>pf_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a9f7675083594b5e54b050cc4034d9cf5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>pf_err_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a89d5d7c46fe96260e175294af276e9fa</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>pf_init_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a1ca831b468bb0306ea877a425842fb87</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>pf_model_type</type>
      <name>pf_model_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a6794e1e04e56bcf8419e3fde7ee617fa</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>pf_vector_t</type>
      <name>pf_odom_pose_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a37ce43b8d1801225285515688a9612ea</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>pf_z_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a086edef20e0998db7d428e4400741872</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Publisher</type>
      <name>pose_pub_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a92a55451590398dcbfd73be1854f1f43</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::NodeHandle</type>
      <name>private_nh_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a2aa668f29c08ff30d78ca20a9182fc68</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>pub_energy_map_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a463d5fcc44f12dc49aa8a7f6123c74f3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>int</type>
      <name>resample_count_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>af297fbdce015eea0f13ca9fa69063d41</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>int</type>
      <name>resample_interval_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a02d93918cbcddd46eea613e900c09229</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>resolution</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a29a549c5ad8d7ea4f4d379e08ad5c64a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>resolution_x_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a487ba1ad4ddf2448b325a841e009fecd</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>resolution_y_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a8b511147536aedeeb953cf97622a560f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Time</type>
      <name>save_pose_last_time</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>aada9c91c7ca5c16c7099d2befe3a4565</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Duration</type>
      <name>save_pose_period</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>ab0693a6cea1e1388730aba5ee75fc3fe</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>selective_resampling_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>ae69c816842b941387da7ca30bd02177b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>sent_first_transform_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>ab6e702bac063e29a5a0bccaacd611c30</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::ServiceServer</type>
      <name>set_map_srv_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a25ccdfd2be52e4d88584c87318f9c192</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>sigma_hit_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>ad0a8393c0b71e34b4b5ea722757eafb2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>std_warn_level_x_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a2f12edc4bdc1d9204c689130a12b22e4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>std_warn_level_y_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a66b1cf4588ae2eea8b4c9db18dbf4ae8</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>std_warn_level_yaw_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a0c66848d2c32b1f4eaad5553c768fd78</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>int</type>
      <name>sx</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a7a15b70a786a0200d6efa894127b6b4f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>int</type>
      <name>sy</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>acd1b2cf498563ee09023069b5047ce19</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::shared_ptr&lt; tf2_ros::Buffer &gt;</type>
      <name>tf_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a4baac879da1bfb0d0427a8d6cc5c261c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>tf_broadcast_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a20d9277f0579a5b1f582667e355ca103</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::shared_ptr&lt; tf2_ros::TransformBroadcaster &gt;</type>
      <name>tfb_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>ae726a6d4d8e75aff5a7c6847bc090f82</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::shared_ptr&lt; tf2_ros::TransformListener &gt;</type>
      <name>tfl_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a3a09504957bf5e9573a008a41b2a9330</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>threshold_val_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a77afcab2621b57677756803e1782a318</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Duration</type>
      <name>transform_tolerance_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a9f2e6dadcc69dc6d584a2a9af94f4ee0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>use_map_topic_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>af52a02afbe2ae2c696ef58941c12c28d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>z_hit_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a6358387c2a2c10c65bc24786d4163d46</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>z_max_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>ac17c861a6987b7f5e90f6ac4ae3e8187</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>z_rand_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>ad32e7b1c854bf6e8d065e54987796674</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>z_short_</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>a7a012720fc2d50c115d4364e336b47f9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private" static="yes">
      <type>static std::vector&lt; std::pair&lt; int, int &gt; &gt;</type>
      <name>free_space_indices</name>
      <anchorfile>classGmclNode.html</anchorfile>
      <anchor>ab780cb8d5fbf253a855e1e3b8dfdf781</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>gmcl::GMCLOdom</name>
    <filename>classgmcl_1_1GMCLOdom.html</filename>
    <base>gmcl::GMCLSensor</base>
    <member kind="function">
      <type></type>
      <name>GMCLOdom</name>
      <anchorfile>classgmcl_1_1GMCLOdom.html</anchorfile>
      <anchor>af8ba1a0b87f141373899621cdd6f1013</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>SetModel</name>
      <anchorfile>classgmcl_1_1GMCLOdom.html</anchorfile>
      <anchor>a2edfa32c2316c1fb3939db0d51609b77</anchor>
      <arglist>(odom_model_t type, double alpha1, double alpha2, double alpha3, double alpha4, double alpha5=0)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>SetModelDiff</name>
      <anchorfile>classgmcl_1_1GMCLOdom.html</anchorfile>
      <anchor>a20bd797a68cfb5c8a682179cd4ff63ef</anchor>
      <arglist>(double alpha1, double alpha2, double alpha3, double alpha4)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>SetModelOmni</name>
      <anchorfile>classgmcl_1_1GMCLOdom.html</anchorfile>
      <anchor>ac3dfe9da904f6905124c2df5a7899c08</anchor>
      <arglist>(double alpha1, double alpha2, double alpha3, double alpha4, double alpha5)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>UpdateAction</name>
      <anchorfile>classgmcl_1_1GMCLOdom.html</anchorfile>
      <anchor>a3bb9ffb90c4562275b00811520cfe293</anchor>
      <arglist>(pf_t *pf, GMCLSensorData *data)</arglist>
    </member>
    <member kind="function" protection="private" static="yes">
      <type>static void</type>
      <name>DiffCorrectedModel</name>
      <anchorfile>classgmcl_1_1GMCLOdom.html</anchorfile>
      <anchor>a42bf76af13862d4ea81a095b56e9e3af</anchor>
      <arglist>(GMCLOdomData *data, pf_sample_set_t *set)</arglist>
    </member>
    <member kind="function" protection="private" static="yes">
      <type>static void</type>
      <name>DiffModel</name>
      <anchorfile>classgmcl_1_1GMCLOdom.html</anchorfile>
      <anchor>ab35e1df646f8f71fefc6d9858cdf9595</anchor>
      <arglist>(GMCLOdomData *data, pf_sample_set_t *set)</arglist>
    </member>
    <member kind="function" protection="private" static="yes">
      <type>static void</type>
      <name>OmniCorrectedModel</name>
      <anchorfile>classgmcl_1_1GMCLOdom.html</anchorfile>
      <anchor>a2a3109687ce743705f49070c0e53c0f1</anchor>
      <arglist>(GMCLOdomData *data, pf_sample_set_t *set)</arglist>
    </member>
    <member kind="function" protection="private" static="yes">
      <type>static void</type>
      <name>OmniModel</name>
      <anchorfile>classgmcl_1_1GMCLOdom.html</anchorfile>
      <anchor>ac26d22b9c67ade863ce36a51fc796bdf</anchor>
      <arglist>(GMCLOdomData *data, pf_sample_set_t *set)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>alpha1</name>
      <anchorfile>classgmcl_1_1GMCLOdom.html</anchorfile>
      <anchor>a48b7a38cd45af89f749a629cd9cbe28f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>alpha2</name>
      <anchorfile>classgmcl_1_1GMCLOdom.html</anchorfile>
      <anchor>a22ce0a9f04e675fdc93ff0be790ed3f8</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>alpha3</name>
      <anchorfile>classgmcl_1_1GMCLOdom.html</anchorfile>
      <anchor>a037097ab70c1b8e44596067ccf42e7e6</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>alpha4</name>
      <anchorfile>classgmcl_1_1GMCLOdom.html</anchorfile>
      <anchor>a9dc1ff019035bed281abe7fa8053ef10</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>alpha5</name>
      <anchorfile>classgmcl_1_1GMCLOdom.html</anchorfile>
      <anchor>a03545855c4ed77bddb3ed96ccac4f3e4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>odom_model_t</type>
      <name>model_type</name>
      <anchorfile>classgmcl_1_1GMCLOdom.html</anchorfile>
      <anchor>afad0578d3747aadd7cdf33a4cab96d41</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>time</name>
      <anchorfile>classgmcl_1_1GMCLOdom.html</anchorfile>
      <anchor>a4c053061075b65fa235f40ffd80ea9f6</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>gmcl::GMCLOdomData</name>
    <filename>classgmcl_1_1GMCLOdomData.html</filename>
    <base>gmcl::GMCLSensorData</base>
    <member kind="variable">
      <type>pf_vector_t</type>
      <name>delta</name>
      <anchorfile>classgmcl_1_1GMCLOdomData.html</anchorfile>
      <anchor>a6de337cd652b880d9fa94bafa2d33dbe</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>pf_vector_t</type>
      <name>pose</name>
      <anchorfile>classgmcl_1_1GMCLOdomData.html</anchorfile>
      <anchor>a779a6ab06400da1f6a4cb0a85e471a69</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>gmcl::GMCLSensor</name>
    <filename>classgmcl_1_1GMCLSensor.html</filename>
    <member kind="function">
      <type></type>
      <name>GMCLSensor</name>
      <anchorfile>classgmcl_1_1GMCLSensor.html</anchorfile>
      <anchor>a0dcf7e11ee07493697981c520fe5787b</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>InitSensor</name>
      <anchorfile>classgmcl_1_1GMCLSensor.html</anchorfile>
      <anchor>ab57782eb2caa0f2816234d551740f5fc</anchor>
      <arglist>(pf_t *pf, GMCLSensorData *data)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>UpdateAction</name>
      <anchorfile>classgmcl_1_1GMCLSensor.html</anchorfile>
      <anchor>aaf45415d41d9f8be1f3628af55067067</anchor>
      <arglist>(pf_t *pf, GMCLSensorData *data)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual bool</type>
      <name>UpdateSensor</name>
      <anchorfile>classgmcl_1_1GMCLSensor.html</anchorfile>
      <anchor>a83eafec25b9ad323fffaf34463774abb</anchor>
      <arglist>(pf_t *pf, GMCLSensorData *data)</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~GMCLSensor</name>
      <anchorfile>classgmcl_1_1GMCLSensor.html</anchorfile>
      <anchor>a1f59954015b99db8e871ca8e2db67348</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>bool</type>
      <name>is_action</name>
      <anchorfile>classgmcl_1_1GMCLSensor.html</anchorfile>
      <anchor>acca15d06e2106180e7e038f2890b817d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>pf_vector_t</type>
      <name>pose</name>
      <anchorfile>classgmcl_1_1GMCLSensor.html</anchorfile>
      <anchor>a2b8fe15fbf55e74cf06b10dcbadf1ea9</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>gmcl::GMCLSensorData</name>
    <filename>classgmcl_1_1GMCLSensorData.html</filename>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~GMCLSensorData</name>
      <anchorfile>classgmcl_1_1GMCLSensorData.html</anchorfile>
      <anchor>af0843646fe8c07df248a14aa94ca8de9</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>GMCLSensor *</type>
      <name>sensor</name>
      <anchorfile>classgmcl_1_1GMCLSensorData.html</anchorfile>
      <anchor>acac594523fe1c5ede8c2a07daec23e46</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>time</name>
      <anchorfile>classgmcl_1_1GMCLSensorData.html</anchorfile>
      <anchor>af14e43d14257d5dec0975da49c31b94c</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>lsensor_scan_t</name>
    <filename>structlsensor__scan__t.html</filename>
    <member kind="variable">
      <type>pf_vector_t</type>
      <name>laser_pose</name>
      <anchorfile>structlsensor__scan__t.html</anchorfile>
      <anchor>a7a7150a07c9e33c7c6101bbfc846033b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>range_count</name>
      <anchorfile>structlsensor__scan__t.html</anchorfile>
      <anchor>a0d66c07c4a5443b90af9ed9e5be9d4d8</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>float</type>
      <name>range_max</name>
      <anchorfile>structlsensor__scan__t.html</anchorfile>
      <anchor>a50d05b6d6cb3b96c06909d15b2c40f11</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>float</type>
      <name>range_min</name>
      <anchorfile>structlsensor__scan__t.html</anchorfile>
      <anchor>ab817cab95b2a3c2e355b47e5dec2a05c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double(*</type>
      <name>ranges</name>
      <anchorfile>structlsensor__scan__t.html</anchorfile>
      <anchor>a4d5015cc151f377498d6fa26a839afb1</anchor>
      <arglist>)[2]</arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>map_cell_t</name>
    <filename>structmap__cell__t.html</filename>
    <member kind="variable">
      <type>double</type>
      <name>occ_dist</name>
      <anchorfile>structmap__cell__t.html</anchorfile>
      <anchor>a85f2cbdc2e0e498c9bef798c99ec7c1d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>occ_state</name>
      <anchorfile>structmap__cell__t.html</anchorfile>
      <anchor>a2ebca5f463a2710d378b88d01437c939</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>map_t</name>
    <filename>structmap__t.html</filename>
    <member kind="variable">
      <type>map_cell_t *</type>
      <name>cells</name>
      <anchorfile>structmap__t.html</anchorfile>
      <anchor>a929aad9d7842ed60344d3a0c570afd39</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>max_occ_dist</name>
      <anchorfile>structmap__t.html</anchorfile>
      <anchor>a17f7e6de83a4288fe6894dbf2b552472</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>origin_x</name>
      <anchorfile>structmap__t.html</anchorfile>
      <anchor>acfc333b8a67089764f4ad90ba29ab71f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>origin_y</name>
      <anchorfile>structmap__t.html</anchorfile>
      <anchor>a543bb3e037efcd63f54a33e7c173d50f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>scale</name>
      <anchorfile>structmap__t.html</anchorfile>
      <anchor>a7d9f7a6d2da57d28e81f565bb6ba8e45</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>size_x</name>
      <anchorfile>structmap__t.html</anchorfile>
      <anchor>a64a09676310106558b5b0e7bafd35412</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>size_y</name>
      <anchorfile>structmap__t.html</anchorfile>
      <anchor>a7fdfb78840868fbf8a84e915c9ba5107</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>pf_cluster_t</name>
    <filename>structpf__cluster__t.html</filename>
    <member kind="variable">
      <type>double</type>
      <name>c</name>
      <anchorfile>structpf__cluster__t.html</anchorfile>
      <anchor>aa219f8157f3f94537b0a1210c2d3a64b</anchor>
      <arglist>[2][2]</arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>count</name>
      <anchorfile>structpf__cluster__t.html</anchorfile>
      <anchor>a65ad802d21b6998bbf776d7d210845c0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>pf_matrix_t</type>
      <name>cov</name>
      <anchorfile>structpf__cluster__t.html</anchorfile>
      <anchor>aa86523382c704fe9a0691416c7bf78af</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>m</name>
      <anchorfile>structpf__cluster__t.html</anchorfile>
      <anchor>a3ac285998ed64f01e65525140600d5d8</anchor>
      <arglist>[4]</arglist>
    </member>
    <member kind="variable">
      <type>pf_vector_t</type>
      <name>mean</name>
      <anchorfile>structpf__cluster__t.html</anchorfile>
      <anchor>ab9d9b7bc29209d213b8ccef5a7c5d63c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>weight</name>
      <anchorfile>structpf__cluster__t.html</anchorfile>
      <anchor>aa635a7fa9ac89114cb5fc91ea1882ed3</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>pf_kdtree_node</name>
    <filename>structpf__kdtree__node.html</filename>
    <member kind="variable">
      <type>struct pf_kdtree_node *</type>
      <name>children</name>
      <anchorfile>structpf__kdtree__node.html</anchorfile>
      <anchor>a894275d80a5aa21e4977420b8a8c2676</anchor>
      <arglist>[2]</arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>cluster</name>
      <anchorfile>structpf__kdtree__node.html</anchorfile>
      <anchor>a614cd21deb9335383e9bba968fb3acce</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>depth</name>
      <anchorfile>structpf__kdtree__node.html</anchorfile>
      <anchor>a7aeffc9c557e170d875328d4ff4f669e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>key</name>
      <anchorfile>structpf__kdtree__node.html</anchorfile>
      <anchor>a6ace1029289ed12095844110faac1b35</anchor>
      <arglist>[3]</arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>leaf</name>
      <anchorfile>structpf__kdtree__node.html</anchorfile>
      <anchor>aca122fa0177209a6b87be053c6f2b882</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>pivot_dim</name>
      <anchorfile>structpf__kdtree__node.html</anchorfile>
      <anchor>a5df8870ca5ffbb2bd6a0fd3cf28e175f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>pivot_value</name>
      <anchorfile>structpf__kdtree__node.html</anchorfile>
      <anchor>ade0d28797ae474896d933e81628100cb</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>value</name>
      <anchorfile>structpf__kdtree__node.html</anchorfile>
      <anchor>a8df6d7d10dde36dcd28b4c8c5aa0118a</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>pf_kdtree_t</name>
    <filename>structpf__kdtree__t.html</filename>
    <member kind="variable">
      <type>int</type>
      <name>leaf_count</name>
      <anchorfile>structpf__kdtree__t.html</anchorfile>
      <anchor>a8eae6112056438894b842ce7e489bcc8</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>node_count</name>
      <anchorfile>structpf__kdtree__t.html</anchorfile>
      <anchor>a93584814fb661d6b39fd9e2a8048ba89</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>node_max_count</name>
      <anchorfile>structpf__kdtree__t.html</anchorfile>
      <anchor>aa8be39c02dd40a4319dcf05f4243148b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>pf_kdtree_node_t *</type>
      <name>nodes</name>
      <anchorfile>structpf__kdtree__t.html</anchorfile>
      <anchor>a33a087dd559a8d7b98e350c383ee82e6</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>pf_kdtree_node_t *</type>
      <name>root</name>
      <anchorfile>structpf__kdtree__t.html</anchorfile>
      <anchor>a9cb724eb99359c14a2bd4aabc40de3c1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>size</name>
      <anchorfile>structpf__kdtree__t.html</anchorfile>
      <anchor>aa42f62a0e718e210703fa4df765d25fa</anchor>
      <arglist>[3]</arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>pf_matrix_t</name>
    <filename>structpf__matrix__t.html</filename>
    <member kind="variable">
      <type>double</type>
      <name>m</name>
      <anchorfile>structpf__matrix__t.html</anchorfile>
      <anchor>aeb96cf23b3eead8ddc5799c97b52bc24</anchor>
      <arglist>[3][3]</arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>pf_pdf_gaussian_t</name>
    <filename>structpf__pdf__gaussian__t.html</filename>
    <member kind="variable">
      <type>pf_vector_t</type>
      <name>cd</name>
      <anchorfile>structpf__pdf__gaussian__t.html</anchorfile>
      <anchor>a175e05c59c811f79a414f37c607e4ed9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>pf_matrix_t</type>
      <name>cr</name>
      <anchorfile>structpf__pdf__gaussian__t.html</anchorfile>
      <anchor>a1492c02a6d6c55525b7c6ee59f1793df</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>pf_matrix_t</type>
      <name>cx</name>
      <anchorfile>structpf__pdf__gaussian__t.html</anchorfile>
      <anchor>a8e0bcb303f3de1f5cb9508993c45807e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>cxdet</name>
      <anchorfile>structpf__pdf__gaussian__t.html</anchorfile>
      <anchor>ac98af0406c5245f1fb9e69df2aa1541f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>pf_vector_t</type>
      <name>x</name>
      <anchorfile>structpf__pdf__gaussian__t.html</anchorfile>
      <anchor>ad83562454967d8470cc0915679cff402</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>pf_sample_t</name>
    <filename>structpf__sample__t.html</filename>
    <member kind="variable">
      <type>double</type>
      <name>group_weight</name>
      <anchorfile>structpf__sample__t.html</anchorfile>
      <anchor>aa0e471b36db8a0e5a67ceeb5d6b6e25a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>last_obs</name>
      <anchorfile>structpf__sample__t.html</anchorfile>
      <anchor>a4b0a2bf476ddacee68135e62961a35d4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>pf_vector_t</type>
      <name>pose</name>
      <anchorfile>structpf__sample__t.html</anchorfile>
      <anchor>ac3ef3426ea73debfc921d832e4073d44</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>weight</name>
      <anchorfile>structpf__sample__t.html</anchorfile>
      <anchor>af816652fe9bbeebfe723909d41004f29</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>pf_vector_t</name>
    <filename>structpf__vector__t.html</filename>
    <member kind="variable">
      <type>double</type>
      <name>v</name>
      <anchorfile>structpf__vector__t.html</anchorfile>
      <anchor>afb8ada14f90499bc643fbcad8cffeeb2</anchor>
      <arglist>[3]</arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>gmcl</name>
    <filename>namespacegmcl.html</filename>
    <class kind="class">gmcl::GMCLLaser</class>
    <class kind="class">gmcl::GMCLLaserData</class>
    <class kind="class">gmcl::GMCLOdom</class>
    <class kind="class">gmcl::GMCLOdomData</class>
    <class kind="class">gmcl::GMCLSensor</class>
    <class kind="class">gmcl::GMCLSensorData</class>
    <member kind="enumeration">
      <type></type>
      <name>laser_model_t</name>
      <anchorfile>namespacegmcl.html</anchorfile>
      <anchor>ab4815fed082aac0eaab50945c96b10f4</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>LASER_MODEL_BEAM</name>
      <anchorfile>namespacegmcl.html</anchorfile>
      <anchor>ab4815fed082aac0eaab50945c96b10f4a3e88f1fbad6085160e6bf4a0560c767c</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>LASER_MODEL_LIKELIHOOD_FIELD</name>
      <anchorfile>namespacegmcl.html</anchorfile>
      <anchor>ab4815fed082aac0eaab50945c96b10f4ab992f099258bc12fa9ac8eeb8d1da548</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>LASER_MODEL_LIKELIHOOD_FIELD_PROB</name>
      <anchorfile>namespacegmcl.html</anchorfile>
      <anchor>ab4815fed082aac0eaab50945c96b10f4a7707788b311efa7bd297f5d5409372f6</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumeration">
      <type></type>
      <name>odom_model_t</name>
      <anchorfile>namespacegmcl.html</anchorfile>
      <anchor>a404e88a20d2697fa5b2a6e0ed8571d2c</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>ODOM_MODEL_DIFF</name>
      <anchorfile>namespacegmcl.html</anchorfile>
      <anchor>a404e88a20d2697fa5b2a6e0ed8571d2cacd4d61e11d4595c41a00fb3d06f7d3d6</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>ODOM_MODEL_OMNI</name>
      <anchorfile>namespacegmcl.html</anchorfile>
      <anchor>a404e88a20d2697fa5b2a6e0ed8571d2ca8274019387e40c57cfedb92e1396b655</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>ODOM_MODEL_DIFF_CORRECTED</name>
      <anchorfile>namespacegmcl.html</anchorfile>
      <anchor>a404e88a20d2697fa5b2a6e0ed8571d2cac613043a91d0e89ee1584e963a6d279d</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>ODOM_MODEL_OMNI_CORRECTED</name>
      <anchorfile>namespacegmcl.html</anchorfile>
      <anchor>a404e88a20d2697fa5b2a6e0ed8571d2ca9aae48f1336347ffe19f4f3bba77b3ca</anchor>
      <arglist></arglist>
    </member>
  </compound>
</tagfile>
