aboutsummaryrefslogtreecommitdiff
path: root/docs/doxygen/nel/a02333.html
diff options
context:
space:
mode:
Diffstat (limited to 'docs/doxygen/nel/a02333.html')
-rw-r--r--docs/doxygen/nel/a02333.html1645
1 files changed, 1645 insertions, 0 deletions
diff --git a/docs/doxygen/nel/a02333.html b/docs/doxygen/nel/a02333.html
new file mode 100644
index 00000000..84bfad51
--- /dev/null
+++ b/docs/doxygen/nel/a02333.html
@@ -0,0 +1,1645 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>NeL: NLPACS::CChain class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.3.6 -->
+<div class="qindex"> <form class="search" action="search.php" method="get">
+<a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Data&nbsp;Structures</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Data&nbsp;Fields</a> | <a class="qindex" href="globals.html">Globals</a> | <a class="qindex" href="pages.html">Related&nbsp;Pages</a> | <span class="search"><u>S</u>earch&nbsp;for&nbsp;<input class="search" type="text" name="query" value="" size="20" accesskey="s"/></span></form></div>
+<h1>NLPACS::CChain Class Reference</h1><code>#include &lt;<a class="el" href="a05540.html">chain.h</a>&gt;</code>
+<p>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+A list of ordered chains of vertices, delimiting 2 surfaces. <dl compact><dt><b>Author:</b></dt><dd>Benjamin Legros <p>
+Nevrax France </dd></dl>
+<dl compact><dt><b>Date:</b></dt><dd>2001 </dd></dl>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a05540.html#l00210">210</a> of file <a class="el" href="a05540.html">chain.h</a>.<table border=0 cellpadding=0 cellspacing=0>
+<tr><td></td></tr>
+<tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02333.html#NLPACS_1_1CChaina0">CChain</a> ()</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor. <a href="#NLPACS_1_1CChaina0"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a10">sint32</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02333.html#NLPACS_1_1CChaina1">getBorderChainIndex</a> () const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets the index of the chain on border (in the local retriever object.). <a href="#NLPACS_1_1CChaina1"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a10">sint32</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02333.html#NLPACS_1_1CChaina2">getLeft</a> () const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the left surface id. <a href="#NLPACS_1_1CChaina2"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a7">uint8</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02333.html#NLPACS_1_1CChaina3">getLeftLoop</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a7">uint8</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02333.html#NLPACS_1_1CChaina4">getLeftLoopIndex</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>float&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02333.html#NLPACS_1_1CChaina5">getLength</a> () const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">returns the legnth of the whole chain. <a href="#NLPACS_1_1CChaina5"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a10">sint32</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02333.html#NLPACS_1_1CChaina6">getRight</a> () const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the right surface id. <a href="#NLPACS_1_1CChaina6"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a7">uint8</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02333.html#NLPACS_1_1CChaina7">getRightLoop</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a7">uint8</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02333.html#NLPACS_1_1CChaina8">getRightLoopIndex</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a9">uint16</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02333.html#NLPACS_1_1CChaina9">getStartTip</a> () const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the id of the start tip of the chain. <a href="#NLPACS_1_1CChaina9"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a9">uint16</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02333.html#NLPACS_1_1CChaina10">getStopTip</a> () const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the id of the end tip of the chain. <a href="#NLPACS_1_1CChaina10"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a9">uint16</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02333.html#NLPACS_1_1CChaina11">getSubChain</a> (<a class="el" href="a04558.html#a15">uint</a> n) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the id of the nth ordered chain that composes the chain. <a href="#NLPACS_1_1CChaina11"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>const std::vector&lt; <a class="el" href="a04558.html#a9">uint16</a> &gt; &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02333.html#NLPACS_1_1CChaina12">getSubChains</a> () const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns a vector of ordered chain ids that compose the entire chain. <a href="#NLPACS_1_1CChaina12"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02333.html#NLPACS_1_1CChaina13">isBorderChain</a> () const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true iff the chaion is a border chain. <a href="#NLPACS_1_1CChaina13"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02333.html#NLPACS_1_1CChaina14">serial</a> (<a class="el" href="a02270.html">NLMISC::IStream</a> &amp;f)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Serialises the <a class="el" href="a02333.html">CChain</a> object. <a href="#NLPACS_1_1CChaina14"></a><br><br></td></tr>
+<tr><td colspan=2><br><h2>Static Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a10">sint32</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02333.html#NLPACS_1_1CChaine0">convertBorderChainId</a> (<a class="el" href="a04558.html#a10">sint32</a> <a class="el" href="a04223.html#a564">id</a>)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Converts the surf id into the real index to the link (in the BorderChainLinks of the <a class="el" href="a03333.html">CRetrieverInstance</a>.). <a href="#NLPACS_1_1CChaine0"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a10">sint32</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02333.html#NLPACS_1_1CChaine1">getDummyBorderChainId</a> ()</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true iff the chaion is a border chain. <a href="#NLPACS_1_1CChaine1"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02333.html#NLPACS_1_1CChaine2">isBorderChainId</a> (<a class="el" href="a04558.html#a10">sint32</a> <a class="el" href="a04223.html#a564">id</a>)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true iff the given id corresponds to a link on the border. <a href="#NLPACS_1_1CChaine2"></a><br><br></td></tr>
+<tr><td colspan=2><br><h2>Protected Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03662.html">CVector2s</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02333.html#NLPACS_1_1CChainb0">getStartVector</a> (std::vector&lt; <a class="el" href="a03027.html">COrderedChain</a> &gt; &amp;ochains)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03662.html">CVector2s</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02333.html#NLPACS_1_1CChainb1">getStopVector</a> (std::vector&lt; <a class="el" href="a03027.html">COrderedChain</a> &gt; &amp;ochains)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02333.html#NLPACS_1_1CChainb2">make</a> (const std::vector&lt; <a class="el" href="a03128.html">NLMISC::CVector</a> &gt; &amp;vertices, <a class="el" href="a04558.html#a10">sint32</a> left, <a class="el" href="a04558.html#a10">sint32</a> right, std::vector&lt; <a class="el" href="a03027.html">COrderedChain</a> &gt; &amp;chains, <a class="el" href="a04558.html#a9">uint16</a> thisId, std::vector&lt; <a class="el" href="a03028.html">COrderedChain3f</a> &gt; &amp;fullChains, std::vector&lt; <a class="el" href="a04558.html#a15">uint</a> &gt; &amp;useOChainId)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Build the whole surface from a vector of CVector and the left and right surfaces. <a href="#NLPACS_1_1CChainb2"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02333.html#NLPACS_1_1CChainb3">setBorderChainIndex</a> (<a class="el" href="a04558.html#a10">sint32</a> <a class="el" href="a04223.html#a564">id</a>)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02333.html#NLPACS_1_1CChainb4">setLoopIndexes</a> (<a class="el" href="a04558.html#a10">sint32</a> surface, <a class="el" href="a04558.html#a15">uint</a> loop, <a class="el" href="a04558.html#a15">uint</a> loopIndex)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02333.html#NLPACS_1_1CChainb5">setStartVector</a> (const <a class="el" href="a03662.html">CVector2s</a> &amp;<a class="el" href="a04223.html#a576">v</a>, std::vector&lt; <a class="el" href="a03027.html">COrderedChain</a> &gt; &amp;ochains)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02333.html#NLPACS_1_1CChainb6">setStopVector</a> (const <a class="el" href="a03662.html">CVector2s</a> &amp;<a class="el" href="a04223.html#a576">v</a>, std::vector&lt; <a class="el" href="a03027.html">COrderedChain</a> &gt; &amp;ochains)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02333.html#NLPACS_1_1CChainb7">unify</a> (std::vector&lt; <a class="el" href="a03027.html">COrderedChain</a> &gt; &amp;ochains)</td></tr>
+
+<tr><td colspan=2><br><h2>Protected Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a10">sint32</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02333.html#NLPACS_1_1CChainp0">_Left</a></td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The surface on the left of the chain. <a href="#NLPACS_1_1CChainp0"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a7">uint8</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02333.html#NLPACS_1_1CChainp1">_LeftLoop</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a7">uint8</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02333.html#NLPACS_1_1CChainp2">_LeftLoopIndex</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>float&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02333.html#NLPACS_1_1CChainp3">_Length</a></td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The length of the whole chain. <a href="#NLPACS_1_1CChainp3"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a10">sint32</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02333.html#NLPACS_1_1CChainp4">_Right</a></td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The surface on the right of the chain. <a href="#NLPACS_1_1CChainp4"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a7">uint8</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02333.html#NLPACS_1_1CChainp5">_RightLoop</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a7">uint8</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02333.html#NLPACS_1_1CChainp6">_RightLoopIndex</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a9">uint16</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02333.html#NLPACS_1_1CChainp7">_StartTip</a></td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The tips indexes in the retriever object. <a href="#NLPACS_1_1CChainp7"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a9">uint16</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02333.html#NLPACS_1_1CChainp8">_StopTip</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>std::vector&lt; <a class="el" href="a04558.html#a9">uint16</a> &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02333.html#NLPACS_1_1CChainp9">_SubChains</a></td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The list of ordered chains that compose the chain. <a href="#NLPACS_1_1CChainp9"></a><br><br></td></tr>
+<tr><td colspan=2><br><h2>Friends</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>class&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02333.html#NLPACS_1_1CChainn0">CLocalRetriever</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>class&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02333.html#NLPACS_1_1CChainn1">CRetrievableSurface</a></td></tr>
+
+</table>
+<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="NLPACS_1_1CChaina0" doxytag="NLPACS::CChain::CChain" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> NLPACS::CChain::CChain </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Constructor.
+<p>
+
+<p>
+Definition at line <a class="el" href="a05540.html#l00259">259</a> of file <a class="el" href="a05540.html">chain.h</a>.
+<p>
+References <a class="el" href="a05540.html#l00220">_Left</a>, <a class="el" href="a05540.html#l00232">_LeftLoop</a>, <a class="el" href="a05540.html#l00232">_LeftLoopIndex</a>, <a class="el" href="a05540.html#l00223">_Right</a>, <a class="el" href="a05540.html#l00233">_RightLoop</a>, <a class="el" href="a05540.html#l00233">_RightLoopIndex</a>, <a class="el" href="a05540.html#l00226">_StartTip</a>, and <a class="el" href="a05540.html#l00227">_StopTip</a>.
+<p>
+<div class="fragment"><pre>00259 : <a class="code" href="a02333.html#NLPACS_1_1CChainp0">_Left</a>(-1), <a class="code" href="a02333.html#NLPACS_1_1CChainp4">_Right</a>(-1), <a class="code" href="a02333.html#NLPACS_1_1CChainp7">_StartTip</a>(0xffff), <a class="code" href="a02333.html#NLPACS_1_1CChainp8">_StopTip</a>(0xffff), <a class="code" href="a02333.html#NLPACS_1_1CChainp3">_Length</a>(0.0f),
+00260 <a class="code" href="a02333.html#NLPACS_1_1CChainp1">_LeftLoop</a>(0), <a class="code" href="a02333.html#NLPACS_1_1CChainp2">_LeftLoopIndex</a>(0), <a class="code" href="a02333.html#NLPACS_1_1CChainp5">_RightLoop</a>(0), <a class="code" href="a02333.html#NLPACS_1_1CChainp6">_RightLoopIndex</a>(0) {}
+</pre></div> </td>
+ </tr>
+</table>
+<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="NLPACS_1_1CChaine0" doxytag="NLPACS::CChain::convertBorderChainId" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a10">sint32</a> NLPACS::CChain::convertBorderChainId </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a10">sint32</a>&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>id</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, static]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Converts the surf id into the real index to the link (in the BorderChainLinks of the <a class="el" href="a03333.html">CRetrieverInstance</a>.).
+<p>
+
+<p>
+Definition at line <a class="el" href="a05540.html#l00291">291</a> of file <a class="el" href="a05540.html">chain.h</a>.
+<p>
+References <a class="el" href="a05981.html#l00099">sint32</a>.
+<p>
+Referenced by <a class="el" href="a05540.html#l00282">getBorderChainIndex()</a>, <a class="el" href="a05540.html#l00297">getDummyBorderChainId()</a>, and <a class="el" href="a05540.html#l00254">setBorderChainIndex()</a>.
+<p>
+<div class="fragment"><pre>00291 { <span class="keywordflow">return</span> -(<span class="keywordtype">id</span>+256); }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLPACS_1_1CChaina1" doxytag="NLPACS::CChain::getBorderChainIndex" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a10">sint32</a> NLPACS::CChain::getBorderChainIndex </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Gets the index of the chain on border (in the local retriever object.).
+<p>
+
+<p>
+Definition at line <a class="el" href="a05540.html#l00282">282</a> of file <a class="el" href="a05540.html">chain.h</a>.
+<p>
+References <a class="el" href="a05540.html#l00223">_Right</a>, <a class="el" href="a05540.html#l00291">convertBorderChainId()</a>, <a class="el" href="a05540.html#l00288">isBorderChainId()</a>, and <a class="el" href="a05981.html#l00099">sint32</a>.
+<p>
+Referenced by <a class="el" href="a05761.html#l00153">NLPACS::CGlobalRetriever::check()</a>, and <a class="el" href="a05761.html#l01177">NLPACS::CGlobalRetriever::findCollisionChains()</a>.
+<p>
+<div class="fragment"><pre>00283 {
+00284 <span class="keywordflow">return</span> (<a class="code" href="a02333.html#NLPACS_1_1CChaine2">isBorderChainId</a>(_Right)) ? <a class="code" href="a02333.html#NLPACS_1_1CChaine0">convertBorderChainId</a>(_Right) : -1;
+00285 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLPACS_1_1CChaine1" doxytag="NLPACS::CChain::getDummyBorderChainId" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a10">sint32</a> NLPACS::CChain::getDummyBorderChainId </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, static]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Returns true iff the chaion is a border chain.
+<p>
+
+<p>
+Definition at line <a class="el" href="a05540.html#l00297">297</a> of file <a class="el" href="a05540.html">chain.h</a>.
+<p>
+References <a class="el" href="a05540.html#l00291">convertBorderChainId()</a>, and <a class="el" href="a05981.html#l00099">sint32</a>.
+<p>
+<div class="fragment"><pre>00297 { <span class="keywordflow">return</span> <a class="code" href="a02333.html#NLPACS_1_1CChaine0">convertBorderChainId</a>(0); }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLPACS_1_1CChaina2" doxytag="NLPACS::CChain::getLeft" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a10">sint32</a> NLPACS::CChain::getLeft </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Returns the left surface id.
+<p>
+
+<p>
+Definition at line <a class="el" href="a05540.html#l00269">269</a> of file <a class="el" href="a05540.html">chain.h</a>.
+<p>
+References <a class="el" href="a05540.html#l00220">_Left</a>, and <a class="el" href="a05981.html#l00099">sint32</a>.
+<p>
+Referenced by <a class="el" href="a05761.html#l00153">NLPACS::CGlobalRetriever::check()</a>, <a class="el" href="a05929.html#l00822">NLPACS::CLocalRetriever::computeTopologies()</a>, <a class="el" href="a05929.html#l00248">NLPACS::CLocalRetriever::dumpSurface()</a>, <a class="el" href="a05761.html#l00855">NLPACS::CGlobalRetriever::findAStarPath()</a>, <a class="el" href="a05929.html#l01576">NLPACS::CLocalRetriever::findPath()</a>, <a class="el" href="a05761.html#l00275">NLPACS::CGlobalRetriever::getBorders()</a>, and <a class="el" href="a05929.html#l00960">NLPACS::CLocalRetriever::insurePosition()</a>.
+<p>
+<div class="fragment"><pre>00269 { <span class="keywordflow">return</span> <a class="code" href="a02333.html#NLPACS_1_1CChainp0">_Left</a>; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLPACS_1_1CChaina3" doxytag="NLPACS::CChain::getLeftLoop" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a7">uint8</a> NLPACS::CChain::getLeftLoop </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a05540.html#l00270">270</a> of file <a class="el" href="a05540.html">chain.h</a>.
+<p>
+References <a class="el" href="a05540.html#l00232">_LeftLoop</a>, and <a class="el" href="a05981.html#l00096">uint8</a>.
+<p>
+Referenced by <a class="el" href="a05929.html#l01576">NLPACS::CLocalRetriever::findPath()</a>.
+<p>
+<div class="fragment"><pre>00270 { <span class="keywordflow">return</span> <a class="code" href="a02333.html#NLPACS_1_1CChainp1">_LeftLoop</a>; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLPACS_1_1CChaina4" doxytag="NLPACS::CChain::getLeftLoopIndex" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a7">uint8</a> NLPACS::CChain::getLeftLoopIndex </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a05540.html#l00271">271</a> of file <a class="el" href="a05540.html">chain.h</a>.
+<p>
+References <a class="el" href="a05540.html#l00232">_LeftLoopIndex</a>, and <a class="el" href="a05981.html#l00096">uint8</a>.
+<p>
+Referenced by <a class="el" href="a05929.html#l01576">NLPACS::CLocalRetriever::findPath()</a>.
+<p>
+<div class="fragment"><pre>00271 { <span class="keywordflow">return</span> <a class="code" href="a02333.html#NLPACS_1_1CChainp2">_LeftLoopIndex</a>; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLPACS_1_1CChaina5" doxytag="NLPACS::CChain::getLength" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> float NLPACS::CChain::getLength </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+returns the legnth of the whole chain.
+<p>
+
+<p>
+Definition at line <a class="el" href="a05540.html#l00279">279</a> of file <a class="el" href="a05540.html">chain.h</a>.
+<p>
+Referenced by <a class="el" href="a05929.html#l01576">NLPACS::CLocalRetriever::findPath()</a>, and <a class="el" href="a05761.html#l01062">NLPACS::CGlobalRetriever::findPath()</a>.
+<p>
+<div class="fragment"><pre>00279 { <span class="keywordflow">return</span> <a class="code" href="a02333.html#NLPACS_1_1CChainp3">_Length</a>; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLPACS_1_1CChaina6" doxytag="NLPACS::CChain::getRight" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a10">sint32</a> NLPACS::CChain::getRight </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Returns the right surface id.
+<p>
+
+<p>
+Definition at line <a class="el" href="a05540.html#l00274">274</a> of file <a class="el" href="a05540.html">chain.h</a>.
+<p>
+References <a class="el" href="a05540.html#l00223">_Right</a>, and <a class="el" href="a05981.html#l00099">sint32</a>.
+<p>
+Referenced by <a class="el" href="a05761.html#l00153">NLPACS::CGlobalRetriever::check()</a>, <a class="el" href="a05929.html#l00822">NLPACS::CLocalRetriever::computeTopologies()</a>, <a class="el" href="a05929.html#l00248">NLPACS::CLocalRetriever::dumpSurface()</a>, <a class="el" href="a05761.html#l00855">NLPACS::CGlobalRetriever::findAStarPath()</a>, and <a class="el" href="a05761.html#l00275">NLPACS::CGlobalRetriever::getBorders()</a>.
+<p>
+<div class="fragment"><pre>00274 { <span class="keywordflow">return</span> <a class="code" href="a02333.html#NLPACS_1_1CChainp4">_Right</a>; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLPACS_1_1CChaina7" doxytag="NLPACS::CChain::getRightLoop" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a7">uint8</a> NLPACS::CChain::getRightLoop </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a05540.html#l00275">275</a> of file <a class="el" href="a05540.html">chain.h</a>.
+<p>
+References <a class="el" href="a05540.html#l00233">_RightLoop</a>, and <a class="el" href="a05981.html#l00096">uint8</a>.
+<p>
+Referenced by <a class="el" href="a05929.html#l01576">NLPACS::CLocalRetriever::findPath()</a>.
+<p>
+<div class="fragment"><pre>00275 { <span class="keywordflow">return</span> <a class="code" href="a02333.html#NLPACS_1_1CChainp5">_RightLoop</a>; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLPACS_1_1CChaina8" doxytag="NLPACS::CChain::getRightLoopIndex" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a7">uint8</a> NLPACS::CChain::getRightLoopIndex </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a05540.html#l00276">276</a> of file <a class="el" href="a05540.html">chain.h</a>.
+<p>
+References <a class="el" href="a05540.html#l00233">_RightLoopIndex</a>, and <a class="el" href="a05981.html#l00096">uint8</a>.
+<p>
+Referenced by <a class="el" href="a05929.html#l01576">NLPACS::CLocalRetriever::findPath()</a>.
+<p>
+<div class="fragment"><pre>00276 { <span class="keywordflow">return</span> <a class="code" href="a02333.html#NLPACS_1_1CChainp6">_RightLoopIndex</a>; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLPACS_1_1CChaina9" doxytag="NLPACS::CChain::getStartTip" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a9">uint16</a> NLPACS::CChain::getStartTip </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Returns the id of the start tip of the chain.
+<p>
+
+<p>
+Definition at line <a class="el" href="a05540.html#l00300">300</a> of file <a class="el" href="a05540.html">chain.h</a>.
+<p>
+References <a class="el" href="a05540.html#l00226">_StartTip</a>, and <a class="el" href="a05981.html#l00098">uint16</a>.
+<p>
+Referenced by <a class="el" href="a05929.html#l00248">NLPACS::CLocalRetriever::dumpSurface()</a>.
+<p>
+<div class="fragment"><pre>00300 { <span class="keywordflow">return</span> <a class="code" href="a02333.html#NLPACS_1_1CChainp7">_StartTip</a>; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLPACS_1_1CChainb0" doxytag="NLPACS::CChain::getStartVector" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a03662.html">NLPACS::CVector2s</a> NLPACS::CChain::getStartVector </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">std::vector&lt; <a class="el" href="a03027.html">COrderedChain</a> &gt; &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>ochains</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [protected]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a05539.html#l00339">339</a> of file <a class="el" href="a05539.html">chain.cpp</a>.
+<p>
+References <a class="el" href="a05540.html#l00217">_SubChains</a>.
+<p>
+<div class="fragment"><pre>00340 {
+00341 <span class="keywordflow">if</span> (ochains[<a class="code" href="a02333.html#NLPACS_1_1CChainp9">_SubChains</a>.front()].isForward())
+00342 <span class="keywordflow">return</span> ochains[<a class="code" href="a02333.html#NLPACS_1_1CChainp9">_SubChains</a>.front()]._Vertices.front();
+00343 <span class="keywordflow">else</span>
+00344 <span class="keywordflow">return</span> ochains[<a class="code" href="a02333.html#NLPACS_1_1CChainp9">_SubChains</a>.front()]._Vertices.back();
+00345 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLPACS_1_1CChaina10" doxytag="NLPACS::CChain::getStopTip" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a9">uint16</a> NLPACS::CChain::getStopTip </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Returns the id of the end tip of the chain.
+<p>
+
+<p>
+Definition at line <a class="el" href="a05540.html#l00303">303</a> of file <a class="el" href="a05540.html">chain.h</a>.
+<p>
+References <a class="el" href="a05540.html#l00227">_StopTip</a>, and <a class="el" href="a05981.html#l00098">uint16</a>.
+<p>
+Referenced by <a class="el" href="a05929.html#l00248">NLPACS::CLocalRetriever::dumpSurface()</a>.
+<p>
+<div class="fragment"><pre>00303 { <span class="keywordflow">return</span> <a class="code" href="a02333.html#NLPACS_1_1CChainp8">_StopTip</a>; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLPACS_1_1CChainb1" doxytag="NLPACS::CChain::getStopVector" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a03662.html">NLPACS::CVector2s</a> NLPACS::CChain::getStopVector </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">std::vector&lt; <a class="el" href="a03027.html">COrderedChain</a> &gt; &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>ochains</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [protected]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a05539.html#l00348">348</a> of file <a class="el" href="a05539.html">chain.cpp</a>.
+<p>
+References <a class="el" href="a05540.html#l00217">_SubChains</a>.
+<p>
+<div class="fragment"><pre>00349 {
+00350 <span class="keywordflow">if</span> (ochains[<a class="code" href="a02333.html#NLPACS_1_1CChainp9">_SubChains</a>.back()].isForward())
+00351 <span class="keywordflow">return</span> ochains[<a class="code" href="a02333.html#NLPACS_1_1CChainp9">_SubChains</a>.back()]._Vertices.back();
+00352 <span class="keywordflow">else</span>
+00353 <span class="keywordflow">return</span> ochains[<a class="code" href="a02333.html#NLPACS_1_1CChainp9">_SubChains</a>.back()]._Vertices.front();
+00354 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLPACS_1_1CChaina11" doxytag="NLPACS::CChain::getSubChain" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a9">uint16</a> NLPACS::CChain::getSubChain </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a15">uint</a>&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>n</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Returns the id of the nth ordered chain that composes the chain.
+<p>
+
+<p>
+Definition at line <a class="el" href="a05540.html#l00266">266</a> of file <a class="el" href="a05540.html">chain.h</a>.
+<p>
+References <a class="el" href="a05540.html#l00217">_SubChains</a>, <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05981.html#l00098">uint16</a>.
+<p>
+Referenced by <a class="el" href="a05761.html#l00153">NLPACS::CGlobalRetriever::check()</a>, <a class="el" href="a05929.html#l00291">NLPACS::CLocalRetriever::distanceToBorder()</a>, <a class="el" href="a05929.html#l00248">NLPACS::CLocalRetriever::dumpSurface()</a>, <a class="el" href="a05761.html#l01062">NLPACS::CGlobalRetriever::findPath()</a>, <a class="el" href="a05930.html#l00257">NLPACS::CLocalRetriever::CIterator::get3d()</a>, <a class="el" href="a05929.html#l00960">NLPACS::CLocalRetriever::insurePosition()</a>, <a class="el" href="a05522.html#l00524">NLPACS::linkExteriorToInterior()</a>, <a class="el" href="a05930.html#l00250">NLPACS::CLocalRetriever::CIterator::operator *()</a>, and <a class="el" href="a05930.html#l00272">NLPACS::CLocalRetriever::CIterator::setupIndex()</a>.
+<p>
+<div class="fragment"><pre>00266 { <span class="keywordflow">return</span> <a class="code" href="a02333.html#NLPACS_1_1CChainp9">_SubChains</a>[n]; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLPACS_1_1CChaina12" doxytag="NLPACS::CChain::getSubChains" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> const std::vector&lt;<a class="el" href="a04558.html#a9">uint16</a>&gt;&amp; NLPACS::CChain::getSubChains </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Returns a vector of ordered chain ids that compose the entire chain.
+<p>
+
+<p>
+Definition at line <a class="el" href="a05540.html#l00263">263</a> of file <a class="el" href="a05540.html">chain.h</a>.
+<p>
+References <a class="el" href="a05540.html#l00217">_SubChains</a>.
+<p>
+Referenced by <a class="el" href="a05761.html#l00153">NLPACS::CGlobalRetriever::check()</a>, <a class="el" href="a05929.html#l00291">NLPACS::CLocalRetriever::distanceToBorder()</a>, <a class="el" href="a05929.html#l00248">NLPACS::CLocalRetriever::dumpSurface()</a>, <a class="el" href="a05930.html#l00265">NLPACS::CLocalRetriever::CIterator::end()</a>, <a class="el" href="a05761.html#l01062">NLPACS::CGlobalRetriever::findPath()</a>, <a class="el" href="a05929.html#l00960">NLPACS::CLocalRetriever::insurePosition()</a>, <a class="el" href="a05522.html#l00524">NLPACS::linkExteriorToInterior()</a>, <a class="el" href="a05930.html#l00223">NLPACS::CLocalRetriever::CIterator::operator++()</a>, and <a class="el" href="a05930.html#l00272">NLPACS::CLocalRetriever::CIterator::setupIndex()</a>.
+<p>
+<div class="fragment"><pre>00263 { <span class="keywordflow">return</span> <a class="code" href="a02333.html#NLPACS_1_1CChainp9">_SubChains</a>; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLPACS_1_1CChaina13" doxytag="NLPACS::CChain::isBorderChain" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool NLPACS::CChain::isBorderChain </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Returns true iff the chaion is a border chain.
+<p>
+
+<p>
+Definition at line <a class="el" href="a05540.html#l00294">294</a> of file <a class="el" href="a05540.html">chain.h</a>.
+<p>
+References <a class="el" href="a05540.html#l00223">_Right</a>, and <a class="el" href="a05540.html#l00288">isBorderChainId()</a>.
+<p>
+Referenced by <a class="el" href="a05761.html#l01177">NLPACS::CGlobalRetriever::findCollisionChains()</a>, and <a class="el" href="a05761.html#l00275">NLPACS::CGlobalRetriever::getBorders()</a>.
+<p>
+<div class="fragment"><pre>00294 { <span class="keywordflow">return</span> <a class="code" href="a02333.html#NLPACS_1_1CChaine2">isBorderChainId</a>(_Right); }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLPACS_1_1CChaine2" doxytag="NLPACS::CChain::isBorderChainId" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool NLPACS::CChain::isBorderChainId </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a10">sint32</a>&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>id</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, static]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Returns true iff the given id corresponds to a link on the border.
+<p>
+
+<p>
+Definition at line <a class="el" href="a05540.html#l00288">288</a> of file <a class="el" href="a05540.html">chain.h</a>.
+<p>
+References <a class="el" href="a05981.html#l00099">sint32</a>.
+<p>
+Referenced by <a class="el" href="a05761.html#l01177">NLPACS::CGlobalRetriever::findCollisionChains()</a>, <a class="el" href="a05540.html#l00282">getBorderChainIndex()</a>, and <a class="el" href="a05540.html#l00294">isBorderChain()</a>.
+<p>
+<div class="fragment"><pre>00288 { <span class="keywordflow">return</span> <span class="keywordtype">id</span> &lt;= -256; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLPACS_1_1CChainb2" doxytag="NLPACS::CChain::make" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLPACS::CChain::make </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const std::vector&lt; <a class="el" href="a03128.html">NLMISC::CVector</a> &gt; &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>vertices</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap><a class="el" href="a04558.html#a10">sint32</a>&nbsp;</td>
+ <td class="mdname" nowrap> <em>left</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap><a class="el" href="a04558.html#a10">sint32</a>&nbsp;</td>
+ <td class="mdname" nowrap> <em>right</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>std::vector&lt; <a class="el" href="a03027.html">COrderedChain</a> &gt; &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>chains</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap><a class="el" href="a04558.html#a9">uint16</a>&nbsp;</td>
+ <td class="mdname" nowrap> <em>thisId</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>std::vector&lt; <a class="el" href="a03028.html">COrderedChain3f</a> &gt; &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>fullChains</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>std::vector&lt; <a class="el" href="a04558.html#a15">uint</a> &gt; &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>useOChainId</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [protected]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Build the whole surface from a vector of CVector and the left and right surfaces.
+<p>
+
+<p>
+Definition at line <a class="el" href="a05539.html#l00199">199</a> of file <a class="el" href="a05539.html">chain.cpp</a>.
+<p>
+References <a class="el" href="a05540.html#l00058">NLPACS::COrderedChain3f::_Forward</a>, <a class="el" href="a05540.html#l00064">NLPACS::COrderedChain3f::_IndexInParent</a>, <a class="el" href="a05540.html#l00220">_Left</a>, <a class="el" href="a05540.html#l00126">NLPACS::COrderedChain::_Length</a>, <a class="el" href="a05540.html#l00061">NLPACS::COrderedChain3f::_ParentId</a>, <a class="el" href="a05540.html#l00223">_Right</a>, <a class="el" href="a05540.html#l00217">_SubChains</a>, <a class="el" href="a05540.html#l00114">NLPACS::COrderedChain::_Vertices</a>, <a class="el" href="a05540.html#l00055">NLPACS::COrderedChain3f::_Vertices</a>, <a class="el" href="a05540.html#l00178">NLPACS::COrderedChain::computeMinMax()</a>, <a class="el" href="a05692.html#l00050">NLPACS::isStrictlyGreater()</a>, <a class="el" href="a05692.html#l00040">NLPACS::isStrictlyLess()</a>, <a class="el" href="a05622.html#l00154">nlerror</a>, <a class="el" href="a05540.html#l00161">NLPACS::COrderedChain::pack()</a>, <a class="el" href="a05981.html#l00104">sint</a>, <a class="el" href="a05981.html#l00099">sint32</a>, <a class="el" href="a05981.html#l00098">uint16</a>, and <a class="el" href="a05981.html#l00100">uint32</a>.
+<p>
+Referenced by <a class="el" href="a05929.html#l00361">NLPACS::CLocalRetriever::addChain()</a>, and <a class="el" href="a05929.html#l01973">NLPACS::CLocalRetriever::replaceChain()</a>.
+<p>
+<div class="fragment"><pre>00201 {
+00202 <a class="code" href="a04558.html#a14">sint</a> first = 0, last = 0, i;
+00203
+00204 <a class="code" href="a02333.html#NLPACS_1_1CChainp0">_Left</a> = left;
+00205 <a class="code" href="a02333.html#NLPACS_1_1CChainp4">_Right</a> = right;
+00206 <a class="code" href="a02333.html#NLPACS_1_1CChainp3">_Length</a> = 0.0f;
+00207
+00208 <span class="comment">// splits the vertices list in ordered sub chains.</span>
+00209 <span class="keywordflow">while</span> (first &lt; (<a class="code" href="a04558.html#a14">sint</a>)vertices.size()-1)
+00210 {
+00211 last = first+1;
+00212 <span class="keywordtype">bool</span> forward = <a class="code" href="a05380.html#a28">isStrictlyLess</a>(vertices[first], vertices[last]);
+00213
+00214 <span class="comment">// first checks if the subchain goes forward or backward.</span>
+00215 <span class="keywordflow">if</span> (forward)
+00216 <span class="keywordflow">for</span> (; last &lt; (<a class="code" href="a04558.html#a14">sint</a>)vertices.size() &amp;&amp; <a class="code" href="a05380.html#a28">isStrictlyLess</a>(vertices[last-1], vertices[last]); ++last)
+00217 ;
+00218 <span class="keywordflow">else</span>
+00219 <span class="keywordflow">for</span> (; last &lt; (<a class="code" href="a04558.html#a14">sint</a>)vertices.size() &amp;&amp; <a class="code" href="a05380.html#a29">isStrictlyGreater</a>(vertices[last-1], vertices[last]); ++last)
+00220 ;
+00221 --last;
+00222
+00223 <span class="comment">// inserts the new subchain id within the CChain.</span>
+00224 <a class="code" href="a04558.html#a11">uint32</a> subChainId;
+00225
+00226 <span class="keywordflow">if</span> (useOChainId.empty())
+00227 {
+00228 subChainId = chains.size();
+00229 <span class="keywordflow">if</span> (subChainId &gt; 65535)
+00230 <a class="code" href="a04199.html#a3">nlerror</a>(<span class="stringliteral">"in NLPACS::CChain::make(): reached the maximum number of ordered chains"</span>);
+00231
+00232 chains.resize(chains.size()+1);
+00233 fullChains.resize(fullChains.size()+1);
+00234 }
+00235 <span class="keywordflow">else</span>
+00236 {
+00237 subChainId = useOChainId.back();
+00238 useOChainId.pop_back();
+00239 }
+00240
+00241 <a class="code" href="a02333.html#NLPACS_1_1CChainp9">_SubChains</a>.push_back((<a class="code" href="a04558.html#a9">uint16</a>)subChainId);
+00242
+00243 <span class="comment">// and creates a new COrderedChain</span>
+00244 COrderedChain3f &amp;subchain3f = fullChains[subChainId];
+00245 subchain3f._Vertices.reserve(last-first+1);
+00246 subchain3f._Forward = forward;
+00247 subchain3f._ParentId = thisId;
+00248 subchain3f._IndexInParent = <a class="code" href="a02333.html#NLPACS_1_1CChainp9">_SubChains</a>.size()-1;
+00249
+00250 <span class="comment">// and then copies the vertices (sorted, btw!)</span>
+00251 <span class="keywordflow">if</span> (forward)
+00252 <span class="keywordflow">for</span> (i=first; i&lt;=last; ++i)
+00253 subchain3f._Vertices.push_back(vertices[i]);
+00254 <span class="keywordflow">else</span>
+00255 <span class="keywordflow">for</span> (i=last; i&gt;=first; --i)
+00256 subchain3f._Vertices.push_back(vertices[i]);
+00257
+00258 first = last;
+00259
+00260 COrderedChain &amp;subchain = chains[subChainId];
+00261 subchain.pack(subchain3f);
+00262 subchain.computeMinMax();
+00263
+00264 <span class="keywordtype">float</span> length = 0.0f;
+00265 <span class="keywordflow">for</span> (i=0; i&lt;(<a class="code" href="a04558.html#a14">sint</a>)subchain._Vertices.size()-1; ++i)
+00266 length += (subchain._Vertices[i+1]-subchain._Vertices[i]).norm();
+00267
+00268 subchain._Length = length;
+00269 <a class="code" href="a02333.html#NLPACS_1_1CChainp3">_Length</a> += length;
+00270 }
+00271 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLPACS_1_1CChaina14" doxytag="NLPACS::CChain::serial" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLPACS::CChain::serial </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a02270.html">NLMISC::IStream</a> &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>f</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Serialises the <a class="el" href="a02333.html">CChain</a> object.
+<p>
+
+<p>
+Definition at line <a class="el" href="a05539.html#l00274">274</a> of file <a class="el" href="a05539.html">chain.cpp</a>.
+<p>
+References <a class="el" href="a05540.html#l00220">_Left</a>, <a class="el" href="a05540.html#l00232">_LeftLoop</a>, <a class="el" href="a05540.html#l00232">_LeftLoopIndex</a>, <a class="el" href="a05540.html#l00223">_Right</a>, <a class="el" href="a05540.html#l00233">_RightLoop</a>, <a class="el" href="a05540.html#l00233">_RightLoopIndex</a>, <a class="el" href="a05540.html#l00226">_StartTip</a>, <a class="el" href="a05540.html#l00227">_StopTip</a>, <a class="el" href="a05540.html#l00217">_SubChains</a>, <a class="el" href="a06462.html#l00232">NLMISC::IStream::serial()</a>, <a class="el" href="a06462.html#l00324">NLMISC::IStream::serialCont()</a>, and <a class="el" href="a06461.html#l00266">NLMISC::IStream::serialVersion()</a>.
+<p>
+<div class="fragment"><pre>00275 {
+00276 <span class="comment">/*</span>
+00277 <span class="comment"> Version 0:</span>
+00278 <span class="comment"> - base version.</span>
+00279 <span class="comment"> */</span>
+00280 (<span class="keywordtype">void</span>)f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2035_8">serialVersion</a>(0);
+00281
+00282 f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2033_9">serialCont</a>(_SubChains);
+00283 f.<a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(_Left, _Right);
+00284 f.<a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(_StartTip, _StopTip);
+00285 f.<a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(_Length);
+00286 f.<a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(_LeftLoop, _LeftLoopIndex);
+00287 f.<a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(_RightLoop, _RightLoopIndex);
+00288 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLPACS_1_1CChainb3" doxytag="NLPACS::CChain::setBorderChainIndex" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLPACS::CChain::setBorderChainIndex </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a10">sint32</a>&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>id</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, protected]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a05540.html#l00254">254</a> of file <a class="el" href="a05540.html">chain.h</a>.
+<p>
+References <a class="el" href="a05540.html#l00223">_Right</a>, <a class="el" href="a05540.html#l00291">convertBorderChainId()</a>, and <a class="el" href="a05981.html#l00099">sint32</a>.
+<p>
+<div class="fragment"><pre>00254 { <a class="code" href="a02333.html#NLPACS_1_1CChainp4">_Right</a> = <a class="code" href="a02333.html#NLPACS_1_1CChaine0">convertBorderChainId</a>(<span class="keywordtype">id</span>); }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLPACS_1_1CChainb4" doxytag="NLPACS::CChain::setLoopIndexes" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLPACS::CChain::setLoopIndexes </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a10">sint32</a>&nbsp;</td>
+ <td class="mdname" nowrap> <em>surface</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap><a class="el" href="a04558.html#a15">uint</a>&nbsp;</td>
+ <td class="mdname" nowrap> <em>loop</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap><a class="el" href="a04558.html#a15">uint</a>&nbsp;</td>
+ <td class="mdname" nowrap> <em>loopIndex</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [inline, protected]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a05540.html#l00240">240</a> of file <a class="el" href="a05540.html">chain.h</a>.
+<p>
+References <a class="el" href="a05540.html#l00220">_Left</a>, <a class="el" href="a05540.html#l00232">_LeftLoop</a>, <a class="el" href="a05540.html#l00232">_LeftLoopIndex</a>, <a class="el" href="a05540.html#l00233">_RightLoop</a>, <a class="el" href="a05540.html#l00233">_RightLoopIndex</a>, <a class="el" href="a05981.html#l00099">sint32</a>, and <a class="el" href="a05981.html#l00105">uint</a>.
+<p>
+<div class="fragment"><pre>00241 {
+00242 <span class="keywordflow">if</span> (<a class="code" href="a02333.html#NLPACS_1_1CChainp0">_Left</a> == surface)
+00243 {
+00244 <a class="code" href="a02333.html#NLPACS_1_1CChainp1">_LeftLoop</a> = loop;
+00245 <a class="code" href="a02333.html#NLPACS_1_1CChainp2">_LeftLoopIndex</a> = loopIndex;
+00246 }
+00247 <span class="keywordflow">else</span>
+00248 {
+00249 <a class="code" href="a02333.html#NLPACS_1_1CChainp5">_RightLoop</a> = loop;
+00250 <a class="code" href="a02333.html#NLPACS_1_1CChainp6">_RightLoopIndex</a> = loopIndex;
+00251 }
+00252 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLPACS_1_1CChainb5" doxytag="NLPACS::CChain::setStartVector" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLPACS::CChain::setStartVector </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const <a class="el" href="a03662.html">CVector2s</a> &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>v</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>std::vector&lt; <a class="el" href="a03027.html">COrderedChain</a> &gt; &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>ochains</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [protected]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a05539.html#l00321">321</a> of file <a class="el" href="a05539.html">chain.cpp</a>.
+<p>
+References <a class="el" href="a05540.html#l00217">_SubChains</a>, and <a class="el" href="a05646.html#l00237">v</a>.
+<p>
+<div class="fragment"><pre>00322 {
+00323 <span class="keywordflow">if</span> (ochains[<a class="code" href="a02333.html#NLPACS_1_1CChainp9">_SubChains</a>.front()].isForward())
+00324 ochains[<a class="code" href="a02333.html#NLPACS_1_1CChainp9">_SubChains</a>.front()]._Vertices.front() = <a class="code" href="a04223.html#a576">v</a>;
+00325 <span class="keywordflow">else</span>
+00326 ochains[<a class="code" href="a02333.html#NLPACS_1_1CChainp9">_SubChains</a>.front()]._Vertices.back() = <a class="code" href="a04223.html#a576">v</a>;
+00327 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLPACS_1_1CChainb6" doxytag="NLPACS::CChain::setStopVector" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLPACS::CChain::setStopVector </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const <a class="el" href="a03662.html">CVector2s</a> &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>v</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>std::vector&lt; <a class="el" href="a03027.html">COrderedChain</a> &gt; &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>ochains</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [protected]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a05539.html#l00330">330</a> of file <a class="el" href="a05539.html">chain.cpp</a>.
+<p>
+References <a class="el" href="a05540.html#l00217">_SubChains</a>, and <a class="el" href="a05646.html#l00237">v</a>.
+<p>
+<div class="fragment"><pre>00331 {
+00332 <span class="keywordflow">if</span> (ochains[<a class="code" href="a02333.html#NLPACS_1_1CChainp9">_SubChains</a>.back()].isForward())
+00333 ochains[<a class="code" href="a02333.html#NLPACS_1_1CChainp9">_SubChains</a>.back()]._Vertices.back() = <a class="code" href="a04223.html#a576">v</a>;
+00334 <span class="keywordflow">else</span>
+00335 ochains[<a class="code" href="a02333.html#NLPACS_1_1CChainp9">_SubChains</a>.back()]._Vertices.front() = <a class="code" href="a04223.html#a576">v</a>;
+00336 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLPACS_1_1CChainb7" doxytag="NLPACS::CChain::unify" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLPACS::CChain::unify </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">std::vector&lt; <a class="el" href="a03027.html">COrderedChain</a> &gt; &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>ochains</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [protected]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a05539.html#l00293">293</a> of file <a class="el" href="a05539.html">chain.cpp</a>.
+<p>
+References <a class="el" href="a05540.html#l00217">_SubChains</a>, <a class="el" href="a05622.html#l00135">nlwarning</a>, and <a class="el" href="a05981.html#l00105">uint</a>.
+<p>
+<div class="fragment"><pre>00294 {
+00295 CVector2s snap;
+00296 <a class="code" href="a04558.html#a15">uint</a> i;
+00297
+00298 snap = (ochains[<a class="code" href="a02333.html#NLPACS_1_1CChainp9">_SubChains</a>[0]].isForward()) ? ochains[_SubChains[0]]._Vertices.back() : ochains[_SubChains[0]]._Vertices.front();
+00299
+00300 <span class="keywordflow">for</span> (i=1; i&lt;_SubChains.size(); ++i)
+00301 {
+00302 <span class="keywordflow">if</span> (ochains[_SubChains[i]].isForward())
+00303 {
+00304 <span class="keywordflow">if</span> (ochains[_SubChains[i]]._Vertices.front() != snap)
+00305 <a class="code" href="a04199.html#a2">nlwarning</a>(<span class="stringliteral">"ochain %d and %d are not stuck together"</span>, _SubChains[i-1], _SubChains[i]);
+00306 ochains[_SubChains[i]]._Vertices.front() = snap;
+00307 snap = ochains[_SubChains[i]]._Vertices.back();
+00308 }
+00309 <span class="keywordflow">else</span>
+00310 {
+00311 <span class="keywordflow">if</span> (ochains[_SubChains[i]]._Vertices.back() != snap)
+00312 <a class="code" href="a04199.html#a2">nlwarning</a>(<span class="stringliteral">"ochain %d and %d are not stuck together"</span>, _SubChains[i-1], _SubChains[i]);
+00313 ochains[_SubChains[i]]._Vertices.back() = snap;
+00314 snap = ochains[_SubChains[i]]._Vertices.front();
+00315 }
+00316 }
+00317
+00318 }
+</pre></div> </td>
+ </tr>
+</table>
+<hr><h2>Friends And Related Function Documentation</h2>
+<a class="anchor" name="NLPACS_1_1CChainn0" doxytag="NLPACS::CChain::CLocalRetriever" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> friend class <a class="el" href="a02787.html">CLocalRetriever</a><code> [friend]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a05540.html#l00214">214</a> of file <a class="el" href="a05540.html">chain.h</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NLPACS_1_1CChainn1" doxytag="NLPACS::CChain::CRetrievableSurface" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> friend class <a class="el" href="a03328.html">CRetrievableSurface</a><code> [friend]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a05540.html#l00213">213</a> of file <a class="el" href="a05540.html">chain.h</a>. </td>
+ </tr>
+</table>
+<hr><h2>Field Documentation</h2>
+<a class="anchor" name="NLPACS_1_1CChainp0" doxytag="NLPACS::CChain::_Left" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a10">sint32</a> <a class="el" href="a02333.html#NLPACS_1_1CChainp0">NLPACS::CChain::_Left</a><code> [protected]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+The surface on the left of the chain.
+<p>
+
+<p>
+Definition at line <a class="el" href="a05540.html#l00220">220</a> of file <a class="el" href="a05540.html">chain.h</a>.
+<p>
+Referenced by <a class="el" href="a05929.html#l00714">NLPACS::CLocalRetriever::build3dSurfacePolygons()</a>, <a class="el" href="a05929.html#l00655">NLPACS::CLocalRetriever::buildSurfacePolygons()</a>, <a class="el" href="a05540.html#l00259">CChain()</a>, <a class="el" href="a05540.html#l00269">getLeft()</a>, <a class="el" href="a05539.html#l00199">make()</a>, <a class="el" href="a05539.html#l00274">serial()</a>, and <a class="el" href="a05540.html#l00240">setLoopIndexes()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NLPACS_1_1CChainp1" doxytag="NLPACS::CChain::_LeftLoop" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a7">uint8</a> <a class="el" href="a02333.html#NLPACS_1_1CChainp1">NLPACS::CChain::_LeftLoop</a><code> [protected]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a05540.html#l00232">232</a> of file <a class="el" href="a05540.html">chain.h</a>.
+<p>
+Referenced by <a class="el" href="a05540.html#l00259">CChain()</a>, <a class="el" href="a05540.html#l00270">getLeftLoop()</a>, <a class="el" href="a05539.html#l00274">serial()</a>, and <a class="el" href="a05540.html#l00240">setLoopIndexes()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NLPACS_1_1CChainp2" doxytag="NLPACS::CChain::_LeftLoopIndex" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a7">uint8</a> <a class="el" href="a02333.html#NLPACS_1_1CChainp2">NLPACS::CChain::_LeftLoopIndex</a><code> [protected]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a05540.html#l00232">232</a> of file <a class="el" href="a05540.html">chain.h</a>.
+<p>
+Referenced by <a class="el" href="a05540.html#l00259">CChain()</a>, <a class="el" href="a05540.html#l00271">getLeftLoopIndex()</a>, <a class="el" href="a05539.html#l00274">serial()</a>, and <a class="el" href="a05540.html#l00240">setLoopIndexes()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NLPACS_1_1CChainp3" doxytag="NLPACS::CChain::_Length" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> float <a class="el" href="a02333.html#NLPACS_1_1CChainp3">NLPACS::CChain::_Length</a><code> [protected]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+The length of the whole chain.
+<p>
+
+<p>
+Definition at line <a class="el" href="a05540.html#l00230">230</a> of file <a class="el" href="a05540.html">chain.h</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NLPACS_1_1CChainp4" doxytag="NLPACS::CChain::_Right" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a10">sint32</a> <a class="el" href="a02333.html#NLPACS_1_1CChainp4">NLPACS::CChain::_Right</a><code> [protected]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+The surface on the right of the chain.
+<p>
+
+<p>
+Definition at line <a class="el" href="a05540.html#l00223">223</a> of file <a class="el" href="a05540.html">chain.h</a>.
+<p>
+Referenced by <a class="el" href="a05540.html#l00259">CChain()</a>, <a class="el" href="a05540.html#l00282">getBorderChainIndex()</a>, <a class="el" href="a05540.html#l00274">getRight()</a>, <a class="el" href="a05540.html#l00294">isBorderChain()</a>, <a class="el" href="a05539.html#l00199">make()</a>, <a class="el" href="a05539.html#l00274">serial()</a>, and <a class="el" href="a05540.html#l00254">setBorderChainIndex()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NLPACS_1_1CChainp5" doxytag="NLPACS::CChain::_RightLoop" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a7">uint8</a> <a class="el" href="a02333.html#NLPACS_1_1CChainp5">NLPACS::CChain::_RightLoop</a><code> [protected]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a05540.html#l00233">233</a> of file <a class="el" href="a05540.html">chain.h</a>.
+<p>
+Referenced by <a class="el" href="a05540.html#l00259">CChain()</a>, <a class="el" href="a05540.html#l00275">getRightLoop()</a>, <a class="el" href="a05539.html#l00274">serial()</a>, and <a class="el" href="a05540.html#l00240">setLoopIndexes()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NLPACS_1_1CChainp6" doxytag="NLPACS::CChain::_RightLoopIndex" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a7">uint8</a> <a class="el" href="a02333.html#NLPACS_1_1CChainp6">NLPACS::CChain::_RightLoopIndex</a><code> [protected]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a05540.html#l00233">233</a> of file <a class="el" href="a05540.html">chain.h</a>.
+<p>
+Referenced by <a class="el" href="a05540.html#l00259">CChain()</a>, <a class="el" href="a05540.html#l00276">getRightLoopIndex()</a>, <a class="el" href="a05539.html#l00274">serial()</a>, and <a class="el" href="a05540.html#l00240">setLoopIndexes()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NLPACS_1_1CChainp7" doxytag="NLPACS::CChain::_StartTip" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a9">uint16</a> <a class="el" href="a02333.html#NLPACS_1_1CChainp7">NLPACS::CChain::_StartTip</a><code> [protected]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+The tips indexes in the retriever object.
+<p>
+
+<p>
+Definition at line <a class="el" href="a05540.html#l00226">226</a> of file <a class="el" href="a05540.html">chain.h</a>.
+<p>
+Referenced by <a class="el" href="a05929.html#l00361">NLPACS::CLocalRetriever::addChain()</a>, <a class="el" href="a05540.html#l00259">CChain()</a>, <a class="el" href="a05540.html#l00300">getStartTip()</a>, <a class="el" href="a05929.html#l01973">NLPACS::CLocalRetriever::replaceChain()</a>, and <a class="el" href="a05539.html#l00274">serial()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NLPACS_1_1CChainp8" doxytag="NLPACS::CChain::_StopTip" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a9">uint16</a> <a class="el" href="a02333.html#NLPACS_1_1CChainp8">NLPACS::CChain::_StopTip</a><code> [protected]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a05540.html#l00227">227</a> of file <a class="el" href="a05540.html">chain.h</a>.
+<p>
+Referenced by <a class="el" href="a05929.html#l00361">NLPACS::CLocalRetriever::addChain()</a>, <a class="el" href="a05540.html#l00259">CChain()</a>, <a class="el" href="a05540.html#l00303">getStopTip()</a>, <a class="el" href="a05929.html#l01973">NLPACS::CLocalRetriever::replaceChain()</a>, and <a class="el" href="a05539.html#l00274">serial()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NLPACS_1_1CChainp9" doxytag="NLPACS::CChain::_SubChains" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> std::vector&lt;<a class="el" href="a04558.html#a9">uint16</a>&gt; <a class="el" href="a02333.html#NLPACS_1_1CChainp9">NLPACS::CChain::_SubChains</a><code> [protected]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+The list of ordered chains that compose the chain.
+<p>
+
+<p>
+Definition at line <a class="el" href="a05540.html#l00217">217</a> of file <a class="el" href="a05540.html">chain.h</a>.
+<p>
+Referenced by <a class="el" href="a05929.html#l00714">NLPACS::CLocalRetriever::build3dSurfacePolygons()</a>, <a class="el" href="a05929.html#l00655">NLPACS::CLocalRetriever::buildSurfacePolygons()</a>, <a class="el" href="a05929.html#l01576">NLPACS::CLocalRetriever::findPath()</a>, <a class="el" href="a05539.html#l00339">getStartVector()</a>, <a class="el" href="a05539.html#l00348">getStopVector()</a>, <a class="el" href="a05540.html#l00266">getSubChain()</a>, <a class="el" href="a05540.html#l00263">getSubChains()</a>, <a class="el" href="a05539.html#l00199">make()</a>, <a class="el" href="a05539.html#l00274">serial()</a>, <a class="el" href="a05539.html#l00321">setStartVector()</a>, <a class="el" href="a05539.html#l00330">setStopVector()</a>, and <a class="el" href="a05539.html#l00293">unify()</a>. </td>
+ </tr>
+</table>
+<hr>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="a05540.html">chain.h</a><li><a class="el" href="a05539.html">chain.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Mar 16 14:09:34 2004 for NeL by
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
+</a>1.3.6 </small></address>
+</body>
+</html>