<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="l00081"name="l00081"></a><spanclass="lineno"> 81</span> UASSERT_MSG(<aclass="code hl_function"href="UMath_8h.html#abc9c1a676bf1b33a7d2bc0452a04fed3">uIsFinite</a>(covariance_.at<<spanclass="keywordtype">double</span>>(0,0)) && covariance_.at<<spanclass="keywordtype">double</span>>(0,0)>0, <aclass="code hl_function"href="UConversion_8h.html#a59ad5e2b3368d3dd19d73a24159388ce">uFormat</a>(<spanclass="stringliteral">"Linear covariance should not be null! Value=%f."</span>, covariance_.at<<spanclass="keywordtype">double</span>>(0,0)).c_str());</div>
<divclass="line"><aid="l00082"name="l00082"></a><spanclass="lineno"> 82</span> UASSERT_MSG(<aclass="code hl_function"href="UMath_8h.html#abc9c1a676bf1b33a7d2bc0452a04fed3">uIsFinite</a>(covariance_.at<<spanclass="keywordtype">double</span>>(1,1)) && covariance_.at<<spanclass="keywordtype">double</span>>(1,1)>0, <aclass="code hl_function"href="UConversion_8h.html#a59ad5e2b3368d3dd19d73a24159388ce">uFormat</a>(<spanclass="stringliteral">"Linear covariance should not be null! Value=%f."</span>, covariance_.at<<spanclass="keywordtype">double</span>>(1,1)).c_str());</div>
<divclass="line"><aid="l00083"name="l00083"></a><spanclass="lineno"> 83</span> UASSERT_MSG(<aclass="code hl_function"href="UMath_8h.html#abc9c1a676bf1b33a7d2bc0452a04fed3">uIsFinite</a>(covariance_.at<<spanclass="keywordtype">double</span>>(2,2)) && covariance_.at<<spanclass="keywordtype">double</span>>(2,2)>0, <aclass="code hl_function"href="UConversion_8h.html#a59ad5e2b3368d3dd19d73a24159388ce">uFormat</a>(<spanclass="stringliteral">"Linear covariance should not be null! Value=%f."</span>, covariance_.at<<spanclass="keywordtype">double</span>>(2,2)).c_str());</div>
<divclass="line"><aid="l00084"name="l00084"></a><spanclass="lineno"> 84</span> UASSERT_MSG(<aclass="code hl_function"href="UMath_8h.html#abc9c1a676bf1b33a7d2bc0452a04fed3">uIsFinite</a>(covariance_.at<<spanclass="keywordtype">double</span>>(3,3)) && covariance_.at<<spanclass="keywordtype">double</span>>(3,3)>0, <aclass="code hl_function"href="UConversion_8h.html#a59ad5e2b3368d3dd19d73a24159388ce">uFormat</a>(<spanclass="stringliteral">"Angular covariance should not be null! Value=%f (set to 9999 if unknown)."</span>, covariance_.at<<spanclass="keywordtype">double</span>>(3,3)).c_str());</div>
<divclass="line"><aid="l00085"name="l00085"></a><spanclass="lineno"> 85</span> UASSERT_MSG(<aclass="code hl_function"href="UMath_8h.html#abc9c1a676bf1b33a7d2bc0452a04fed3">uIsFinite</a>(covariance_.at<<spanclass="keywordtype">double</span>>(4,4)) && covariance_.at<<spanclass="keywordtype">double</span>>(4,4)>0, <aclass="code hl_function"href="UConversion_8h.html#a59ad5e2b3368d3dd19d73a24159388ce">uFormat</a>(<spanclass="stringliteral">"Angular covariance should not be null! Value=%f (set to 9999 if unknown)."</span>, covariance_.at<<spanclass="keywordtype">double</span>>(4,4)).c_str());</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>(covariance_.at<<spanclass="keywordtype">double</span>>(5,5)) && covariance_.at<<spanclass="keywordtype">double</span>>(5,5)>0, <aclass="code hl_function"href="UConversion_8h.html#a59ad5e2b3368d3dd19d73a24159388ce">uFormat</a>(<spanclass="stringliteral">"Angular covariance should not be null! Value=%f (set to 9999 if unknown)."</span>, covariance_.at<<spanclass="keywordtype">double</span>>(5,5)).c_str());</div>
<divclass="line"><aid="l00124"name="l00124"></a><spanclass="lineno"> 124</span> UASSERT_MSG(<aclass="code hl_function"href="UMath_8h.html#abc9c1a676bf1b33a7d2bc0452a04fed3">uIsFinite</a>(covariance_.at<<spanclass="keywordtype">double</span>>(0,0)) && covariance_.at<<spanclass="keywordtype">double</span>>(0,0)>0, <aclass="code hl_function"href="UConversion_8h.html#a59ad5e2b3368d3dd19d73a24159388ce">uFormat</a>(<spanclass="stringliteral">"Linear covariance should not be null! Value=%f."</span>, covariance_.at<<spanclass="keywordtype">double</span>>(0,0)).c_str());</div>
<divclass="line"><aid="l00125"name="l00125"></a><spanclass="lineno"> 125</span> UASSERT_MSG(<aclass="code hl_function"href="UMath_8h.html#abc9c1a676bf1b33a7d2bc0452a04fed3">uIsFinite</a>(covariance_.at<<spanclass="keywordtype">double</span>>(1,1)) && covariance_.at<<spanclass="keywordtype">double</span>>(1,1)>0, <aclass="code hl_function"href="UConversion_8h.html#a59ad5e2b3368d3dd19d73a24159388ce">uFormat</a>(<spanclass="stringliteral">"Linear covariance should not be null! Value=%f."</span>, covariance_.at<<spanclass="keywordtype">double</span>>(1,1)).c_str());</div>
<divclass="line"><aid="l00126"name="l00126"></a><spanclass="lineno"> 126</span> UASSERT_MSG(<aclass="code hl_function"href="UMath_8h.html#abc9c1a676bf1b33a7d2bc0452a04fed3">uIsFinite</a>(covariance_.at<<spanclass="keywordtype">double</span>>(2,2)) && covariance_.at<<spanclass="keywordtype">double</span>>(2,2)>0, <aclass="code hl_function"href="UConversion_8h.html#a59ad5e2b3368d3dd19d73a24159388ce">uFormat</a>(<spanclass="stringliteral">"Linear covariance should not be null! Value=%f."</span>, covariance_.at<<spanclass="keywordtype">double</span>>(2,2)).c_str());</div>
<divclass="line"><aid="l00127"name="l00127"></a><spanclass="lineno"> 127</span> UASSERT_MSG(<aclass="code hl_function"href="UMath_8h.html#abc9c1a676bf1b33a7d2bc0452a04fed3">uIsFinite</a>(covariance_.at<<spanclass="keywordtype">double</span>>(3,3)) && covariance_.at<<spanclass="keywordtype">double</span>>(3,3)>0, <aclass="code hl_function"href="UConversion_8h.html#a59ad5e2b3368d3dd19d73a24159388ce">uFormat</a>(<spanclass="stringliteral">"Angular covariance should not be null! Value=%f (set to 9999 if unknown)."</span>, covariance_.at<<spanclass="keywordtype">double</span>>(3,3)).c_str());</div>
<divclass="line"><aid="l00128"name="l00128"></a><spanclass="lineno"> 128</span> UASSERT_MSG(<aclass="code hl_function"href="UMath_8h.html#abc9c1a676bf1b33a7d2bc0452a04fed3">uIsFinite</a>(covariance_.at<<spanclass="keywordtype">double</span>>(4,4)) && covariance_.at<<spanclass="keywordtype">double</span>>(4,4)>0, <aclass="code hl_function"href="UConversion_8h.html#a59ad5e2b3368d3dd19d73a24159388ce">uFormat</a>(<spanclass="stringliteral">"Angular covariance should not be null! Value=%f (set to 9999 if unknown)."</span>, covariance_.at<<spanclass="keywordtype">double</span>>(4,4)).c_str());</div>
<divclass="line"><aid="l00129"name="l00129"></a><spanclass="lineno"> 129</span> UASSERT_MSG(<aclass="code hl_function"href="UMath_8h.html#abc9c1a676bf1b33a7d2bc0452a04fed3">uIsFinite</a>(covariance_.at<<spanclass="keywordtype">double</span>>(5,5)) && covariance_.at<<spanclass="keywordtype">double</span>>(5,5)>0, <aclass="code hl_function"href="UConversion_8h.html#a59ad5e2b3368d3dd19d73a24159388ce">uFormat</a>(<spanclass="stringliteral">"Angular covariance should not be null! Value=%f (set to 9999 if unknown)."</span>, covariance_.at<<spanclass="keywordtype">double</span>>(5,5)).c_str());</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_1Landmark_html"><divclass="ttname"><ahref="classrtabmap_1_1Landmark.html">rtabmap::Landmark</a></div><divclass="ttdoc">Optimized pose of a visual landmark (e.g. ArUco/AprilTag) in the map.</div><divclass="ttdef"><b>Definition</b><ahref="Landmark_8h_source.html#l00056">Landmark.h:57</a></div></div>
<divclass="ttc"id="aclassrtabmap_1_1Landmark_html_a1c1e20cccc5f659743ba48c8afe1a8a0"><divclass="ttname"><ahref="classrtabmap_1_1Landmark.html#a1c1e20cccc5f659743ba48c8afe1a8a0">rtabmap::Landmark::covariance</a></div><divclass="ttdeci">const cv::Mat & covariance() const</div><divclass="ttdef"><b>Definition</b><ahref="Landmark_8h_source.html#l00103">Landmark.h:103</a></div></div>
<divclass="ttc"id="aclassrtabmap_1_1Landmark_html_a1fda87c27ac931dcf9815921b53c1f19"><divclass="ttname"><ahref="classrtabmap_1_1Landmark.html#a1fda87c27ac931dcf9815921b53c1f19">rtabmap::Landmark::Landmark</a></div><divclass="ttdeci">Landmark(const int &id, const float &size, const Transform &pose, const cv::Mat &covariance)</div><divclass="ttdoc">Constructs a landmark with size, pose, and covariance.</div><divclass="ttdef"><b>Definition</b><ahref="Landmark_8h_source.html#l00072">Landmark.h:72</a></div></div>
<divclass="ttc"id="aclassrtabmap_1_1Landmark_html_a2b5a5cbdb313813e3bb473a05b1145e2"><divclass="ttname"><ahref="classrtabmap_1_1Landmark.html#a2b5a5cbdb313813e3bb473a05b1145e2">rtabmap::Landmark::id</a></div><divclass="ttdeci">const int & id() const</div><divclass="ttdef"><b>Definition</b><ahref="Landmark_8h_source.html#l00097">Landmark.h:97</a></div></div>
<divclass="ttc"id="aclassrtabmap_1_1Landmark_html_a6ba2b53d996e0fa62a8023917e515a06"><divclass="ttname"><ahref="classrtabmap_1_1Landmark.html#a6ba2b53d996e0fa62a8023917e515a06">rtabmap::Landmark::Landmark</a></div><divclass="ttdeci">Landmark()</div><divclass="ttdoc">Default-constructs an invalid landmark (id == 0).</div><divclass="ttdef"><b>Definition</b><ahref="Landmark_8h_source.html#l00060">Landmark.h:60</a></div></div>
<divclass="ttc"id="aclassrtabmap_1_1Landmark_html_ac6bfc77e153b0877c4c1cc3d97327a88"><divclass="ttname"><ahref="classrtabmap_1_1Landmark.html#ac6bfc77e153b0877c4c1cc3d97327a88">rtabmap::Landmark::pose</a></div><divclass="ttdeci">const Transform & pose() const</div><divclass="ttdef"><b>Definition</b><ahref="Landmark_8h_source.html#l00101">Landmark.h:101</a></div></div>
<divclass="ttc"id="aclassrtabmap_1_1Landmark_html_acba351c01c619a0d78e52e7bfca94111"><divclass="ttname"><ahref="classrtabmap_1_1Landmark.html#acba351c01c619a0d78e52e7bfca94111">rtabmap::Landmark::size</a></div><divclass="ttdeci">const float & size() const</div><divclass="ttdef"><b>Definition</b><ahref="Landmark_8h_source.html#l00099">Landmark.h:99</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>
<divclass="ttc"id="aclassrtabmap_1_1Transform_html_a0d6a1985391a45de4fe208e58c51b9d2"><divclass="ttname"><ahref="classrtabmap_1_1Transform.html#a0d6a1985391a45de4fe208e58c51b9d2">rtabmap::Transform::isNull</a></div><divclass="ttdeci">bool isNull() const</div><divclass="ttdoc">Checks whether the transform is null (all zeros).</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>