coriolis/katabatic/doc/html/classKatabatic_1_1AutoVerti...

1205 lines
140 KiB
HTML
Raw Normal View History

<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.0//EN'>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>Katabatic Documentation</title>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="SoC.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head>
<h1 id="pagetop" class="header">Katabatic - Routing Toolbox</h1>
<!--
<center class="header">
<table class="header">
<tr>
<td><a href="customSummary.html">Summary</a></td>
<td><a href="namespaces.html">Namespaces</a></td>
<td><a href="customHierarchy.html">Class Hierarchy</a></td>
<td><a href="annotated.html">Classes</a></td>
<td><a href="functions.html">Member Index</a></td>
</tr>
</table>
</center>
-->
<br>
<body onload="javascript:toggleLevel(1)">
<!-- Generated by Doxygen 1.8.5 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceKatabatic.html">Katabatic</a></li><li class="navelem"><a class="el" href="classKatabatic_1_1AutoVertical.html">AutoVertical</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="classKatabatic_1_1AutoVertical-members.html">List of all members</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> </div>
<div class="headertitle">
<div class="title">AutoVertical Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>Concrete Vertical <a class="el" href="classKatabatic_1_1AutoSegment.html" title="Abstract base class for AutoSegment. ">AutoSegment</a>.
<a href="classKatabatic_1_1AutoVertical.html#details">More...</a></p>
<div class="dynheader">
Inheritance diagram for AutoVertical:</div>
<div class="dyncontent">
<div class="center"><img src="classKatabatic_1_1AutoVertical__inherit__graph.png" border="0" usemap="#AutoVertical_inherit__map" alt="Inheritance graph"/></div>
<map name="AutoVertical_inherit__map" id="AutoVertical_inherit__map">
<area shape="rect" id="node2" href="classKatabatic_1_1AutoSegment.html" title="Abstract base class for AutoSegment. " alt="" coords="5,5,107,32"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:ab0c6fe24404afe19268a7b796fa74bec"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoVertical.html#ab0c6fe24404afe19268a7b796fa74bec">_canSlacken</a> () const </td></tr>
<tr class="separator:ab0c6fe24404afe19268a7b796fa74bec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa9e85f38a842d1966eb72afccb446676"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoVertical.html#aa9e85f38a842d1966eb72afccb446676">canMoveULeft</a> (float reserve=0.0) const </td></tr>
<tr class="separator:aa9e85f38a842d1966eb72afccb446676"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7559a856712400a9325665842e0bcd64"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoVertical.html#a7559a856712400a9325665842e0bcd64">canMoveURight</a> (float reserve=0.0) const </td></tr>
<tr class="separator:a7559a856712400a9325665842e0bcd64"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9e651c17b47f82166a02865c9296a2df"><td class="memItemLeft" align="right" valign="top">virtual <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Segment.html">Segment</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoVertical.html#a9e651c17b47f82166a02865c9296a2df">base</a> ()</td></tr>
<tr class="separator:a9e651c17b47f82166a02865c9296a2df"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adcd751c3ec393fabdef5ede0ffff6f2d"><td class="memItemLeft" align="right" valign="top">virtual <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Segment.html">Segment</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoVertical.html#adcd751c3ec393fabdef5ede0ffff6f2d">base</a> () const </td></tr>
<tr class="separator:adcd751c3ec393fabdef5ede0ffff6f2d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab6a809b6f3ef3cf5385fa35580e31e7a"><td class="memItemLeft" align="right" valign="top">virtual <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Vertical.html">Vertical</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoVertical.html#ab6a809b6f3ef3cf5385fa35580e31e7a">getVertical</a> ()</td></tr>
<tr class="separator:ab6a809b6f3ef3cf5385fa35580e31e7a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3932d5ce9094ead510e4e33bd4e78e1a"><td class="memItemLeft" align="right" valign="top">virtual <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoVertical.html#a3932d5ce9094ead510e4e33bd4e78e1a">getSourceU</a> () const </td></tr>
<tr class="separator:a3932d5ce9094ead510e4e33bd4e78e1a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8e5f2a51f56c6bdb74024ac77c08a22a"><td class="memItemLeft" align="right" valign="top">virtual <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoVertical.html#a8e5f2a51f56c6bdb74024ac77c08a22a">getTargetU</a> () const </td></tr>
<tr class="separator:a8e5f2a51f56c6bdb74024ac77c08a22a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a44998a5f0d71597006fe4f3ffed8e3d1"><td class="memItemLeft" align="right" valign="top">virtual <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoVertical.html#a44998a5f0d71597006fe4f3ffed8e3d1">getDuSource</a> () const </td></tr>
<tr class="separator:a44998a5f0d71597006fe4f3ffed8e3d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4f505a59109fc6087696f483ccc7f9dc"><td class="memItemLeft" align="right" valign="top">virtual <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoVertical.html#a4f505a59109fc6087696f483ccc7f9dc">getDuTarget</a> () const </td></tr>
<tr class="separator:a4f505a59109fc6087696f483ccc7f9dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9409a4b64c21fa8b1517149728f0a4c1"><td class="memItemLeft" align="right" valign="top">virtual <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Interval.html">Interval</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoVertical.html#a9409a4b64c21fa8b1517149728f0a4c1">getSpanU</a> () const </td></tr>
<tr class="separator:a9409a4b64c21fa8b1517149728f0a4c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aff207f4cc3c3682ed57369fdfe157d2d"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoVertical.html#aff207f4cc3c3682ed57369fdfe157d2d">getConstraints</a> (<a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a> &amp;min, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a> &amp;max) const </td></tr>
<tr class="separator:aff207f4cc3c3682ed57369fdfe157d2d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3c24695921b612a57c5ac60ff0aa3878"><td class="memItemLeft" align="right" valign="top">virtual <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Interval.html">Interval</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoVertical.html#a3c24695921b612a57c5ac60ff0aa3878">getSourceConstraints</a> (unsigned int flags=0) const </td></tr>
<tr class="separator:a3c24695921b612a57c5ac60ff0aa3878"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaa70ba865e312fb30f81fa7f973a0376"><td class="memItemLeft" align="right" valign="top">virtual <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Interval.html">Interval</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoVertical.html#aaa70ba865e312fb30f81fa7f973a0376">getTargetConstraints</a> (unsigned int flags=0) const </td></tr>
<tr class="separator:aaa70ba865e312fb30f81fa7f973a0376"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a09d03fbca9ab891c2f25bdae7f89a899"><td class="memItemLeft" align="right" valign="top">virtual unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoVertical.html#a09d03fbca9ab891c2f25bdae7f89a899">getDirection</a> () const </td></tr>
<tr class="separator:a09d03fbca9ab891c2f25bdae7f89a899"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab681dca7dc930e06cacc2de85bf99166"><td class="memItemLeft" align="right" valign="top">virtual size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoVertical.html#ab681dca7dc930e06cacc2de85bf99166">getGCells</a> (vector&lt; <a class="el" href="classKatabatic_1_1GCell.html">GCell</a> * &gt; &amp;) const </td></tr>
<tr class="separator:ab681dca7dc930e06cacc2de85bf99166"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a756616a1967c5ad8efd08be96d18f25d"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoVertical.html#a756616a1967c5ad8efd08be96d18f25d">setDuSource</a> (<a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a>)</td></tr>
<tr class="separator:a756616a1967c5ad8efd08be96d18f25d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9df2ef68c1fbf4159cc837be5c699b53"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoVertical.html#a9df2ef68c1fbf4159cc837be5c699b53">setDuTarget</a> (<a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a>)</td></tr>
<tr class="separator:a9df2ef68c1fbf4159cc837be5c699b53"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a59058f4593049c583c5b3698ff81b299"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoVertical.html#a59058f4593049c583c5b3698ff81b299">updateOrient</a> ()</td></tr>
<tr class="separator:a59058f4593049c583c5b3698ff81b299"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9662a77c2ed8553d6a0312c5292060ad"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoVertical.html#a9662a77c2ed8553d6a0312c5292060ad">updatePositions</a> ()</td></tr>
<tr class="separator:a9662a77c2ed8553d6a0312c5292060ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acfbdc94b1e84bd192087df53ead1f06f"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoVertical.html#acfbdc94b1e84bd192087df53ead1f06f">checkPositions</a> () const </td></tr>
<tr class="separator:acfbdc94b1e84bd192087df53ead1f06f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a46576c7c5c5146f8fa53a821b0766994"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoVertical.html#a46576c7c5c5146f8fa53a821b0766994">checkConstraints</a> () const </td></tr>
<tr class="separator:a46576c7c5c5146f8fa53a821b0766994"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a36c0eecad40d3559b5378caefec6a7e0"><td class="memItemLeft" align="right" valign="top">virtual unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoVertical.html#a36c0eecad40d3559b5378caefec6a7e0">_makeDogleg</a> (<a class="el" href="classKatabatic_1_1GCell.html">GCell</a> *, unsigned int flags)</td></tr>
<tr class="separator:a36c0eecad40d3559b5378caefec6a7e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1fa2421b74bf0eb934b7002fd3da2321"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoVertical.html#a1fa2421b74bf0eb934b7002fd3da2321">moveULeft</a> ()</td></tr>
<tr class="separator:a1fa2421b74bf0eb934b7002fd3da2321"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa469e37853e31f8b1bc817518c896d62"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoVertical.html#aa469e37853e31f8b1bc817518c896d62">moveURight</a> ()</td></tr>
<tr class="separator:aa469e37853e31f8b1bc817518c896d62"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classKatabatic_1_1AutoSegment"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classKatabatic_1_1AutoSegment')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classKatabatic_1_1AutoSegment.html">AutoSegment</a></td></tr>
<tr class="memitem:a659b8ed90de679564924afe07af478de inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">virtual <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Horizontal.html">Horizontal</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a659b8ed90de679564924afe07af478de">getHorizontal</a> ()</td></tr>
<tr class="separator:a659b8ed90de679564924afe07af478de inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a148fdf09f18e7adb39a73c747f165266 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Cell.html">Cell</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a148fdf09f18e7adb39a73c747f165266">getCell</a> () const </td></tr>
<tr class="separator:a148fdf09f18e7adb39a73c747f165266 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adf3e1a980233163de0ca34a5c3575998 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Net.html">Net</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#adf3e1a980233163de0ca34a5c3575998">getNet</a> () const </td></tr>
<tr class="separator:adf3e1a980233163de0ca34a5c3575998 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a304ee4e02745811e04ac6fb688bf834f inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">const <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Layer.html">Layer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a304ee4e02745811e04ac6fb688bf834f">getLayer</a> () const </td></tr>
<tr class="separator:a304ee4e02745811e04ac6fb688bf834f inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4e70b34c1b87c093c4405d9d2e924a05 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Box.html">Box</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a4e70b34c1b87c093c4405d9d2e924a05">getBoundingBox</a> () const </td></tr>
<tr class="separator:a4e70b34c1b87c093c4405d9d2e924a05 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1defbbaef0a1975993e157a8d5f68ded inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Hook.html">Hook</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a1defbbaef0a1975993e157a8d5f68ded">getSourceHook</a> ()</td></tr>
<tr class="separator:a1defbbaef0a1975993e157a8d5f68ded inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad62048f68151e5db987b5a7c79cce4ed inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Hook.html">Hook</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#ad62048f68151e5db987b5a7c79cce4ed">getTargetHook</a> ()</td></tr>
<tr class="separator:ad62048f68151e5db987b5a7c79cce4ed inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6f00fc7f0357778613214c4e57d9bc2f inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Contact.html">Contact</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a6f00fc7f0357778613214c4e57d9bc2f">getSource</a> () const </td></tr>
<tr class="separator:a6f00fc7f0357778613214c4e57d9bc2f inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac92a1ae33842aab5d067b393dd2596fe inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Contact.html">Contact</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#ac92a1ae33842aab5d067b393dd2596fe">getTarget</a> () const </td></tr>
<tr class="separator:ac92a1ae33842aab5d067b393dd2596fe inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a898ede38fc37409371bff9d7dc7f917a inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Component.html">Component</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a898ede38fc37409371bff9d7dc7f917a">getOppositeAnchor</a> (<a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Component.html">Component</a> *) const </td></tr>
<tr class="separator:a898ede38fc37409371bff9d7dc7f917a inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7b72661b3586b369ebf3adc59a5239c2 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/namespaceHurricane.html#a7d26d99aeb5dd6d70d51bd35d2473e72">Components</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a7b72661b3586b369ebf3adc59a5239c2">getAnchors</a> () const </td></tr>
<tr class="separator:a7b72661b3586b369ebf3adc59a5239c2 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a852afe759ce2cb8cb9c0524fc1e23387 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">virtual <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a852afe759ce2cb8cb9c0524fc1e23387">getX</a> () const </td></tr>
<tr class="separator:a852afe759ce2cb8cb9c0524fc1e23387 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac597d25a34a79fb4393211c70f5a1bc3 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">virtual <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#ac597d25a34a79fb4393211c70f5a1bc3">getY</a> () const </td></tr>
<tr class="separator:ac597d25a34a79fb4393211c70f5a1bc3 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa018d3e74791b77d2def527248b9b00a inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#aa018d3e74791b77d2def527248b9b00a">getWidth</a> () const </td></tr>
<tr class="separator:aa018d3e74791b77d2def527248b9b00a inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5370f2cf21823e1fa58d0627ee53c483 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a5370f2cf21823e1fa58d0627ee53c483">getLength</a> () const </td></tr>
<tr class="separator:a5370f2cf21823e1fa58d0627ee53c483 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a60c1e9c6cda9445e409e00ff22b1f52c inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a60c1e9c6cda9445e409e00ff22b1f52c">getSourcePosition</a> () const </td></tr>
<tr class="separator:a60c1e9c6cda9445e409e00ff22b1f52c inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2b6bdf8fa83a7ce4cafa61314bee4e43 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a2b6bdf8fa83a7ce4cafa61314bee4e43">getTargetPosition</a> () const </td></tr>
<tr class="separator:a2b6bdf8fa83a7ce4cafa61314bee4e43 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab160396298a1a51b9988ad246dc2a47f inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#ab160396298a1a51b9988ad246dc2a47f">getSourceX</a> () const </td></tr>
<tr class="separator:ab160396298a1a51b9988ad246dc2a47f inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a232af840ba84faa0b1411ba1c3a418f1 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a232af840ba84faa0b1411ba1c3a418f1">getSourceY</a> () const </td></tr>
<tr class="separator:a232af840ba84faa0b1411ba1c3a418f1 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae80b70bf8e29a74d8a5f61d1257c6cf2 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#ae80b70bf8e29a74d8a5f61d1257c6cf2">getTargetX</a> () const </td></tr>
<tr class="separator:ae80b70bf8e29a74d8a5f61d1257c6cf2 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0917c7f78a251822ea0ac6f48298d1c5 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a0917c7f78a251822ea0ac6f48298d1c5">getTargetY</a> () const </td></tr>
<tr class="separator:a0917c7f78a251822ea0ac6f48298d1c5 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acbac6289ab14574da20f26c933e2e741 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#acbac6289ab14574da20f26c933e2e741">invert</a> ()</td></tr>
<tr class="separator:acbac6289ab14574da20f26c933e2e741 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aad4271c35e0162c8a4d034dca07f5a4b inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#aad4271c35e0162c8a4d034dca07f5a4b">setLayer</a> (const <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Layer.html">Layer</a> *)</td></tr>
<tr class="separator:aad4271c35e0162c8a4d034dca07f5a4b inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac46ac3b48d712750c7888b48964ac189 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#ac46ac3b48d712750c7888b48964ac189">isHorizontal</a> () const </td></tr>
<tr class="separator:ac46ac3b48d712750c7888b48964ac189 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2bb30e82aad1f321af4a065338775f36 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a2bb30e82aad1f321af4a065338775f36">isVertical</a> () const </td></tr>
<tr class="separator:a2bb30e82aad1f321af4a065338775f36 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a017b1ead8e5988dd0e491cae93ac510c inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a017b1ead8e5988dd0e491cae93ac510c">isGlobal</a> () const </td></tr>
<tr class="separator:a017b1ead8e5988dd0e491cae93ac510c inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a69fb7e260ed2bc6fa82bfe12c2aeec5a inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a69fb7e260ed2bc6fa82bfe12c2aeec5a">isLocal</a> () const </td></tr>
<tr class="separator:a69fb7e260ed2bc6fa82bfe12c2aeec5a inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af5e7d3badddf2ec07159f1d83426d4c1 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#af5e7d3badddf2ec07159f1d83426d4c1">isFixed</a> () const </td></tr>
<tr class="separator:af5e7d3badddf2ec07159f1d83426d4c1 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab5035e6d84cf3ec7b519a5acb109efaa inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#ab5035e6d84cf3ec7b519a5acb109efaa">isBipoint</a> () const </td></tr>
<tr class="separator:ab5035e6d84cf3ec7b519a5acb109efaa inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae5574df7051a09ce3338cbe8481b8af3 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#ae5574df7051a09ce3338cbe8481b8af3">isWeakTerminal</a> () const </td></tr>
<tr class="separator:ae5574df7051a09ce3338cbe8481b8af3 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acc92dc6f1ef0c36e7330f38726297b35 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#acc92dc6f1ef0c36e7330f38726297b35">isStrongTerminal</a> (unsigned int flags=0) const </td></tr>
<tr class="separator:acc92dc6f1ef0c36e7330f38726297b35 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0ddce124ab6b4cd97e59db077e7a2eac inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a0ddce124ab6b4cd97e59db077e7a2eac">isLayerChange</a> () const </td></tr>
<tr class="separator:a0ddce124ab6b4cd97e59db077e7a2eac inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaff91f5124850956e44501facf668556 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#aaff91f5124850956e44501facf668556">isSpinTop</a> () const </td></tr>
<tr class="separator:aaff91f5124850956e44501facf668556 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0330666095b102f61bc957eefae34c4f inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a0330666095b102f61bc957eefae34c4f">isSpinBottom</a> () const </td></tr>
<tr class="separator:a0330666095b102f61bc957eefae34c4f inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad5a5ba75ef6654f9352cca1e4b0aff51 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#ad5a5ba75ef6654f9352cca1e4b0aff51">isSpinTopOrBottom</a> () const </td></tr>
<tr class="separator:ad5a5ba75ef6654f9352cca1e4b0aff51 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aca1e1b7dece8c71dcdc1ce786a0958e3 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#aca1e1b7dece8c71dcdc1ce786a0958e3">isReduced</a> () const </td></tr>
<tr class="separator:aca1e1b7dece8c71dcdc1ce786a0958e3 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4721fcbe9c93ed5392afd9a756b989a8 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a4721fcbe9c93ed5392afd9a756b989a8">isStrap</a> () const </td></tr>
<tr class="separator:a4721fcbe9c93ed5392afd9a756b989a8 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a172b2394f9c2cbaaf5bc4b19e0e76e65 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a172b2394f9c2cbaaf5bc4b19e0e76e65">isDogleg</a> () const </td></tr>
<tr class="separator:a172b2394f9c2cbaaf5bc4b19e0e76e65 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a54f713d06c43bebf4e0dfef06e347531 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a54f713d06c43bebf4e0dfef06e347531">isInvalidated</a> () const </td></tr>
<tr class="separator:a54f713d06c43bebf4e0dfef06e347531 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a52c4108abf5e0622a216c2d81c47b9bb inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a52c4108abf5e0622a216c2d81c47b9bb">isInvalidatedLayer</a> () const </td></tr>
<tr class="separator:a52c4108abf5e0622a216c2d81c47b9bb inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6a7e35dd5a9ca99ca879e424ce42b902 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a6a7e35dd5a9ca99ca879e424ce42b902">isCreated</a> () const </td></tr>
<tr class="separator:a6a7e35dd5a9ca99ca879e424ce42b902 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab671233e7112693ae31541190d1d251d inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#ab671233e7112693ae31541190d1d251d">isCanonical</a> () const </td></tr>
<tr class="separator:ab671233e7112693ae31541190d1d251d inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a436eb0e5951f681ce68e429ab671e582 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a436eb0e5951f681ce68e429ab671e582">isUnsetAxis</a> () const </td></tr>
<tr class="separator:a436eb0e5951f681ce68e429ab671e582 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab1f9e0bca70dea59558459a003a62d88 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#ab1f9e0bca70dea59558459a003a62d88">isSlackened</a> () const </td></tr>
<tr class="separator:ab1f9e0bca70dea59558459a003a62d88 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6191fe9409cee6c5a0429ebb9e653ea4 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a6191fe9409cee6c5a0429ebb9e653ea4">canReduce</a> () const </td></tr>
<tr class="separator:a6191fe9409cee6c5a0429ebb9e653ea4 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abe32548ca8d41da334413928405fec87 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#abe32548ca8d41da334413928405fec87">mustRaise</a> () const </td></tr>
<tr class="separator:abe32548ca8d41da334413928405fec87 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a43c865bcfcfd6132352a9ac8a84c25cd inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a43c865bcfcfd6132352a9ac8a84c25cd">canDogleg</a> (<a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Interval.html">Interval</a>)</td></tr>
<tr class="separator:a43c865bcfcfd6132352a9ac8a84c25cd inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a02e6ec81411b250d60dccc0da39964a6 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a02e6ec81411b250d60dccc0da39964a6">canMoveUp</a> (float reserve=0.0, unsigned int flags=0) const </td></tr>
<tr class="separator:a02e6ec81411b250d60dccc0da39964a6 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af76432e1e58e015bde917134757003f9 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#af76432e1e58e015bde917134757003f9">canPivotUp</a> (float reserve=0.0, unsigned int flags=0) const </td></tr>
<tr class="separator:af76432e1e58e015bde917134757003f9 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1c810a1a6860202d94c670999546c4b8 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a1c810a1a6860202d94c670999546c4b8">canPivotDown</a> (float reserve=0.0, unsigned int flags=0) const </td></tr>
<tr class="separator:a1c810a1a6860202d94c670999546c4b8 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a46f380673fde750e88aad991168a35fd inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a46f380673fde750e88aad991168a35fd">canSlacken</a> (unsigned int flags=0) const </td></tr>
<tr class="separator:a46f380673fde750e88aad991168a35fd inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae68c47fdf838be02cbf6660cd25a0806 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">unsigned long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#ae68c47fdf838be02cbf6660cd25a0806">getId</a> () const </td></tr>
<tr class="separator:ae68c47fdf838be02cbf6660cd25a0806 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab45ccfee0f781ec16c50672663d36141 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classKatabatic_1_1GCell.html">GCell</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#ab45ccfee0f781ec16c50672663d36141">getGCell</a> () const </td></tr>
<tr class="separator:ab45ccfee0f781ec16c50672663d36141 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afb5b4d8bddc75cd604c7a68aa5943c12 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classKatabatic_1_1AutoContact.html">AutoContact</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#afb5b4d8bddc75cd604c7a68aa5943c12">getAutoSource</a> () const </td></tr>
<tr class="separator:afb5b4d8bddc75cd604c7a68aa5943c12 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5a35baf84e1e3531c38a6132fb8118fb inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classKatabatic_1_1AutoContact.html">AutoContact</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a5a35baf84e1e3531c38a6132fb8118fb">getAutoTarget</a> () const </td></tr>
<tr class="separator:a5a35baf84e1e3531c38a6132fb8118fb inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac2d254eb530ff299dad804100198cc24 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classKatabatic_1_1AutoContact.html">AutoContact</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#ac2d254eb530ff299dad804100198cc24">getOppositeAnchor</a> (<a class="el" href="classKatabatic_1_1AutoContact.html">AutoContact</a> *) const </td></tr>
<tr class="separator:ac2d254eb530ff299dad804100198cc24 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5a63602ccc44f51012f10d138e1480c4 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a5a63602ccc44f51012f10d138e1480c4">getPerpandicularsBound</a> (set&lt; <a class="el" href="classKatabatic_1_1AutoSegment.html">AutoSegment</a> * &gt; &amp;)</td></tr>
<tr class="separator:a5a63602ccc44f51012f10d138e1480c4 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0ca0f04492f7365856ccceb905968bb5 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classKatabatic_1_1AutoSegment.html">AutoSegment</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a0ca0f04492f7365856ccceb905968bb5">getParent</a> () const </td></tr>
<tr class="separator:a0ca0f04492f7365856ccceb905968bb5 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af85576c58c70007850ad56e238e8d266 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#af85576c58c70007850ad56e238e8d266">getAxis</a> () const </td></tr>
<tr class="separator:af85576c58c70007850ad56e238e8d266 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acedb5dbab9d0c872dc476fdbefff431c inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#acedb5dbab9d0c872dc476fdbefff431c">getOrigin</a> () const </td></tr>
<tr class="separator:acedb5dbab9d0c872dc476fdbefff431c inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6cf0ef9d591a27428ad29332e188b616 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a6cf0ef9d591a27428ad29332e188b616">getExtremity</a> () const </td></tr>
<tr class="separator:a6cf0ef9d591a27428ad29332e188b616 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0599f720e9aac305ecae20c7f4526c58 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Interval.html">Interval</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a0599f720e9aac305ecae20c7f4526c58">getMinSpanU</a> () const </td></tr>
<tr class="separator:a0599f720e9aac305ecae20c7f4526c58 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a61a7442901868f6167e5b5303d8f1736 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a61a7442901868f6167e5b5303d8f1736">getConstraints</a> (<a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Interval.html">Interval</a> &amp;i) const </td></tr>
<tr class="separator:a61a7442901868f6167e5b5303d8f1736 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5a69d84299029f9fd381a85d9de0a488 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">const <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Interval.html">Interval</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a5a69d84299029f9fd381a85d9de0a488">getUserConstraints</a> () const </td></tr>
<tr class="separator:a5a69d84299029f9fd381a85d9de0a488 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a15034a21dff23562fd70a83599a16d3a inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">virtual <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a15034a21dff23562fd70a83599a16d3a">getSlack</a> () const </td></tr>
<tr class="separator:a15034a21dff23562fd70a83599a16d3a inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2786cefb5df6ac92dcbb081c55ae50e6 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a2786cefb5df6ac92dcbb081c55ae50e6">getOptimalMin</a> () const </td></tr>
<tr class="separator:a2786cefb5df6ac92dcbb081c55ae50e6 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9bea24981e7eaafb5746015355bf44f7 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a9bea24981e7eaafb5746015355bf44f7">getOptimalMax</a> () const </td></tr>
<tr class="separator:a9bea24981e7eaafb5746015355bf44f7 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abc07fe91810925f4a0191cd245cc85b6 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Interval.html">Interval</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#abc07fe91810925f4a0191cd245cc85b6">getOptimal</a> (<a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Interval.html">Interval</a> &amp;i) const </td></tr>
<tr class="separator:abc07fe91810925f4a0191cd245cc85b6 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaa87df41319c74dd180039708f68ff7e inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">virtual <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#aaa87df41319c74dd180039708f68ff7e">getCost</a> (<a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a> axis) const </td></tr>
<tr class="separator:aaa87df41319c74dd180039708f68ff7e inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8acbe1037827da2c2fef71a18c5886c7 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classKatabatic_1_1AutoSegment.html">AutoSegment</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a8acbe1037827da2c2fef71a18c5886c7">getCanonical</a> (<a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a> &amp;min, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a> &amp;max)</td></tr>
<tr class="separator:a8acbe1037827da2c2fef71a18c5886c7 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a988beca5780421c168a2475a5298009a inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classKatabatic_1_1AutoSegment.html">AutoSegment</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a988beca5780421c168a2475a5298009a">getCanonical</a> (<a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Interval.html">Interval</a> &amp;i)</td></tr>
<tr class="separator:a988beca5780421c168a2475a5298009a inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1a6fac115cb81db48e3ac9ffa0721bb5 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a1a6fac115cb81db48e3ac9ffa0721bb5">unsetFlags</a> (unsigned int)</td></tr>
<tr class="separator:a1a6fac115cb81db48e3ac9ffa0721bb5 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeb14f94914af58657a0dc2f50ec98df5 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#aeb14f94914af58657a0dc2f50ec98df5">setFlags</a> (unsigned int)</td></tr>
<tr class="separator:aeb14f94914af58657a0dc2f50ec98df5 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abc72aaeefa7450eaf67aee3212ec974d inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#abc72aaeefa7450eaf67aee3212ec974d">computeTerminal</a> ()</td></tr>
<tr class="separator:abc72aaeefa7450eaf67aee3212ec974d inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae82ffef92ad9ffdc5da5e0c1830d9537 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#ae82ffef92ad9ffdc5da5e0c1830d9537">mergeUserConstraints</a> (const <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Interval.html">Interval</a> &amp;)</td></tr>
<tr class="separator:ae82ffef92ad9ffdc5da5e0c1830d9537 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac8768352909d37ebad1c06c9cf4ef8bb inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#ac8768352909d37ebad1c06c9cf4ef8bb">resetUserConstraints</a> ()</td></tr>
<tr class="separator:ac8768352909d37ebad1c06c9cf4ef8bb inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af92b3d000552b630695879dd5d4736a1 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#af92b3d000552b630695879dd5d4736a1">setOptimalMin</a> (<a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a> min)</td></tr>
<tr class="separator:af92b3d000552b630695879dd5d4736a1 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a90173ab4f35b98c6544f9482ccd93b5e inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a90173ab4f35b98c6544f9482ccd93b5e">setOptimalMax</a> (<a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a> max)</td></tr>
<tr class="separator:a90173ab4f35b98c6544f9482ccd93b5e inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a88ac40c065bce0ff97792d18b41b6a67 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a88ac40c065bce0ff97792d18b41b6a67">revalidate</a> ()</td></tr>
<tr class="separator:a88ac40c065bce0ff97792d18b41b6a67 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a39c927c04b5016770692b9b8448c2f04 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classKatabatic_1_1AutoSegment.html">AutoSegment</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a39c927c04b5016770692b9b8448c2f04">makeDogleg</a> (<a class="el" href="classKatabatic_1_1AutoContact.html">AutoContact</a> *)</td></tr>
<tr class="separator:a39c927c04b5016770692b9b8448c2f04 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5ca22c853ee33a2b26367eaf29457766 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a5ca22c853ee33a2b26367eaf29457766">makeDogleg</a> (<a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Interval.html">Interval</a>, unsigned int flags=KbNoFlags)</td></tr>
<tr class="separator:a5ca22c853ee33a2b26367eaf29457766 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa21b16647c1750ba8b3eb9d99b12f073 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#aa21b16647c1750ba8b3eb9d99b12f073">makeDogleg</a> (<a class="el" href="classKatabatic_1_1GCell.html">GCell</a> *, unsigned int flags=KbNoFlags)</td></tr>
<tr class="separator:aa21b16647c1750ba8b3eb9d99b12f073 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1fbc0adb4c0b14632edc7c55f028cd4b inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a1fbc0adb4c0b14632edc7c55f028cd4b">slacken</a> (unsigned int flags)</td></tr>
<tr class="separator:a1fbc0adb4c0b14632edc7c55f028cd4b inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acecc9a1d55a271a4b1587d7872cfe133 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#acecc9a1d55a271a4b1587d7872cfe133">reduceDoglegLayer</a> ()</td></tr>
<tr class="separator:acecc9a1d55a271a4b1587d7872cfe133 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a27a6a2c747ff93d209878a32d97e9157 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a27a6a2c747ff93d209878a32d97e9157">reduce</a> ()</td></tr>
<tr class="separator:a27a6a2c747ff93d209878a32d97e9157 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ace393c3c082a5e62a348168354660e39 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#ace393c3c082a5e62a348168354660e39">raise</a> ()</td></tr>
<tr class="separator:ace393c3c082a5e62a348168354660e39 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8b0d5044dce091d06b633848a6f8a66d inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classKatabatic_1_1AutoSegment.html">AutoSegment</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a8b0d5044dce091d06b633848a6f8a66d">canonize</a> (unsigned int flags=KbNoFlags)</td></tr>
<tr class="separator:a8b0d5044dce091d06b633848a6f8a66d inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a23599eee5a07af377fbc8d47cda7e7b0 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a23599eee5a07af377fbc8d47cda7e7b0">invalidate</a> (unsigned int flags=<a class="el" href="namespaceKatabatic.html#a2af2ad6b6441614038caf59d04b3b217a3f95c1f06fe0b58b44ccbc57d99f2a5d">KbPropagate</a>)</td></tr>
<tr class="separator:a23599eee5a07af377fbc8d47cda7e7b0 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7654ca2b0787b8a9eac8629bf9218761 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a7654ca2b0787b8a9eac8629bf9218761">computeOptimal</a> (set&lt; <a class="el" href="classKatabatic_1_1AutoSegment.html">AutoSegment</a> * &gt; &amp;processeds)</td></tr>
<tr class="separator:a7654ca2b0787b8a9eac8629bf9218761 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3881efebb7510d9b22e5f89bcd418954 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a3881efebb7510d9b22e5f89bcd418954">setAxis</a> (<a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a>, unsigned int flags=KbNoFlags)</td></tr>
<tr class="separator:a3881efebb7510d9b22e5f89bcd418954 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8ab41a962e18810808f4f065863b5a73 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a8ab41a962e18810808f4f065863b5a73">toConstraintAxis</a> (unsigned int flags=<a class="el" href="namespaceKatabatic.html#a2af2ad6b6441614038caf59d04b3b217a45a219697151531a23e997b11118e08a">KbRealignate</a>)</td></tr>
<tr class="separator:a8ab41a962e18810808f4f065863b5a73 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a750983d7154c94b54537127a3a18e14b inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a750983d7154c94b54537127a3a18e14b">toOptimalAxis</a> (unsigned int flags=<a class="el" href="namespaceKatabatic.html#a2af2ad6b6441614038caf59d04b3b217a45a219697151531a23e997b11118e08a">KbRealignate</a>)</td></tr>
<tr class="separator:a750983d7154c94b54537127a3a18e14b inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4430f9704a59e1d4f7c37d7166649510 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceKatabatic.html#a2221b0ddbc24f331809fc86f98e38041">AutoSegments</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a4430f9704a59e1d4f7c37d7166649510">getOnSourceContact</a> (unsigned int direction)</td></tr>
<tr class="separator:a4430f9704a59e1d4f7c37d7166649510 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aadbb84c0f1383f6a2addc2661e388583 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceKatabatic.html#a2221b0ddbc24f331809fc86f98e38041">AutoSegments</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#aadbb84c0f1383f6a2addc2661e388583">getOnTargetContact</a> (unsigned int direction)</td></tr>
<tr class="separator:aadbb84c0f1383f6a2addc2661e388583 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaca749f49cd03ca06449d5ea2104033a inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceKatabatic.html#a2221b0ddbc24f331809fc86f98e38041">AutoSegments</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#aaca749f49cd03ca06449d5ea2104033a">getAligneds</a> (unsigned int flags=KbNoFlags)</td></tr>
<tr class="separator:aaca749f49cd03ca06449d5ea2104033a inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aadc6427db83ebdb690e74980d9c8d7d8 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceKatabatic.html#a2221b0ddbc24f331809fc86f98e38041">AutoSegments</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#aadc6427db83ebdb690e74980d9c8d7d8">getPerpandiculars</a> ()</td></tr>
<tr class="separator:aadc6427db83ebdb690e74980d9c8d7d8 inherit pub_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:a3715b38135ca24745f610bebd3407c10"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoVertical.html#a3715b38135ca24745f610bebd3407c10">_postCreate</a> ()</td></tr>
<tr class="separator:a3715b38135ca24745f610bebd3407c10"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7c13d9795eafd477994961f8a0d962d0"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoVertical.html#a7c13d9795eafd477994961f8a0d962d0">_preDestroy</a> ()</td></tr>
<tr class="separator:a7c13d9795eafd477994961f8a0d962d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classKatabatic_1_1AutoSegment"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classKatabatic_1_1AutoSegment')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classKatabatic_1_1AutoSegment.html">AutoSegment</a></td></tr>
<tr class="memitem:ae64a61508d148cb4a0ee9b5ffb177659 inherit pro_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#ae64a61508d148cb4a0ee9b5ffb177659">AutoSegment</a> (<a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Segment.html">Segment</a> *segment)</td></tr>
<tr class="separator:ae64a61508d148cb4a0ee9b5ffb177659 inherit pro_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5d135025de0c1725d6252099c2e70e2b inherit pro_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a5d135025de0c1725d6252099c2e70e2b">~AutoSegment</a> ()</td></tr>
<tr class="separator:a5d135025de0c1725d6252099c2e70e2b inherit pro_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6a98d2e5839b880893703ad45db4e4c4 inherit pro_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a6a98d2e5839b880893703ad45db4e4c4">_invalidate</a> ()</td></tr>
<tr class="separator:a6a98d2e5839b880893703ad45db4e4c4 inherit pro_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ade0d97282e43595452ae8ac326d99752 inherit pro_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#ade0d97282e43595452ae8ac326d99752">_getFlags</a> () const </td></tr>
<tr class="separator:ade0d97282e43595452ae8ac326d99752 inherit pro_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_static_methods_classKatabatic_1_1AutoSegment"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classKatabatic_1_1AutoSegment')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="classKatabatic_1_1AutoSegment.html">AutoSegment</a></td></tr>
<tr class="memitem:ab0cc9e57beeceec519cd4bd3e415569e inherit pub_static_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classKatabatic_1_1AutoSegment.html">AutoSegment</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#ab0cc9e57beeceec519cd4bd3e415569e">create</a> (<a class="el" href="classKatabatic_1_1AutoContact.html">AutoContact</a> *source, <a class="el" href="classKatabatic_1_1AutoContact.html">AutoContact</a> *target, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Segment.html">Segment</a> *hurricaneSegment)</td></tr>
<tr class="separator:ab0cc9e57beeceec519cd4bd3e415569e inherit pub_static_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afa7ce652576b17985859fd6c29d21489 inherit pub_static_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classKatabatic_1_1AutoSegment.html">AutoSegment</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#afa7ce652576b17985859fd6c29d21489">create</a> (<a class="el" href="classKatabatic_1_1AutoContact.html">AutoContact</a> *source, <a class="el" href="classKatabatic_1_1AutoContact.html">AutoContact</a> *target, unsigned int dir, size_t depth=RoutingGauge::nlayerdepth)</td></tr>
<tr class="separator:afa7ce652576b17985859fd6c29d21489 inherit pub_static_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_static_methods_classKatabatic_1_1AutoSegment"><td colspan="2" onclick="javascript:toggleInherit('pro_static_methods_classKatabatic_1_1AutoSegment')"><img src="closed.png" alt="-"/>&#160;Static Protected Member Functions inherited from <a class="el" href="classKatabatic_1_1AutoSegment.html">AutoSegment</a></td></tr>
<tr class="memitem:a8348937b1db79480305b178482d3ed61 inherit pro_static_methods_classKatabatic_1_1AutoSegment"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1AutoSegment.html#a8348937b1db79480305b178482d3ed61">_preCreate</a> (<a class="el" href="classKatabatic_1_1AutoContact.html">AutoContact</a> *source, <a class="el" href="classKatabatic_1_1AutoContact.html">AutoContact</a> *target)</td></tr>
<tr class="separator:a8348937b1db79480305b178482d3ed61 inherit pro_static_methods_classKatabatic_1_1AutoSegment"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Concrete Vertical <a class="el" href="classKatabatic_1_1AutoSegment.html" title="Abstract base class for AutoSegment. ">AutoSegment</a>. </p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="ab0c6fe24404afe19268a7b796fa74bec"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool _canSlacken </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><b>Returns:</b> <b>true</b> if the segment can be slackened. That is, source or target constraints are less than three pitches. </p>
<p>Implements <a class="el" href="classKatabatic_1_1AutoSegment.html#a676fcb7ece71d129b7a4d87a3f2e07aa">AutoSegment</a>.</p>
<p>References <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Interval.html#a17c0ad5f01a47885996b413d87f1af4d">Interval::contains()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#afb5b4d8bddc75cd604c7a68aa5943c12">AutoSegment::getAutoSource()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#a5a35baf84e1e3531c38a6132fb8118fb">AutoSegment::getAutoTarget()</a>, <a class="el" href="classKatabatic_1_1AutoContact.html#ab45ccfee0f781ec16c50672663d36141">AutoContact::getGCell()</a>, <a class="el" href="classKatabatic_1_1GCell.html#a46861e2e666df89cd2e6eaa7ee146bcf">GCell::getSide()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Interval.html#a142c3ec37ebe74c253b3fe0039ef2143">Interval::inflate()</a>, and <a class="el" href="namespaceKatabatic.html#a2af2ad6b6441614038caf59d04b3b217a1a9045673c5d3c30b067100f1440ae1b">Katabatic::KbHorizontal</a>.</p>
</div>
</div>
<a class="anchor" id="aa9e85f38a842d1966eb72afccb446676"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool canMoveULeft </td>
<td>(</td>
<td class="paramtype">float&#160;</td>
<td class="paramname"><em>reserve</em> = <code>0.0</code></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd><b>true</b> if the <em>global</em> segment can be moved on the left <a class="el" href="classKatabatic_1_1GCell.html" title="Routing Global Cell. ">GCell</a> (for a vertical) or down (for an horizontal). The move is accepted only if it do not change the amount of global wiring. Thus the following conditions:<ul>
<li>The segment mustn't be on the leftmost <a class="el" href="classKatabatic_1_1GCell.html" title="Routing Global Cell. ">GCell</a> (obvious...).</li>
<li>The segment must be global.</li>
<li>The source and target contacts must be AutoContactTurn(s).</li>
<li>At least one of the perpandicular must be global <b>and</b> connected through the <em>target</em>. That is, it's a global which extends toward left.</li>
<li>The <a class="el" href="classKatabatic_1_1GCell.html" title="Routing Global Cell. ">GCell</a> of maximum density on the left must remains below the current <a class="el" href="classKatabatic_1_1GCell.html" title="Routing Global Cell. ">GCell</a> of maximum density, with a margin of <code>reserve</code> (expressed in total saturation percentage). </li>
</ul>
</dd></dl>
<p>Implements <a class="el" href="classKatabatic_1_1AutoSegment.html#aad55626c9d793a0b08bcff5be2a5ad0c">AutoSegment</a>.</p>
<p>References <a class="el" href="classKatabatic_1_1AutoSegment.html#afb5b4d8bddc75cd604c7a68aa5943c12">AutoSegment::getAutoSource()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#a5a35baf84e1e3531c38a6132fb8118fb">AutoSegment::getAutoTarget()</a>, <a class="el" href="classKatabatic_1_1AutoContact.html#ab45ccfee0f781ec16c50672663d36141">AutoContact::getGCell()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#ab45ccfee0f781ec16c50672663d36141">AutoSegment::getGCell()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#a304ee4e02745811e04ac6fb688bf834f">AutoSegment::getLayer()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/crlcore/doc/crlcore/html/crlcore.tag:../crlcore" href="../crlcore/classCRL_1_1RoutingGauge.html#a40e8127ea7a26b26c3e797571b03121a">RoutingGauge::getLayerDepth()</a>, <a class="el" href="classKatabatic_1_1GCell.html#a0aba3a4c02ade1a0af6d4956b2d4d944">GCell::getLeft()</a>, <a class="el" href="classKatabatic_1_1Session.html#a9a05289b33122f312aa2c88c4b023292">Session::getRoutingGauge()</a>, <a class="el" href="classKatabatic_1_1AutoContact.html#a50531ded68cc5206fe104b8d8bf3bd87">AutoContact::getSegment()</a>, <a class="el" href="classKatabatic_1_1GCell.html#a43374e26fb08fb4a4d47599e1f81e293">GCell::getUp()</a>, <a class="el" href="classKatabatic_1_1GCell.html#acfacab8f1d78e38ece30b4d2c63cf6d9">GCell::getWDensity()</a>, and <a class="el" href="classKatabatic_1_1AutoSegment.html#a017b1ead8e5988dd0e491cae93ac510c">AutoSegment::isGlobal()</a>.</p>
</div>
</div>
<a class="anchor" id="a7559a856712400a9325665842e0bcd64"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool canMoveURight </td>
<td>(</td>
<td class="paramtype">float&#160;</td>
<td class="paramname"><em>reserve</em> = <code>0.0</code></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd><b>true</b> if the <em>global</em> segment can be moved on the right <a class="el" href="classKatabatic_1_1GCell.html" title="Routing Global Cell. ">GCell</a> (for a vertical) or up (for an horizontal). The move is accepted only if it do not change the amount of global wiring. Thus the following conditions:<ul>
<li>The segment mustn't be on the leftmost <a class="el" href="classKatabatic_1_1GCell.html" title="Routing Global Cell. ">GCell</a> (obvious...).</li>
<li>The segment must be global.</li>
<li>The source and target contacts must be AutoContactTurn(s).</li>
<li>At least one of the perpandicular must be global <b>and</b> connected through the <em>source</em>. That is, it's a global which extends toward right.</li>
<li>The <a class="el" href="classKatabatic_1_1GCell.html" title="Routing Global Cell. ">GCell</a> of maximum density on the left must remains below the current <a class="el" href="classKatabatic_1_1GCell.html" title="Routing Global Cell. ">GCell</a> of maximum density, with a margin of <code>reserve</code> (expressed in total saturation percentage). </li>
</ul>
</dd></dl>
<p>Implements <a class="el" href="classKatabatic_1_1AutoSegment.html#a096deb8a143f098eac2bff9ab9c52243">AutoSegment</a>.</p>
<p>References <a class="el" href="classKatabatic_1_1AutoSegment.html#afb5b4d8bddc75cd604c7a68aa5943c12">AutoSegment::getAutoSource()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#a5a35baf84e1e3531c38a6132fb8118fb">AutoSegment::getAutoTarget()</a>, <a class="el" href="classKatabatic_1_1AutoContact.html#ab45ccfee0f781ec16c50672663d36141">AutoContact::getGCell()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#ab45ccfee0f781ec16c50672663d36141">AutoSegment::getGCell()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#a304ee4e02745811e04ac6fb688bf834f">AutoSegment::getLayer()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/crlcore/doc/crlcore/html/crlcore.tag:../crlcore" href="../crlcore/classCRL_1_1RoutingGauge.html#a40e8127ea7a26b26c3e797571b03121a">RoutingGauge::getLayerDepth()</a>, <a class="el" href="classKatabatic_1_1GCell.html#a23fdbef3699158d88da408ad8c23d091">GCell::getRight()</a>, <a class="el" href="classKatabatic_1_1Session.html#a9a05289b33122f312aa2c88c4b023292">Session::getRoutingGauge()</a>, <a class="el" href="classKatabatic_1_1AutoContact.html#a50531ded68cc5206fe104b8d8bf3bd87">AutoContact::getSegment()</a>, <a class="el" href="classKatabatic_1_1GCell.html#a43374e26fb08fb4a4d47599e1f81e293">GCell::getUp()</a>, <a class="el" href="classKatabatic_1_1GCell.html#acfacab8f1d78e38ece30b4d2c63cf6d9">GCell::getWDensity()</a>, and <a class="el" href="classKatabatic_1_1AutoSegment.html#a017b1ead8e5988dd0e491cae93ac510c">AutoSegment::isGlobal()</a>.</p>
</div>
</div>
<a class="anchor" id="a9e651c17b47f82166a02865c9296a2df"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Segment.html">Segment</a> * base </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><b>Returns:</b> the decorated <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Segment.html">Hurricane::Segment</a>. </p>
<p>Implements <a class="el" href="classKatabatic_1_1AutoSegment.html#ade416d0483aefe986988fa89a7cf6fcf">AutoSegment</a>.</p>
</div>
</div>
<a class="anchor" id="adcd751c3ec393fabdef5ede0ffff6f2d"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Segment.html">Segment</a> * base </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><b>Returns:</b> the decorated <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Segment.html">Hurricane::Segment</a> (const flavor). </p>
<p>Implements <a class="el" href="classKatabatic_1_1AutoSegment.html#a53877ff5ef48eb0030c2581a6eeb3c09">AutoSegment</a>.</p>
</div>
</div>
<a class="anchor" id="ab6a809b6f3ef3cf5385fa35580e31e7a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Vertical.html">Vertical</a> * getVertical </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><b>Returns:</b> If the decorated segment is a <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Vertical.html">Hurricane::Vertical</a>, return it. <code>NULL</code> otherwise. </p>
<p>Reimplemented from <a class="el" href="classKatabatic_1_1AutoSegment.html#ab6a809b6f3ef3cf5385fa35580e31e7a">AutoSegment</a>.</p>
</div>
</div>
<a class="anchor" id="a3932d5ce9094ead510e4e33bd4e78e1a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a> getSourceU </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><b>Returns:</b> The <a class="el" href="classKatabatic_1_1AutoSegment.html" title="Abstract base class for AutoSegment. ">AutoSegment</a> <em>uniform</em> source position. (X for an horizontal and Y for a Vertical). </p>
<p>Implements <a class="el" href="classKatabatic_1_1AutoSegment.html#aeaa1543880686755e389c4807128428f">AutoSegment</a>.</p>
<p>References <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Segment.html#abf305dd4510de6fe6fae5286acbe285a">Segment::getSourceY()</a>.</p>
</div>
</div>
<a class="anchor" id="a8e5f2a51f56c6bdb74024ac77c08a22a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a> getTargetU </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><b>Returns:</b> The <a class="el" href="classKatabatic_1_1AutoSegment.html" title="Abstract base class for AutoSegment. ">AutoSegment</a> <em>uniform</em> target position. (X for an horizontal and Y for a Vertical). </p>
<p>Implements <a class="el" href="classKatabatic_1_1AutoSegment.html#a828fef2716cc9c370d6d170bb96556ec">AutoSegment</a>.</p>
<p>References <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Segment.html#a27d530abcff9742b81c4b549db161b90">Segment::getTargetY()</a>.</p>
</div>
</div>
<a class="anchor" id="a44998a5f0d71597006fe4f3ffed8e3d1"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a> getDuSource </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><b>Returns:</b> The <a class="el" href="classKatabatic_1_1AutoSegment.html" title="Abstract base class for AutoSegment. ">AutoSegment</a> <em>uniform</em> delta from source. (dX for an horizontal and dY for a Vertical). </p>
<p>Implements <a class="el" href="classKatabatic_1_1AutoSegment.html#ab4881df67bd8f036d0199ed6540fe774">AutoSegment</a>.</p>
<p>References <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Vertical.html#aeae3002383857f9e0b7bcc7d7cd85210">Vertical::getDySource()</a>.</p>
</div>
</div>
<a class="anchor" id="a4f505a59109fc6087696f483ccc7f9dc"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a> getDuTarget </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><b>Returns:</b> The <a class="el" href="classKatabatic_1_1AutoSegment.html" title="Abstract base class for AutoSegment. ">AutoSegment</a> <em>uniform</em> delta from source. (dX for an horizontal and dY for a Vertical). </p>
<p>Implements <a class="el" href="classKatabatic_1_1AutoSegment.html#a0644d656eedc71dba2fb3c6c0d83ed3f">AutoSegment</a>.</p>
<p>References <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Vertical.html#a389a2457b97a35f3b801b94d88a40d9a">Vertical::getDyTarget()</a>.</p>
</div>
</div>
<a class="anchor" id="a9409a4b64c21fa8b1517149728f0a4c1"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Interval.html">Interval</a> getSpanU </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><b>Returns:</b> The <a class="el" href="classKatabatic_1_1AutoSegment.html" title="Abstract base class for AutoSegment. ">AutoSegment</a> <em>uniform</em> occupying interval (on X for horizontal and on Y for vertical). </p>
<p>Implements <a class="el" href="classKatabatic_1_1AutoSegment.html#a248eb2fbb06e3286650b28567d495f0b">AutoSegment</a>.</p>
<p>References <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Segment.html#abf305dd4510de6fe6fae5286acbe285a">Segment::getSourceY()</a>, and <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Segment.html#a27d530abcff9742b81c4b549db161b90">Segment::getTargetY()</a>.</p>
</div>
</div>
<a class="anchor" id="aff207f4cc3c3682ed57369fdfe157d2d"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool getConstraints </td>
<td>(</td>
<td class="paramtype"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a> &amp;&#160;</td>
<td class="paramname"><em>min</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a> &amp;&#160;</td>
<td class="paramname"><em>max</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><b>Returns:</b> in <code>min</code> &amp; <code>max</code> the allowed range for the segment axis. </p>
<p>Implements <a class="el" href="classKatabatic_1_1AutoSegment.html#a7c2fed22b081f8d3b7a69abb457153ea">AutoSegment</a>.</p>
<p>References <a class="el" href="classKatabatic_1_1AutoSegment.html#afb5b4d8bddc75cd604c7a68aa5943c12">AutoSegment::getAutoSource()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#a5a35baf84e1e3531c38a6132fb8118fb">AutoSegment::getAutoTarget()</a>, <a class="el" href="classKatabatic_1_1AutoContact.html#a20ab0da1716ecd002f3abc76285dd5a1">AutoContact::getCBXMax()</a>, <a class="el" href="classKatabatic_1_1AutoContact.html#a0c391297a64d0ae15c14a6e803b0316e">AutoContact::getCBXMin()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#a5a69d84299029f9fd381a85d9de0a488">AutoSegment::getUserConstraints()</a>, and <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#gadc9c1a06b4296dbddcf711077113f4bd">DbU::getValueString()</a>.</p>
</div>
</div>
<a class="anchor" id="a3c24695921b612a57c5ac60ff0aa3878"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Interval.html">Interval</a> getSourceConstraints </td>
<td>(</td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>flags</em> = <code>0</code></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>The Interval into witch the source <a class="el" href="classKatabatic_1_1AutoContact.html" title="Abstract base class for AutoContact. ">AutoContact</a> can vary. By default all deduced constraints and user constraints are took into account. If <code>flags</code> contains <code>KbNativeConstraints</code> the constraint returned is only the enclosing <a class="el" href="classKatabatic_1_1GCell.html" title="Routing Global Cell. ">GCell</a>. </dd></dl>
<p>Implements <a class="el" href="classKatabatic_1_1AutoSegment.html#ab7685e309e1d910db3e8237f8a898c35">AutoSegment</a>.</p>
<p>References <a class="el" href="classKatabatic_1_1AutoSegment.html#afb5b4d8bddc75cd604c7a68aa5943c12">AutoSegment::getAutoSource()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Box.html#acc5d2a8bd02e55b7dd89b2e3eb978574">Box::getXMax()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Box.html#aface811f07334748f81b547336bb7658">Box::getXMin()</a>, and <a class="el" href="namespaceKatabatic.html#a2af2ad6b6441614038caf59d04b3b217af1d61226371622b8063fe47c63cd9dff">Katabatic::KbNativeConstraints</a>.</p>
</div>
</div>
<a class="anchor" id="aaa70ba865e312fb30f81fa7f973a0376"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Interval.html">Interval</a> getTargetConstraints </td>
<td>(</td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>flags</em> = <code>0</code></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>The Interval into witch the target <a class="el" href="classKatabatic_1_1AutoContact.html" title="Abstract base class for AutoContact. ">AutoContact</a> can vary. By default all deduced constraints and user constraints are took into account. If <code>flags</code> contains <code>KbNativeConstraints</code> the constraint returned is only the enclosing <a class="el" href="classKatabatic_1_1GCell.html" title="Routing Global Cell. ">GCell</a>. </dd></dl>
<p>Implements <a class="el" href="classKatabatic_1_1AutoSegment.html#a9c1b8b3cd57fb7b0bf60c7a6148237c2">AutoSegment</a>.</p>
<p>References <a class="el" href="classKatabatic_1_1AutoSegment.html#a5a35baf84e1e3531c38a6132fb8118fb">AutoSegment::getAutoTarget()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Box.html#acc5d2a8bd02e55b7dd89b2e3eb978574">Box::getXMax()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Box.html#aface811f07334748f81b547336bb7658">Box::getXMin()</a>, and <a class="el" href="namespaceKatabatic.html#a2af2ad6b6441614038caf59d04b3b217af1d61226371622b8063fe47c63cd9dff">Katabatic::KbNativeConstraints</a>.</p>
</div>
</div>
<a class="anchor" id="a09d03fbca9ab891c2f25bdae7f89a899"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">unsigned int getDirection </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><b>Returns:</b> <a class="el" href="namespaceKatabatic.html#a2af2ad6b6441614038caf59d04b3b217a1a9045673c5d3c30b067100f1440ae1b">Katabatic::KbHorizontal</a> or <a class="el" href="namespaceKatabatic.html#a2af2ad6b6441614038caf59d04b3b217a284cad95203a27172838b09e396e3590">Katabatic::KbVertical</a> according to the decorated segment. </p>
<p>Implements <a class="el" href="classKatabatic_1_1AutoSegment.html#ae35b78590ed6aa546b626ef95f28c533">AutoSegment</a>.</p>
<p>References <a class="el" href="namespaceKatabatic.html#a2af2ad6b6441614038caf59d04b3b217a284cad95203a27172838b09e396e3590">Katabatic::KbVertical</a>.</p>
</div>
</div>
<a class="anchor" id="ab681dca7dc930e06cacc2de85bf99166"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">size_t getGCells </td>
<td>(</td>
<td class="paramtype">vector&lt; <a class="el" href="classKatabatic_1_1GCell.html">GCell</a> * &gt; &amp;&#160;</td>
<td class="paramname"><em>gcells</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">gcells</td><td>A vector that will be filled by all the GCells that the segment overlap. In increasing order, from source to target. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The vector's size. </dd></dl>
<p>Implements <a class="el" href="classKatabatic_1_1AutoSegment.html#ad9d24f97e55e2f538ed1c907bee99e81">AutoSegment</a>.</p>
<p>References <a class="el" href="classKatabatic_1_1AutoSegment.html#afb5b4d8bddc75cd604c7a68aa5943c12">AutoSegment::getAutoSource()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#a5a35baf84e1e3531c38a6132fb8118fb">AutoSegment::getAutoTarget()</a>, <a class="el" href="classKatabatic_1_1AutoContact.html#ab45ccfee0f781ec16c50672663d36141">AutoContact::getGCell()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#ab45ccfee0f781ec16c50672663d36141">AutoSegment::getGCell()</a>, and <a class="el" href="classKatabatic_1_1GCell.html#a43374e26fb08fb4a4d47599e1f81e293">GCell::getUp()</a>.</p>
</div>
</div>
<a class="anchor" id="a756616a1967c5ad8efd08be96d18f25d"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void setDuSource </td>
<td>(</td>
<td class="paramtype"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a>&#160;</td>
<td class="paramname"><em>du</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the <em>uniform</em> <code>dU</code> from source anchor (dX for Horizontal, dY for Vertical). </p>
<p>Implements <a class="el" href="classKatabatic_1_1AutoSegment.html#aaf60d18ab6d951a34a3d06959ce2e76f">AutoSegment</a>.</p>
</div>
</div>
<a class="anchor" id="a9df2ef68c1fbf4159cc837be5c699b53"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void setDuTarget </td>
<td>(</td>
<td class="paramtype"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a>&#160;</td>
<td class="paramname"><em>du</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the <em>uniform</em> <code>dU</code> from target anchor (dX for Horizontal, dY for Vertical). </p>
<p>Implements <a class="el" href="classKatabatic_1_1AutoSegment.html#a246756d4c8b3e094a0a9d6de3c2109ff">AutoSegment</a>.</p>
</div>
</div>
<a class="anchor" id="a59058f4593049c583c5b3698ff81b299"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void updateOrient </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Ensure that source is lower than target. Swap them if needed. Swap never occurs on global segment because their source and target anchors are from different <a class="el" href="classKatabatic_1_1GCell.html" title="Routing Global Cell. ">GCell</a>, which are already ordered. </p>
<p>Implements <a class="el" href="classKatabatic_1_1AutoSegment.html#a102e0f4bbb0386e41be214d15a9e4549">AutoSegment</a>.</p>
<p>References <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Segment.html#abf305dd4510de6fe6fae5286acbe285a">Segment::getSourceY()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Segment.html#a27d530abcff9742b81c4b549db161b90">Segment::getTargetY()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Segment.html#aceaa61242eb7275cf9c6a39cf1868c53">Segment::invert()</a>, <a class="el" href="namespaceKatabatic.html#a94585537ee1724ea9315578ec54380f4a29f1952fe978a9fdd1902a6fcd085b44">Katabatic::SegSourceBottom</a>, <a class="el" href="namespaceKatabatic.html#a94585537ee1724ea9315578ec54380f4ae5f763897c8e6221dcc8177816c72b33">Katabatic::SegSourceTop</a>, <a class="el" href="namespaceKatabatic.html#a94585537ee1724ea9315578ec54380f4ae600c6015187dddac3860fcc008a2213">Katabatic::SegTargetBottom</a>, <a class="el" href="namespaceKatabatic.html#a94585537ee1724ea9315578ec54380f4a100b7ff78619133970733fedbb34ffa8">Katabatic::SegTargetTop</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#aeb14f94914af58657a0dc2f50ec98df5">AutoSegment::setFlags()</a>, and <a class="el" href="classKatabatic_1_1AutoSegment.html#a1a6fac115cb81db48e3ac9ffa0721bb5">AutoSegment::unsetFlags()</a>.</p>
</div>
</div>
<a class="anchor" id="a9662a77c2ed8553d6a0312c5292060ad"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void updatePositions </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Update the segment begenning and ending positions. The positions takes into account the extension caps and reflect the real space used by the segment under it's long axis. </p>
<p>Implements <a class="el" href="classKatabatic_1_1AutoSegment.html#a6d95f4de39c13611786c95ddc7b8942e">AutoSegment</a>.</p>
<p>References <a class="el" href="classKatabatic_1_1Session.html#a909ce95ac840ee708f9a49366f0c2690">Session::getExtensionCap()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#a304ee4e02745811e04ac6fb688bf834f">AutoSegment::getLayer()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Segment.html#abf305dd4510de6fe6fae5286acbe285a">Segment::getSourceY()</a>, and <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Segment.html#a27d530abcff9742b81c4b549db161b90">Segment::getTargetY()</a>.</p>
</div>
</div>
<a class="anchor" id="acfbdc94b1e84bd192087df53ead1f06f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool checkPositions </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><b>Returns:</b> <b>true</b> if the relative positions of source &amp; target are coherent. (source &lt;= target). </p>
<p>Implements <a class="el" href="classKatabatic_1_1AutoSegment.html#af026a81002bd907f1ccd4a4784aaa1db">AutoSegment</a>.</p>
<p>References <a class="el" href="classKatabatic_1_1Session.html#a909ce95ac840ee708f9a49366f0c2690">Session::getExtensionCap()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#a304ee4e02745811e04ac6fb688bf834f">AutoSegment::getLayer()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Segment.html#abf305dd4510de6fe6fae5286acbe285a">Segment::getSourceY()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Segment.html#a27d530abcff9742b81c4b549db161b90">Segment::getTargetY()</a>, and <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#gadc9c1a06b4296dbddcf711077113f4bd">DbU::getValueString()</a>.</p>
</div>
</div>
<a class="anchor" id="a46576c7c5c5146f8fa53a821b0766994"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool checkConstraints </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><b>Returns:</b> <b>true</b> if the constraint intervel is coherent (non-empty or punctual in the worst case). </p>
<p>Implements <a class="el" href="classKatabatic_1_1AutoSegment.html#a3d5732fd10b4a05076981066a4674487">AutoSegment</a>.</p>
<p>References <a class="el" href="classKatabatic_1_1AutoSegment.html#afb5b4d8bddc75cd604c7a68aa5943c12">AutoSegment::getAutoSource()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#a5a35baf84e1e3531c38a6132fb8118fb">AutoSegment::getAutoTarget()</a>, and <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Interval.html#abc953789f0e6cfc58f8564c81c4788bf">Interval::intersect()</a>.</p>
</div>
</div>
<a class="anchor" id="a36c0eecad40d3559b5378caefec6a7e0"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">unsigned int _makeDogleg </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classKatabatic_1_1GCell.html">GCell</a> *&#160;</td>
<td class="paramname"><em>doglegGCell</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>flags</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><b>This method is the workhorse for the various dogleg and topology restauration methods.</b> It is the atomic method that actually make the dogleg on <b>this</b> segment.</p>
<p><b>Returns:</b> <a class="el" href="namespaceKatabatic.html#a2af2ad6b6441614038caf59d04b3b217af756099f1bbe259dd1bf22067dc40eac">Katabatic::KbUseAboveLayer</a> if the dogleg is using the <em>above</em> layer (<a class="el" href="namespaceKatabatic.html#a2af2ad6b6441614038caf59d04b3b217a41cbd981337678e042354f340bfae25d">Katabatic::KbUseBelowLayer</a> for the below layer).</p>
<p>Break the current segment in two (a.k.a. making a dogleg).</p>
<ul>
<li>The segment is broken inside <code>doglegGCell</code>.</li>
<li>Two new segments are createds, one perpandicular and one parallel.</li>
<li>The original segment is always kept attached to the <em>source</em>. (the new parallel fragment is attached to the <em>target</em>).</li>
<li>The perpandicular segment is in the layer <em>above</em> by default. If we are already on the topmost routing layer, the <em>below</em> layer is used.</li>
<li>If the segment pass through the breaking <a class="el" href="classKatabatic_1_1GCell.html" title="Routing Global Cell. ">GCell</a>, it's axis is set into the center. If the segment is local, the axis is the middle of the segment.</li>
<li>The Local/Global kind of the original segment is updated. The local/global status is computed by the constructor of the <a class="el" href="classKatabatic_1_1AutoSegment.html" title="Abstract base class for AutoSegment. ">AutoSegment</a> for the perpandicular and the new parallel.</li>
<li>The terminal state is updated. If the segment is a strong terminal the part that is no longer directly connected to the terminal is demoted to <a class="el" href="namespaceKatabatic.html#a94585537ee1724ea9315578ec54380f4a7b3e09b8ab4cf676fd308535d7fba892">Katabatic::SegWeakTerminal1</a>.</li>
<li>The perpandicular is obviously a canonical. If the broken segment is canonical, the original <b>is</b> left canonical and only the new parallel is re-canonized. Otherwise, we re-canonise both sets of aligned segments (the one on the source and the one on the target).</li>
<li>The three segments are added to the session dogleg stack.</li>
</ul>
<p><span class="red">After this method call the net topology is guarantee to be valid.</span></p>
<div class="image">
<img src="_makeDogleg-1.png" alt="_makeDogleg-1.png"/>
<div class="caption">
Example Case 1</div></div>
<div class="image">
<img src="_makeDogleg-2.png" alt="_makeDogleg-2.png"/>
<div class="caption">
Example Case 2</div></div>
<p>Implements <a class="el" href="classKatabatic_1_1AutoSegment.html#a37a14b40295ccb50cd5001891385807b">AutoSegment</a>.</p>
<p>References <a class="el" href="classKatabatic_1_1AutoContact.html#a7f6571edacd5e4120cc9b87abd23082a">AutoContact::base()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#a8b0d5044dce091d06b633848a6f8a66d">AutoSegment::canonize()</a>, <a class="el" href="classKatabatic_1_1AutoContactTurn.html#a9d4adb00ccea486f5478bb24e171bdb3">AutoContactTurn::create()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#ab0cc9e57beeceec519cd4bd3e415569e">AutoSegment::create()</a>, <a class="el" href="classKatabatic_1_1Session.html#aed01e83f7d8dc7acd85156256a9e776c">Session::dogleg()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#afb5b4d8bddc75cd604c7a68aa5943c12">AutoSegment::getAutoSource()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#a5a35baf84e1e3531c38a6132fb8118fb">AutoSegment::getAutoTarget()</a>, <a class="el" href="classKatabatic_1_1Session.html#a4d9fd503149d2fff66eb8ba3955b7a13">Session::getConfiguration()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/crlcore/doc/crlcore/html/crlcore.tag:../crlcore" href="../crlcore/classCRL_1_1RoutingGauge.html#ab7d83a8694be580a6a4b9aa60adcb0b0">RoutingGauge::getContactLayer()</a>, <a class="el" href="classKatabatic_1_1AutoContact.html#ab45ccfee0f781ec16c50672663d36141">AutoContact::getGCell()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Component.html#ab451ef19059e6e5bbb77ae391d02a039">Component::getLayer()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#a304ee4e02745811e04ac6fb688bf834f">AutoSegment::getLayer()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/crlcore/doc/crlcore/html/crlcore.tag:../crlcore" href="../crlcore/classCRL_1_1RoutingGauge.html#a40e8127ea7a26b26c3e797571b03121a">RoutingGauge::getLayerDepth()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Component.html#a16607d07d915781dc4f5e6663cd7dd0a">Component::getNet()</a>, <a class="el" href="classKatabatic_1_1Session.html#a9a05289b33122f312aa2c88c4b023292">Session::getRoutingGauge()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/crlcore/doc/crlcore/html/crlcore.tag:../crlcore" href="../crlcore/classCRL_1_1RoutingGauge.html#aaa35c92a1bd8fdf022014b684eab9b40">RoutingGauge::getRoutingLayer()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#a232af840ba84faa0b1411ba1c3a418f1">AutoSegment::getSourceY()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#a0917c7f78a251822ea0ac6f48298d1c5">AutoSegment::getTargetY()</a>, <a class="el" href="classKatabatic_1_1GCell.html#a43374e26fb08fb4a4d47599e1f81e293">GCell::getUp()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#a852afe759ce2cb8cb9c0524fc1e23387">AutoSegment::getX()</a>, <a class="el" href="classKatabatic_1_1GCell.html#ac597d25a34a79fb4393211c70f5a1bc3">GCell::getY()</a>, <a class="el" href="classKatabatic_1_1GCell.html#a98f8c479d4789850a926d87443e56e00">GCell::getYMax()</a>, <a class="el" href="classKatabatic_1_1AutoContact.html#aabac50fd9b8e1bba7289573973658d18">AutoContact::invalidate()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#a23599eee5a07af377fbc8d47cda7e7b0">AutoSegment::invalidate()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#ab671233e7112693ae31541190d1d251d">AutoSegment::isCanonical()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#a69fb7e260ed2bc6fa82bfe12c2aeec5a">AutoSegment::isLocal()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#ab1f9e0bca70dea59558459a003a62d88">AutoSegment::isSlackened()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#ae5574df7051a09ce3338cbe8481b8af3">AutoSegment::isWeakTerminal()</a>, <a class="el" href="namespaceKatabatic.html#a2af2ad6b6441614038caf59d04b3b217a1a9045673c5d3c30b067100f1440ae1b">Katabatic::KbHorizontal</a>, <a class="el" href="namespaceKatabatic.html#a2af2ad6b6441614038caf59d
</div>
</div>
<a class="anchor" id="a1fa2421b74bf0eb934b7002fd3da2321"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool moveULeft </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><b>This function do not manage an aligned set. It applies on <code>this</code> segment only.</b></p>
<p>Displace an Horizontal or Vertical segment to the <a class="el" href="classKatabatic_1_1GCell.html" title="Routing Global Cell. ">GCell</a> below (a.k.a. lower or inferior). Rules for displacement:</p>
<ul>
<li>The segment must be connected at both end to a turn contact (we do not want to manage more complex cases for the time beeing).</li>
<li>And, of course, the segment must not already by on the bottomost <a class="el" href="classKatabatic_1_1GCell.html" title="Routing Global Cell. ">GCell</a>...</li>
</ul>
<p>The displacement take care of:</p>
<ul>
<li>Managing the status of the various perpandiculars. The stretched one are made global if needed. The shrinked one made local, if needed.</li>
<li>The supporting <a class="el" href="classKatabatic_1_1AutoContact.html" title="Abstract base class for AutoContact. ">AutoContact</a> (source &amp; target) are changed of <a class="el" href="classKatabatic_1_1GCell.html" title="Routing Global Cell. ">GCell</a>.</li>
<li>If the segment is global, the go-through GCells are updateds.</li>
</ul>
<p><b>Returns:</b> <b>true</b> if the move has succeeded.</p>
<div class="image">
<img src="moveULeft-1.png" alt="moveULeft-1.png"/>
<div class="caption">
moveULeft() for an Horizontal</div></div>
<p>Implements <a class="el" href="classKatabatic_1_1AutoSegment.html#af8ca7b17e952f4b599aeeb2f4e5be395">AutoSegment</a>.</p>
<p>References <a class="el" href="classKatabatic_1_1GCell.html#a4aad7d6f7357fd7963aab91bc2019a1b">GCell::addHSegment()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#afb5b4d8bddc75cd604c7a68aa5943c12">AutoSegment::getAutoSource()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#a5a35baf84e1e3531c38a6132fb8118fb">AutoSegment::getAutoTarget()</a>, <a class="el" href="classKatabatic_1_1AutoContact.html#ab45ccfee0f781ec16c50672663d36141">AutoContact::getGCell()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#ab45ccfee0f781ec16c50672663d36141">AutoSegment::getGCell()</a>, <a class="el" href="classKatabatic_1_1GCell.html#a0aba3a4c02ade1a0af6d4956b2d4d944">GCell::getLeft()</a>, <a class="el" href="classKatabatic_1_1AutoContact.html#a50531ded68cc5206fe104b8d8bf3bd87">AutoContact::getSegment()</a>, <a class="el" href="classKatabatic_1_1GCell.html#a46861e2e666df89cd2e6eaa7ee146bcf">GCell::getSide()</a>, <a class="el" href="classKatabatic_1_1GCell.html#a43374e26fb08fb4a4d47599e1f81e293">GCell::getUp()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Interval.html#ae264becc34395a6f5e92342ab0b0d5e4">Interval::getVMax()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#a69fb7e260ed2bc6fa82bfe12c2aeec5a">AutoSegment::isLocal()</a>, <a class="el" href="namespaceKatabatic.html#a2af2ad6b6441614038caf59d04b3b217a1a9045673c5d3c30b067100f1440ae1b">Katabatic::KbHorizontal</a>, <a class="el" href="classKatabatic_1_1GCell.html#aff76aa96214c0efcf13186b8b3e5c852">GCell::removeHSegment()</a>, <a class="el" href="namespaceKatabatic.html#a94585537ee1724ea9315578ec54380f4a940d92cb98a61e671a94204701767868">Katabatic::SegGlobal</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#a3881efebb7510d9b22e5f89bcd418954">AutoSegment::setAxis()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#aeb14f94914af58657a0dc2f50ec98df5">AutoSegment::setFlags()</a>, <a class="el" href="classKatabatic_1_1AutoContact.html#aa1a02e206437f1371a74cafc724b00d7">AutoContact::setGCell()</a>, and <a class="el" href="classKatabatic_1_1AutoSegment.html#a1a6fac115cb81db48e3ac9ffa0721bb5">AutoSegment::unsetFlags()</a>.</p>
</div>
</div>
<a class="anchor" id="aa469e37853e31f8b1bc817518c896d62"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool moveURight </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><b>This function do not manage an aligned set. It applies on <code>this</code> segment only.</b></p>
<p>Displace an Horizontal or Vertical segment to the <a class="el" href="classKatabatic_1_1GCell.html" title="Routing Global Cell. ">GCell</a> above (a.k.a. upper or superior). Rules for displacement:</p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="classKatabatic_1_1AutoSegment.html#af8ca7b17e952f4b599aeeb2f4e5be395">AutoSegment::moveULeft()</a> for a complete description. </dd></dl>
<p>Implements <a class="el" href="classKatabatic_1_1AutoSegment.html#ad7fd54ca229fcf5ccd99f87b019b9cbc">AutoSegment</a>.</p>
<p>References <a class="el" href="classKatabatic_1_1GCell.html#a4aad7d6f7357fd7963aab91bc2019a1b">GCell::addHSegment()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#afb5b4d8bddc75cd604c7a68aa5943c12">AutoSegment::getAutoSource()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#a5a35baf84e1e3531c38a6132fb8118fb">AutoSegment::getAutoTarget()</a>, <a class="el" href="classKatabatic_1_1AutoContact.html#ab45ccfee0f781ec16c50672663d36141">AutoContact::getGCell()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#ab45ccfee0f781ec16c50672663d36141">AutoSegment::getGCell()</a>, <a class="el" href="classKatabatic_1_1GCell.html#a23fdbef3699158d88da408ad8c23d091">GCell::getRight()</a>, <a class="el" href="classKatabatic_1_1AutoContact.html#a50531ded68cc5206fe104b8d8bf3bd87">AutoContact::getSegment()</a>, <a class="el" href="classKatabatic_1_1GCell.html#a46861e2e666df89cd2e6eaa7ee146bcf">GCell::getSide()</a>, <a class="el" href="classKatabatic_1_1GCell.html#a43374e26fb08fb4a4d47599e1f81e293">GCell::getUp()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#gadc9c1a06b4296dbddcf711077113f4bd">DbU::getValueString()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Interval.html#a3d0e592c4f3cc32a2ead785e21a04dad">Interval::getVMin()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#a69fb7e260ed2bc6fa82bfe12c2aeec5a">AutoSegment::isLocal()</a>, <a class="el" href="namespaceKatabatic.html#a2af2ad6b6441614038caf59d04b3b217a1a9045673c5d3c30b067100f1440ae1b">Katabatic::KbHorizontal</a>, <a class="el" href="classKatabatic_1_1GCell.html#aff76aa96214c0efcf13186b8b3e5c852">GCell::removeHSegment()</a>, <a class="el" href="namespaceKatabatic.html#a94585537ee1724ea9315578ec54380f4a940d92cb98a61e671a94204701767868">Katabatic::SegGlobal</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#a3881efebb7510d9b22e5f89bcd418954">AutoSegment::setAxis()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#aeb14f94914af58657a0dc2f50ec98df5">AutoSegment::setFlags()</a>, <a class="el" href="classKatabatic_1_1AutoContact.html#aa1a02e206437f1371a74cafc724b00d7">AutoContact::setGCell()</a>, and <a class="el" href="classKatabatic_1_1AutoSegment.html#a1a6fac115cb81db48e3ac9ffa0721bb5">AutoSegment::unsetFlags()</a>.</p>
</div>
</div>
<a class="anchor" id="a3715b38135ca24745f610bebd3407c10"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void _postCreate </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>In addition to <a class="el" href="classKatabatic_1_1AutoSegment.html#a3715b38135ca24745f610bebd3407c10">AutoSegment::_postCreate()</a>, detect whether the segment is global or local and register it in the relevant GCells (if needed).</p>
<p>If the segment is anchored directly on a terminal, adjust the axis so it's connected. </p>
<p>Reimplemented from <a class="el" href="classKatabatic_1_1AutoSegment.html#a3715b38135ca24745f610bebd3407c10">AutoSegment</a>.</p>
<p>References <a class="el" href="classKatabatic_1_1AutoSegment.html#a3715b38135ca24745f610bebd3407c10">AutoSegment::_postCreate()</a>, <a class="el" href="classKatabatic_1_1GCell.html#a8aa815e9e99df8187e628f6ec9e9da77">GCell::addVSegment()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#afb5b4d8bddc75cd604c7a68aa5943c12">AutoSegment::getAutoSource()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#a5a35baf84e1e3531c38a6132fb8118fb">AutoSegment::getAutoTarget()</a>, <a class="el" href="classKatabatic_1_1AutoContact.html#ab45ccfee0f781ec16c50672663d36141">AutoContact::getGCell()</a>, <a class="el" href="classKatabatic_1_1GCell.html#a43374e26fb08fb4a4d47599e1f81e293">GCell::getUp()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Component.html#a0f8299ed73705fd4fbf56589dcc7e074">Component::getX()</a>, <a class="el" href="classKatabatic_1_1GCell.html#ac597d25a34a79fb4393211c70f5a1bc3">GCell::getY()</a>, <a class="el" href="namespaceKatabatic.html#a94585537ee1724ea9315578ec54380f4a940d92cb98a61e671a94204701767868">Katabatic::SegGlobal</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#aeb14f94914af58657a0dc2f50ec98df5">AutoSegment::setFlags()</a>, and <a class="el" href="classKatabatic_1_1AutoContact.html#a154f993d0262c92bfc0dc95154faf794">AutoContact::setX()</a>.</p>
</div>
</div>
<a class="anchor" id="a7c13d9795eafd477994961f8a0d962d0"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void _preDestroy </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Perform operations that must be done before the actual destructor is called. Merely whidrawn the <a class="el" href="classKatabatic_1_1AutoSegment.html" title="Abstract base class for AutoSegment. ">AutoSegment</a> from the lookup/Session mechanism. </p>
<p>Reimplemented from <a class="el" href="classKatabatic_1_1AutoSegment.html#a7c13d9795eafd477994961f8a0d962d0">AutoSegment</a>.</p>
<p>References <a class="el" href="classKatabatic_1_1AutoSegment.html#a7c13d9795eafd477994961f8a0d962d0">AutoSegment::_preDestroy()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#afb5b4d8bddc75cd604c7a68aa5943c12">AutoSegment::getAutoSource()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#a5a35baf84e1e3531c38a6132fb8118fb">AutoSegment::getAutoTarget()</a>, <a class="el" href="classKatabatic_1_1AutoContact.html#ab45ccfee0f781ec16c50672663d36141">AutoContact::getGCell()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#ae68c47fdf838be02cbf6660cd25a0806">AutoSegment::getId()</a>, <a class="el" href="classKatabatic_1_1GCell.html#a43374e26fb08fb4a4d47599e1f81e293">GCell::getUp()</a>, <a class="el" href="classKatabatic_1_1GCell.html#ac597d25a34a79fb4393211c70f5a1bc3">GCell::getY()</a>, and <a class="el" href="classKatabatic_1_1GCell.html#abe128484d8aa063198292a88c63f2bba">GCell::removeVSegment()</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="AutoVertical_8h_source.html">AutoVertical.h</a></li>
<li>AutoVertical.cpp</li>
<li>AutoVertical.dox</li>
</ul>
</div><!-- contents -->
<br>
<hr>
<table class="footer1">
<tr>
<td class="LFooter"><small>Generated by doxygen 1.8.5 on Mon Oct 1 2018</small></td>
<td class="RFooter"><a href='#pagetop'><small>Return to top of page</small></a></td>
</tr>
</table>
<table class="footer2">
<tr>
<td class="LFooter">Katabatic - Routing Toolbox</td>
<td class="RFooter"><small>Copyright &#169; 2008-2016 UPMC. All rights reserved</small></td>
</tr>
</table>
</body>
</html>