<divclass="line"><aid="l00005"name="l00005"></a><spanclass="lineno"> 5</span><spanclass="comment">Redistribution and use in source and binary forms, with or without</span></div>
<divclass="line"><aid="l00006"name="l00006"></a><spanclass="lineno"> 6</span><spanclass="comment">modification, are permitted provided that the following conditions are met:</span></div>
<divclass="line"><aid="l00007"name="l00007"></a><spanclass="lineno"> 7</span><spanclass="comment"> * Redistributions of source code must retain the above copyright</span></div>
<divclass="line"><aid="l00008"name="l00008"></a><spanclass="lineno"> 8</span><spanclass="comment"> notice, this list of conditions and the following disclaimer.</span></div>
<divclass="line"><aid="l00009"name="l00009"></a><spanclass="lineno"> 9</span><spanclass="comment"> * Redistributions in binary form must reproduce the above copyright</span></div>
<divclass="line"><aid="l00010"name="l00010"></a><spanclass="lineno"> 10</span><spanclass="comment"> notice, this list of conditions and the following disclaimer in the</span></div>
<divclass="line"><aid="l00011"name="l00011"></a><spanclass="lineno"> 11</span><spanclass="comment"> documentation and/or other materials provided with the distribution.</span></div>
<divclass="line"><aid="l00012"name="l00012"></a><spanclass="lineno"> 12</span><spanclass="comment"> * Neither the name of the Universite de Sherbrooke nor the</span></div>
<divclass="line"><aid="l00013"name="l00013"></a><spanclass="lineno"> 13</span><spanclass="comment"> names of its contributors may be used to endorse or promote products</span></div>
<divclass="line"><aid="l00014"name="l00014"></a><spanclass="lineno"> 14</span><spanclass="comment"> derived from this software without specific prior written permission.</span></div>
<divclass="line"><aid="l00016"name="l00016"></a><spanclass="lineno"> 16</span><spanclass="comment">THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND</span></div>
<divclass="line"><aid="l00017"name="l00017"></a><spanclass="lineno"> 17</span><spanclass="comment">ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED</span></div>
<divclass="line"><aid="l00018"name="l00018"></a><spanclass="lineno"> 18</span><spanclass="comment">WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE</span></div>
<divclass="line"><aid="l00019"name="l00019"></a><spanclass="lineno"> 19</span><spanclass="comment">DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY</span></div>
<divclass="line"><aid="l00020"name="l00020"></a><spanclass="lineno"> 20</span><spanclass="comment">DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES</span></div>
<divclass="line"><aid="l00021"name="l00021"></a><spanclass="lineno"> 21</span><spanclass="comment">(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;</span></div>
<divclass="line"><aid="l00022"name="l00022"></a><spanclass="lineno"> 22</span><spanclass="comment">LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND</span></div>
<divclass="line"><aid="l00023"name="l00023"></a><spanclass="lineno"> 23</span><spanclass="comment">ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
<divclass="line"><aid="l00024"name="l00024"></a><spanclass="lineno"> 24</span><spanclass="comment">(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS</span></div>
<divclass="line"><aid="l00025"name="l00025"></a><spanclass="lineno"> 25</span><spanclass="comment">SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
<divclass="line"><aid="l00086"name="l00086"></a><spanclass="lineno"> 86</span> UASSERT_MSG(<aclass="code hl_function"href="UMath_8h.html#abc9c1a676bf1b33a7d2bc0452a04fed3">uIsFinite</a>(_info.<aclass="code hl_variable"href="classrtabmap_1_1OdometryInfo.html#a15a03ce5044cf0c6af77085777c4df7a">reg</a>.<aclass="code hl_variable"href="classrtabmap_1_1RegistrationInfo.html#a347f413d8a96dea23c4fdc6af2a1ddb5">covariance</a>.at<<spanclass="keywordtype">double</span>>(0,0)) && _info.<aclass="code hl_variable"href="classrtabmap_1_1OdometryInfo.html#a15a03ce5044cf0c6af77085777c4df7a">reg</a>.<aclass="code hl_variable"href="classrtabmap_1_1RegistrationInfo.html#a347f413d8a96dea23c4fdc6af2a1ddb5">covariance</a>.at<<spanclass="keywordtype">double</span>>(0,0)>0, <spanclass="stringliteral">"Transitional variance should not be null! (set to 1 if unknown)"</span>);</div>
<divclass="line"><aid="l00087"name="l00087"></a><spanclass="lineno"> 87</span> UASSERT_MSG(<aclass="code hl_function"href="UMath_8h.html#abc9c1a676bf1b33a7d2bc0452a04fed3">uIsFinite</a>(_info.<aclass="code hl_variable"href="classrtabmap_1_1OdometryInfo.html#a15a03ce5044cf0c6af77085777c4df7a">reg</a>.<aclass="code hl_variable"href="classrtabmap_1_1RegistrationInfo.html#a347f413d8a96dea23c4fdc6af2a1ddb5">covariance</a>.at<<spanclass="keywordtype">double</span>>(1,1)) && _info.<aclass="code hl_variable"href="classrtabmap_1_1OdometryInfo.html#a15a03ce5044cf0c6af77085777c4df7a">reg</a>.<aclass="code hl_variable"href="classrtabmap_1_1RegistrationInfo.html#a347f413d8a96dea23c4fdc6af2a1ddb5">covariance</a>.at<<spanclass="keywordtype">double</span>>(1,1)>0, <spanclass="stringliteral">"Transitional variance should not be null! (set to 1 if unknown)"</span>);</div>
<divclass="line"><aid="l00088"name="l00088"></a><spanclass="lineno"> 88</span> UASSERT_MSG(<aclass="code hl_function"href="UMath_8h.html#abc9c1a676bf1b33a7d2bc0452a04fed3">uIsFinite</a>(_info.<aclass="code hl_variable"href="classrtabmap_1_1OdometryInfo.html#a15a03ce5044cf0c6af77085777c4df7a">reg</a>.<aclass="code hl_variable"href="classrtabmap_1_1RegistrationInfo.html#a347f413d8a96dea23c4fdc6af2a1ddb5">covariance</a>.at<<spanclass="keywordtype">double</span>>(2,2)) && _info.<aclass="code hl_variable"href="classrtabmap_1_1OdometryInfo.html#a15a03ce5044cf0c6af77085777c4df7a">reg</a>.<aclass="code hl_variable"href="classrtabmap_1_1RegistrationInfo.html#a347f413d8a96dea23c4fdc6af2a1ddb5">covariance</a>.at<<spanclass="keywordtype">double</span>>(2,2)>0, <spanclass="stringliteral">"Transitional variance should not be null! (set to 1 if unknown)"</span>);</div>
<divclass="line"><aid="l00089"name="l00089"></a><spanclass="lineno"> 89</span> UASSERT_MSG(<aclass="code hl_function"href="UMath_8h.html#abc9c1a676bf1b33a7d2bc0452a04fed3">uIsFinite</a>(_info.<aclass="code hl_variable"href="classrtabmap_1_1OdometryInfo.html#a15a03ce5044cf0c6af77085777c4df7a">reg</a>.<aclass="code hl_variable"href="classrtabmap_1_1RegistrationInfo.html#a347f413d8a96dea23c4fdc6af2a1ddb5">covariance</a>.at<<spanclass="keywordtype">double</span>>(3,3)) && _info.<aclass="code hl_variable"href="classrtabmap_1_1OdometryInfo.html#a15a03ce5044cf0c6af77085777c4df7a">reg</a>.<aclass="code hl_variable"href="classrtabmap_1_1RegistrationInfo.html#a347f413d8a96dea23c4fdc6af2a1ddb5">covariance</a>.at<<spanclass="keywordtype">double</span>>(3,3)>0, <spanclass="stringliteral">"Rotational variance should not be null! (set to 1 if unknown)"</span>);</div>
<divclass="line"><aid="l00090"name="l00090"></a><spanclass="lineno"> 90</span> UASSERT_MSG(<aclass="code hl_function"href="UMath_8h.html#abc9c1a676bf1b33a7d2bc0452a04fed3">uIsFinite</a>(_info.<aclass="code hl_variable"href="classrtabmap_1_1OdometryInfo.html#a15a03ce5044cf0c6af77085777c4df7a">reg</a>.<aclass="code hl_variable"href="classrtabmap_1_1RegistrationInfo.html#a347f413d8a96dea23c4fdc6af2a1ddb5">covariance</a>.at<<spanclass="keywordtype">double</span>>(4,4)) && _info.<aclass="code hl_variable"href="classrtabmap_1_1OdometryInfo.html#a15a03ce5044cf0c6af77085777c4df7a">reg</a>.<aclass="code hl_variable"href="classrtabmap_1_1RegistrationInfo.html#a347f413d8a96dea23c4fdc6af2a1ddb5">covariance</a>.at<<spanclass="keywordtype">double</span>>(4,4)>0, <spanclass="stringliteral">"Rotational variance should not be null! (set to 1 if unknown)"</span>);</div>
<divclass="line"><aid="l00091"name="l00091"></a><spanclass="lineno"> 91</span> UASSERT_MSG(<aclass="code hl_function"href="UMath_8h.html#abc9c1a676bf1b33a7d2bc0452a04fed3">uIsFinite</a>(_info.<aclass="code hl_variable"href="classrtabmap_1_1OdometryInfo.html#a15a03ce5044cf0c6af77085777c4df7a">reg</a>.<aclass="code hl_variable"href="classrtabmap_1_1RegistrationInfo.html#a347f413d8a96dea23c4fdc6af2a1ddb5">covariance</a>.at<<spanclass="keywordtype">double</span>>(5,5)) && _info.<aclass="code hl_variable"href="classrtabmap_1_1OdometryInfo.html#a15a03ce5044cf0c6af77085777c4df7a">reg</a>.<aclass="code hl_variable"href="classrtabmap_1_1RegistrationInfo.html#a347f413d8a96dea23c4fdc6af2a1ddb5">covariance</a>.at<<spanclass="keywordtype">double</span>>(5,5)>0, <spanclass="stringliteral">"Rotational variance should not be null! (set to 1 if unknown)"</span>);</div>
<divclass="ttc"id="aULogger_8h_html"><divclass="ttname"><ahref="ULogger_8h.html">ULogger.h</a></div><divclass="ttdoc">ULogger class and convenient macros.</div></div>
<divclass="ttc"id="aUMath_8h_html_abc9c1a676bf1b33a7d2bc0452a04fed3"><divclass="ttname"><ahref="UMath_8h.html#abc9c1a676bf1b33a7d2bc0452a04fed3">uIsFinite</a></div><divclass="ttdeci">bool uIsFinite(const T &value)</div><divclass="ttdef"><b>Definition</b><ahref="UMath_8h_source.html#l00053">UMath.h:53</a></div></div>
<divclass="ttc"id="aclassrtabmap_1_1OdometryEvent_html"><divclass="ttname"><ahref="classrtabmap_1_1OdometryEvent.html">rtabmap::OdometryEvent</a></div><divclass="ttdoc">One processed frame with the pose the odometry integrated for it.</div><divclass="ttdef"><b>Definition</b><ahref="OdometryEvent_8h_source.html#l00056">OdometryEvent.h:57</a></div></div>
<divclass="ttc"id="aclassrtabmap_1_1OdometryEvent_html_a13be8ff5e398f9fd00d09aac8deddaba"><divclass="ttname"><ahref="classrtabmap_1_1OdometryEvent.html#a13be8ff5e398f9fd00d09aac8deddaba">rtabmap::OdometryEvent::covariance</a></div><divclass="ttdeci">const cv::Mat & covariance() const</div><divclass="ttdef"><b>Definition</b><ahref="OdometryEvent_8h_source.html#l00103">OdometryEvent.h:103</a></div></div>
<divclass="ttc"id="aclassrtabmap_1_1OdometryEvent_html_a19edd3196a5723053ba425186b1f3d33"><divclass="ttname"><ahref="classrtabmap_1_1OdometryEvent.html#a19edd3196a5723053ba425186b1f3d33">rtabmap::OdometryEvent::data</a></div><divclass="ttdeci">SensorData & data()</div><divclass="ttdef"><b>Definition</b><ahref="OdometryEvent_8h_source.html#l00097">OdometryEvent.h:97</a></div></div>
<divclass="ttc"id="aclassrtabmap_1_1OdometryEvent_html_a9d20ed607b8cc697c8aa5ca725e477a5"><divclass="ttname"><ahref="classrtabmap_1_1OdometryEvent.html#a9d20ed607b8cc697c8aa5ca725e477a5">rtabmap::OdometryEvent::info</a></div><divclass="ttdeci">const OdometryInfo & info() const</div><divclass="ttdef"><b>Definition</b><ahref="OdometryEvent_8h_source.html#l00126">OdometryEvent.h:126</a></div></div>
<divclass="ttc"id="aclassrtabmap_1_1OdometryEvent_html_aaf1fc834b6016a79b28883d20f336020"><divclass="ttname"><ahref="classrtabmap_1_1OdometryEvent.html#aaf1fc834b6016a79b28883d20f336020">rtabmap::OdometryEvent::OdometryEvent</a></div><divclass="ttdeci">OdometryEvent()</div><divclass="ttdoc">Creates an empty event, with an identity covariance.</div><divclass="ttdef"><b>Definition</b><ahref="OdometryEvent_8h_source.html#l00060">OdometryEvent.h:60</a></div></div>
<divclass="ttc"id="aclassrtabmap_1_1OdometryEvent_html_ac29fe21e2ba017148dae0dfd9d8c028c"><divclass="ttname"><ahref="classrtabmap_1_1OdometryEvent.html#ac29fe21e2ba017148dae0dfd9d8c028c">rtabmap::OdometryEvent::data</a></div><divclass="ttdeci">const SensorData & data() const</div><divclass="ttdef"><b>Definition</b><ahref="OdometryEvent_8h_source.html#l00099">OdometryEvent.h:99</a></div></div>
<divclass="ttc"id="aclassrtabmap_1_1OdometryEvent_html_ac7aaf59c0f005b6ac1497c870179fd25"><divclass="ttname"><ahref="classrtabmap_1_1OdometryEvent.html#ac7aaf59c0f005b6ac1497c870179fd25">rtabmap::OdometryEvent::pose</a></div><divclass="ttdeci">const Transform & pose() const</div><divclass="ttdef"><b>Definition</b><ahref="OdometryEvent_8h_source.html#l00101">OdometryEvent.h:101</a></div></div>
<divclass="ttc"id="aclassrtabmap_1_1OdometryEvent_html_adbac8609d65d32f38d1e724007091398"><divclass="ttname"><ahref="classrtabmap_1_1OdometryEvent.html#adbac8609d65d32f38d1e724007091398">rtabmap::OdometryEvent::velocity</a></div><divclass="ttdeci">std::vector< float > velocity() const</div><divclass="ttdoc">Linear and angular velocity, from the motion and the frame interval.</div><divclass="ttdef"><b>Definition</b><ahref="OdometryEvent_8h_source.html#l00109">OdometryEvent.h:109</a></div></div>
<divclass="ttc"id="aclassrtabmap_1_1OdometryInfo_html"><divclass="ttname"><ahref="classrtabmap_1_1OdometryInfo.html">rtabmap::OdometryInfo</a></div><divclass="ttdoc">What one Odometry iteration produced, beyond the pose.</div><divclass="ttdef"><b>Definition</b><ahref="OdometryInfo_8h_source.html#l00063">OdometryInfo.h:64</a></div></div>
<divclass="ttc"id="aclassrtabmap_1_1OdometryInfo_html_a15a03ce5044cf0c6af77085777c4df7a"><divclass="ttname"><ahref="classrtabmap_1_1OdometryInfo.html#a15a03ce5044cf0c6af77085777c4df7a">rtabmap::OdometryInfo::reg</a></div><divclass="ttdeci">RegistrationInfo reg</div><divclass="ttdoc">Registration result: matches, inliers, covariance, ICP indicators and timings.</div><divclass="ttdef"><b>Definition</b><ahref="OdometryInfo_8h_source.html#l00077">OdometryInfo.h:77</a></div></div>
<divclass="ttc"id="aclassrtabmap_1_1OdometryInfo_html_a2c12cf07f29ecbafe6eacfd2e987adb6"><divclass="ttname"><ahref="classrtabmap_1_1OdometryInfo.html#a2c12cf07f29ecbafe6eacfd2e987adb6">rtabmap::OdometryInfo::interval</a></div><divclass="ttdeci">double interval</div><divclass="ttdoc">Time since the previous processed frame (s); the divisor for velocities.</div><divclass="ttdef"><b>Definition</b><ahref="OdometryInfo_8h_source.html#l00095">OdometryInfo.h:95</a></div></div>
<divclass="ttc"id="aclassrtabmap_1_1OdometryInfo_html_ad4f09afa610091012c2edd7708d722c5"><divclass="ttname"><ahref="classrtabmap_1_1OdometryInfo.html#ad4f09afa610091012c2edd7708d722c5">rtabmap::OdometryInfo::transform</a></div><divclass="ttdeci">Transform transform</div><divclass="ttdoc">Motion since the previous frame, null when lost.</div><divclass="ttdef"><b>Definition</b><ahref="OdometryInfo_8h_source.html#l00096">OdometryInfo.h:96</a></div></div>
<divclass="ttc"id="aclassrtabmap_1_1OdometryResetEvent_html"><divclass="ttname"><ahref="classrtabmap_1_1OdometryResetEvent.html">rtabmap::OdometryResetEvent</a></div><divclass="ttdoc">Asks OdometryThread to restart the odometry from a given pose.</div><divclass="ttdef"><b>Definition</b><ahref="OdometryEvent_8h_source.html#l00144">OdometryEvent.h:145</a></div></div>
<divclass="ttc"id="aclassrtabmap_1_1OdometryResetEvent_html_ae756dea7a2e79fd918dd4c158085bc68"><divclass="ttname"><ahref="classrtabmap_1_1OdometryResetEvent.html#ae756dea7a2e79fd918dd4c158085bc68">rtabmap::OdometryResetEvent::getPose</a></div><divclass="ttdeci">const Transform & getPose() const</div><divclass="ttdef"><b>Definition</b><ahref="OdometryEvent_8h_source.html#l00152">OdometryEvent.h:152</a></div></div>
<divclass="ttc"id="aclassrtabmap_1_1SensorData_html"><divclass="ttname"><ahref="classrtabmap_1_1SensorData.html">rtabmap::SensorData</a></div><divclass="ttdoc">Container class for all sensor data captured at a specific time.</div><divclass="ttdef"><b>Definition</b><ahref="SensorData_8h_source.html#l00096">SensorData.h:97</a></div></div>
<divclass="ttc"id="aclassrtabmap_1_1Transform_html"><divclass="ttname"><ahref="classrtabmap_1_1Transform.html">rtabmap::Transform</a></div><divclass="ttdoc">Represents a 3D rigid body transformation (rotation + translation).</div><divclass="ttdef"><b>Definition</b><ahref="Transform_8h_source.html#l00052">Transform.h:53</a></div></div>
<liclass="footer">Generated by <ahref="https://www.doxygen.org/index.html"><imgclass="footer"src="doxygen.svg"width="104"height="31"alt="doxygen"/></a> 1.9.8 </li>