coriolis/kite/doc/html/classKite_1_1TrackElement.html

2082 lines
126 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>Kite - Detailed Router</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">Kite - Detailed Router</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="namespaceKite.html">Kite</a></li><li class="navelem"><a class="el" href="classKite_1_1TrackElement.html">TrackElement</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="classKite_1_1TrackElement-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">TrackElement Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
</div><!--header-->
<div class="contents">
<p>Abstract Class for all Elements inserted inside a <a class="el" href="classKite_1_1Track.html" title="Structure managing one routing track. ">Track</a>.
<a href="classKite_1_1TrackElement.html#details">More...</a></p>
<div class="dynheader">
Inheritance diagram for TrackElement:</div>
<div class="dyncontent">
<div class="center"><img src="classKite_1_1TrackElement__inherit__graph.png" border="0" usemap="#TrackElement_inherit__map" alt="Inheritance graph"/></div>
<map name="TrackElement_inherit__map" id="TrackElement_inherit__map">
<area shape="rect" id="node2" href="classKite_1_1TrackFixedSegment.html" title="Track elements for fixed wires. " alt="" coords="5,80,144,107"/><area shape="rect" id="node3" href="classKite_1_1TrackSegment.html" title="Derived Katabatic::AutoSegment for the router. " alt="" coords="168,80,275,107"/></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:af5e7d3badddf2ec07159f1d83426d4c1"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#af5e7d3badddf2ec07159f1d83426d4c1">isFixed</a> () const </td></tr>
<tr class="separator:af5e7d3badddf2ec07159f1d83426d4c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9d3db1f8a5aca58f8f54d291faebf873"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#a9d3db1f8a5aca58f8f54d291faebf873">isHorizontal</a> () const =0</td></tr>
<tr class="separator:a9d3db1f8a5aca58f8f54d291faebf873"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6fa2bf0568a2b295dd7cd1f7207247d5"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#a6fa2bf0568a2b295dd7cd1f7207247d5">isVertical</a> () const =0</td></tr>
<tr class="separator:a6fa2bf0568a2b295dd7cd1f7207247d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a69fb7e260ed2bc6fa82bfe12c2aeec5a"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#a69fb7e260ed2bc6fa82bfe12c2aeec5a">isLocal</a> () const </td></tr>
<tr class="separator:a69fb7e260ed2bc6fa82bfe12c2aeec5a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a017b1ead8e5988dd0e491cae93ac510c"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#a017b1ead8e5988dd0e491cae93ac510c">isGlobal</a> () const </td></tr>
<tr class="separator:a017b1ead8e5988dd0e491cae93ac510c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab5035e6d84cf3ec7b519a5acb109efaa"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#ab5035e6d84cf3ec7b519a5acb109efaa">isBipoint</a> () const </td></tr>
<tr class="separator:ab5035e6d84cf3ec7b519a5acb109efaa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8d6f4521b27f32080d7477cf8ee8a274"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#a8d6f4521b27f32080d7477cf8ee8a274">isTerminal</a> () const </td></tr>
<tr class="separator:a8d6f4521b27f32080d7477cf8ee8a274"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4721fcbe9c93ed5392afd9a756b989a8"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#a4721fcbe9c93ed5392afd9a756b989a8">isStrap</a> () const </td></tr>
<tr class="separator:a4721fcbe9c93ed5392afd9a756b989a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab1f9e0bca70dea59558459a003a62d88"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#ab1f9e0bca70dea59558459a003a62d88">isSlackened</a> () const </td></tr>
<tr class="separator:ab1f9e0bca70dea59558459a003a62d88"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a172b2394f9c2cbaaf5bc4b19e0e76e65"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#a172b2394f9c2cbaaf5bc4b19e0e76e65">isDogleg</a> () const </td></tr>
<tr class="separator:a172b2394f9c2cbaaf5bc4b19e0e76e65"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6a7e35dd5a9ca99ca879e424ce42b902"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#a6a7e35dd5a9ca99ca879e424ce42b902">isCreated</a> () const </td></tr>
<tr class="separator:a6a7e35dd5a9ca99ca879e424ce42b902"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a54f713d06c43bebf4e0dfef06e347531"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#a54f713d06c43bebf4e0dfef06e347531">isInvalidated</a> () const </td></tr>
<tr class="separator:a54f713d06c43bebf4e0dfef06e347531"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1dbaf905a283e4e45ac71c4771e9e644"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#a1dbaf905a283e4e45ac71c4771e9e644">isBlockage</a> () const </td></tr>
<tr class="separator:a1dbaf905a283e4e45ac71c4771e9e644"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae0c9fa9daf2467984aea571a0f3940c6"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#ae0c9fa9daf2467984aea571a0f3940c6">isLocked</a> () const </td></tr>
<tr class="separator:ae0c9fa9daf2467984aea571a0f3940c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae7adbfe4ada0ac46f8cd9cc8f296327d"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#ae7adbfe4ada0ac46f8cd9cc8f296327d">isRouted</a> () const </td></tr>
<tr class="separator:ae7adbfe4ada0ac46f8cd9cc8f296327d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af5f88959753a39f16726a858ee6fb0fd"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#af5f88959753a39f16726a858ee6fb0fd">hasSourceDogleg</a> () const </td></tr>
<tr class="separator:af5f88959753a39f16726a858ee6fb0fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a71fcabadfc78d0e1aefa934659cb1204"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#a71fcabadfc78d0e1aefa934659cb1204">hasTargetDogleg</a> () const </td></tr>
<tr class="separator:a71fcabadfc78d0e1aefa934659cb1204"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5aa65e9913c7368130b187464404ded6"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#a5aa65e9913c7368130b187464404ded6">canRipple</a> () const </td></tr>
<tr class="separator:a5aa65e9913c7368130b187464404ded6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa0bb6f1592688e942ff67e0ac318a4fd"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#aa0bb6f1592688e942ff67e0ac318a4fd">canDogleg</a> ()</td></tr>
<tr class="separator:aa0bb6f1592688e942ff67e0ac318a4fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:accb4c6a7ee2678a0cff4dbc4a7860fe1"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#accb4c6a7ee2678a0cff4dbc4a7860fe1">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:accb4c6a7ee2678a0cff4dbc4a7860fe1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4f040cf33009e4886d401115c3bea838"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#a4f040cf33009e4886d401115c3bea838">canDogleg</a> (<a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/katabatic/doc/html/katabatic.tag:../katabatic/" href="../katabatic/classKatabatic_1_1GCell.html">Katabatic::GCell</a> *, unsigned int flags=0)</td></tr>
<tr class="separator:a4f040cf33009e4886d401115c3bea838"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae68c47fdf838be02cbf6660cd25a0806"><td class="memItemLeft" align="right" valign="top">virtual unsigned long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#ae68c47fdf838be02cbf6660cd25a0806">getId</a> () const </td></tr>
<tr class="separator:ae68c47fdf838be02cbf6660cd25a0806"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae35b78590ed6aa546b626ef95f28c533"><td class="memItemLeft" align="right" valign="top">virtual unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#ae35b78590ed6aa546b626ef95f28c533">getDirection</a> () const =0</td></tr>
<tr class="separator:ae35b78590ed6aa546b626ef95f28c533"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2b383a5b6f5028911a35e446a682dabd"><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_1Net.html">Net</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#a2b383a5b6f5028911a35e446a682dabd">getNet</a> () const =0</td></tr>
<tr class="separator:a2b383a5b6f5028911a35e446a682dabd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad96c66549598873bf68c2e18ec7164c1"><td class="memItemLeft" align="right" valign="top">virtual 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="classKite_1_1TrackElement.html#ad96c66549598873bf68c2e18ec7164c1">getLayer</a> () const =0</td></tr>
<tr class="separator:ad96c66549598873bf68c2e18ec7164c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abfd8de286baf41eea066220773c7046d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classKite_1_1Track.html">Track</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#abfd8de286baf41eea066220773c7046d">getTrack</a> () const </td></tr>
<tr class="separator:abfd8de286baf41eea066220773c7046d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a659e8df65f89db5547aa8a8fe3d92f69"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#a659e8df65f89db5547aa8a8fe3d92f69">getIndex</a> () const </td></tr>
<tr class="separator:a659e8df65f89db5547aa8a8fe3d92f69"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9f20f94d2d8aaa38c2b9ead5275ead27"><td class="memItemLeft" align="right" valign="top">virtual unsigned long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#a9f20f94d2d8aaa38c2b9ead5275ead27">getFreedomDegree</a> () const </td></tr>
<tr class="separator:a9f20f94d2d8aaa38c2b9ead5275ead27"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a71b29fb20a3ba09616a6be4b122a797e"><td class="memItemLeft" align="right" valign="top">virtual float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#a71b29fb20a3ba09616a6be4b122a797e">getMaxUnderDensity</a> (unsigned int flags=0) const </td></tr>
<tr class="separator:a71b29fb20a3ba09616a6be4b122a797e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3b9694bf093e3ea16e4a8c8126a8d4db"><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="classKite_1_1TrackElement.html#a3b9694bf093e3ea16e4a8c8126a8d4db">getBoundingBox</a> () const </td></tr>
<tr class="separator:a3b9694bf093e3ea16e4a8c8126a8d4db"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5af0ac91c558873fea9703e7ab6f48df"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classKite_1_1TrackElement.html">TrackElement</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#a5af0ac91c558873fea9703e7ab6f48df">getNext</a> () const </td></tr>
<tr class="separator:a5af0ac91c558873fea9703e7ab6f48df"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acbb9c965449bf4502d71149563cec0a2"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classKite_1_1TrackElement.html">TrackElement</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#acbb9c965449bf4502d71149563cec0a2">getPrevious</a> () const </td></tr>
<tr class="separator:acbb9c965449bf4502d71149563cec0a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac492fb5399691d81c31547db6b56fd03"><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="classKite_1_1TrackElement.html#ac492fb5399691d81c31547db6b56fd03">getAxis</a> () const =0</td></tr>
<tr class="separator:ac492fb5399691d81c31547db6b56fd03"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3932d5ce9094ead510e4e33bd4e78e1a"><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="classKite_1_1TrackElement.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"><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="classKite_1_1TrackElement.html#a8e5f2a51f56c6bdb74024ac77c08a22a">getTargetU</a> () const </td></tr>
<tr class="separator:a8e5f2a51f56c6bdb74024ac77c08a22a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5370f2cf21823e1fa58d0627ee53c483"><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="classKite_1_1TrackElement.html#a5370f2cf21823e1fa58d0627ee53c483">getLength</a> () const </td></tr>
<tr class="separator:a5370f2cf21823e1fa58d0627ee53c483"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad78cfb34e7d8e92ba854fbc2dbf9d842"><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="classKite_1_1TrackElement.html#ad78cfb34e7d8e92ba854fbc2dbf9d842">getCanonicalInterval</a> () const </td></tr>
<tr class="separator:ad78cfb34e7d8e92ba854fbc2dbf9d842"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a38d30a241d00a14943a06401d0d12923"><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="classKite_1_1TrackElement.html#a38d30a241d00a14943a06401d0d12923">getFreeInterval</a> () const </td></tr>
<tr class="separator:a38d30a241d00a14943a06401d0d12923"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a972921aeb7f907194710ea35ac7600be"><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="classKite_1_1TrackElement.html#a972921aeb7f907194710ea35ac7600be">getSourceConstraints</a> () const </td></tr>
<tr class="separator:a972921aeb7f907194710ea35ac7600be"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a00d398bdc1837c6c1e4847895c557829"><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="classKite_1_1TrackElement.html#a00d398bdc1837c6c1e4847895c557829">getTargetConstraints</a> () const </td></tr>
<tr class="separator:a00d398bdc1837c6c1e4847895c557829"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a76a45d5701f875711a03692e9bf6d5ce"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classKite_1_1DataNegociate.html">DataNegociate</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#a76a45d5701f875711a03692e9bf6d5ce">getDataNegociate</a> (unsigned int flags=<a class="el" href="namespaceKite.html#acca8fffa3182dea5f94208f454f14b47a68e917ff37d4b5cef906303181836404">KtDataSelf</a>) const </td></tr>
<tr class="separator:a76a45d5701f875711a03692e9bf6d5ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af2d46d64cbd02bdbba53d5483d95e26d"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classKite_1_1TrackElement.html">TrackElement</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#af2d46d64cbd02bdbba53d5483d95e26d">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;)</td></tr>
<tr class="separator:af2d46d64cbd02bdbba53d5483d95e26d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a79b25d8199fe90446e99cf08d2d85674"><td class="memItemLeft" align="right" valign="top">virtual size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#a79b25d8199fe90446e99cf08d2d85674">getGCells</a> (Katabatic::GCellVector &amp;) const </td></tr>
<tr class="separator:a79b25d8199fe90446e99cf08d2d85674"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad1a03a36d5908ce44c3d0391ff9c7103"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classKite_1_1TrackElement.html">TrackElement</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#ad1a03a36d5908ce44c3d0391ff9c7103">getParent</a> () const </td></tr>
<tr class="separator:ad1a03a36d5908ce44c3d0391ff9c7103"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ace669b962e7df815b92fe70e1f4ad755"><td class="memItemLeft" align="right" valign="top">virtual unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#ace669b962e7df815b92fe70e1f4ad755">getDoglegLevel</a> () const </td></tr>
<tr class="separator:ace669b962e7df815b92fe70e1f4ad755"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7e79fbfe77f173d46b1959c41087930a"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classKite_1_1TrackElement.html">TrackElement</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#a7e79fbfe77f173d46b1959c41087930a">getSourceDogleg</a> ()</td></tr>
<tr class="separator:a7e79fbfe77f173d46b1959c41087930a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeb4e39bd925d093e6c45599433bb421c"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classKite_1_1TrackElement.html">TrackElement</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#aeb4e39bd925d093e6c45599433bb421c">getTargetDogleg</a> ()</td></tr>
<tr class="separator:aeb4e39bd925d093e6c45599433bb421c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa0ba92ebf19f596537dc051c090d5736"><td class="memItemLeft" align="right" valign="top">virtual TrackElements&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#aa0ba92ebf19f596537dc051c090d5736">getPerpandiculars</a> ()</td></tr>
<tr class="separator:aa0ba92ebf19f596537dc051c090d5736"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeb14f94914af58657a0dc2f50ec98df5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#aeb14f94914af58657a0dc2f50ec98df5">setFlags</a> (unsigned int)</td></tr>
<tr class="separator:aeb14f94914af58657a0dc2f50ec98df5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1a6fac115cb81db48e3ac9ffa0721bb5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#a1a6fac115cb81db48e3ac9ffa0721bb5">unsetFlags</a> (unsigned int)</td></tr>
<tr class="separator:a1a6fac115cb81db48e3ac9ffa0721bb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abd3d8093f871d3d1a7f24b053648026c"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#abd3d8093f871d3d1a7f24b053648026c">setTrack</a> (<a class="el" href="classKite_1_1Track.html">Track</a> *)</td></tr>
<tr class="separator:abd3d8093f871d3d1a7f24b053648026c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abee236b4d62f51320212f31e010fc1b5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#abee236b4d62f51320212f31e010fc1b5">setIndex</a> (size_t)</td></tr>
<tr class="separator:abee236b4d62f51320212f31e010fc1b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af5332d647c0482aa90ad7cc9b2a50f3a"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#af5332d647c0482aa90ad7cc9b2a50f3a">updateFreedomDegree</a> ()</td></tr>
<tr class="separator:af5332d647c0482aa90ad7cc9b2a50f3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2b90319cb042b283aa5d1fdb1992f11f"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#a2b90319cb042b283aa5d1fdb1992f11f">setDoglegLevel</a> (unsigned int)</td></tr>
<tr class="separator:a2b90319cb042b283aa5d1fdb1992f11f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acc245ce084989d1c34816d0e61b9d510"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#acc245ce084989d1c34816d0e61b9d510">swapTrack</a> (<a class="el" href="classKite_1_1TrackElement.html">TrackElement</a> *)</td></tr>
<tr class="separator:acc245ce084989d1c34816d0e61b9d510"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0ffe603ec7d46f21f5e56ccbe84c03fb"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#a0ffe603ec7d46f21f5e56ccbe84c03fb">reschedule</a> (unsigned int level)</td></tr>
<tr class="separator:a0ffe603ec7d46f21f5e56ccbe84c03fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac295bade8aee589f6718dfa79edc2a34"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#ac295bade8aee589f6718dfa79edc2a34">detach</a> ()</td></tr>
<tr class="separator:ac295bade8aee589f6718dfa79edc2a34"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a893f1101c650c08c98612515c2b1a89c"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#a893f1101c650c08c98612515c2b1a89c">invalidate</a> ()</td></tr>
<tr class="separator:a893f1101c650c08c98612515c2b1a89c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5bd93abe1416952ace15a98dbeeed124"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#a5bd93abe1416952ace15a98dbeeed124">revalidate</a> ()</td></tr>
<tr class="separator:a5bd93abe1416952ace15a98dbeeed124"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a250348f9030b92b19580749bf99030b5"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#a250348f9030b92b19580749bf99030b5">incOverlapCost</a> (<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> *, TrackCost &amp;) const </td></tr>
<tr class="separator:a250348f9030b92b19580749bf99030b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a45e685b1e3ee630d24bf43746553af4c"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#a45e685b1e3ee630d24bf43746553af4c">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=<a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/katabatic/doc/html/katabatic.tag:../katabatic/" href="../katabatic/namespaceKatabatic.html#a94585537ee1724ea9315578ec54380f4a86d22dbc8fbc045a1e12e25ba357e1d1">Katabatic::SegAxisSet</a>)</td></tr>
<tr class="separator:a45e685b1e3ee630d24bf43746553af4c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7a9637875364e84e6862de0102341715"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classKite_1_1TrackElement.html">TrackElement</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#a7a9637875364e84e6862de0102341715">makeDogleg</a> ()</td></tr>
<tr class="separator:a7a9637875364e84e6862de0102341715"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3e1b4982a2427f74e55592520ab6272d"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#a3e1b4982a2427f74e55592520ab6272d">makeDogleg</a> (<a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/katabatic/doc/html/katabatic.tag:../katabatic/" href="../katabatic/classKatabatic_1_1GCell.html">Katabatic::GCell</a> *)</td></tr>
<tr class="separator:a3e1b4982a2427f74e55592520ab6272d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a524f1569b2f2c1a84df2fe47e84e28ed"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classKite_1_1TrackElement.html">TrackElement</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#a524f1569b2f2c1a84df2fe47e84e28ed">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 &amp;flags)</td></tr>
<tr class="separator:a524f1569b2f2c1a84df2fe47e84e28ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa1ef325b98fab61d2c7c5bdc1fcd92fc"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#aa1ef325b98fab61d2c7c5bdc1fcd92fc">_check</a> () const </td></tr>
<tr class="separator:aa1ef325b98fab61d2c7c5bdc1fcd92fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:a4648fa47d0870cf743436ff6a6239fd9"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="namespaceKite.html#aa5bc3df660243357cdf8639f57d4a41b">SegmentOverlapCostCB</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1TrackElement.html#a4648fa47d0870cf743436ff6a6239fd9">setOverlapCostCB</a> (<a class="el" href="namespaceKite.html#aa5bc3df660243357cdf8639f57d4a41b">SegmentOverlapCostCB</a> *)</td></tr>
<tr class="separator:a4648fa47d0870cf743436ff6a6239fd9"><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>Abstract Class for all Elements inserted inside a <a class="el" href="classKite_1_1Track.html" title="Structure managing one routing track. ">Track</a>. </p>
<h1><a class="anchor" id="secTrackElementAbstract"></a>
TrackElement Abstract</h1>
<p>The <a class="el" href="classKite_1_1TrackElement.html" title="Abstract Class for all Elements inserted inside a Track. ">TrackElement</a> class is abstract and is used as base class for any element that can be inserted in a <a class="el" href="classKite_1_1Track.html" title="Structure managing one routing track. ">Track</a>. It represent the footprint of that element inside the <a class="el" href="classKite_1_1Track.html" title="Structure managing one routing track. ">Track</a> (an interval). Additionnaly it keep a pointer to the <a class="el" href="classKite_1_1Track.html" title="Structure managing one routing track. ">Track</a> and it's index inside it (<a class="el" href="classKite_1_1Track.html" title="Structure managing one routing track. ">Track</a> is implemented with a <code>vector&lt;&gt;</code>).</p>
<p>To avoid some explicit dynamic cast later, it provides a default implementation for almost all the methods that will be present in all the derived classes. All default methods return <code>false</code>, <code>NULL</code> or <code>0</code> (<em>zero</em>) or whatever is appropriated to tell it is not meaningful.</p>
<p><b>Design Note</b></p>
<p><a class="el" href="classKite_1_1TrackElement.html" title="Abstract Class for all Elements inserted inside a Track. ">TrackElement</a> has been designed to serve as a base class for <a class="el" href="classKite_1_1TrackSegment.html" title="Derived Katabatic::AutoSegment for the router. ">TrackSegment</a> and <a class="el" href="classKite_1_1TrackMarker.html" title="Tag part of Track with a weight. ">TrackMarker</a>. But, in the end, those two classes have been put in separated vectors inside the <a class="el" href="classKite_1_1Track.html" title="Structure managing one routing track. ">Track</a>, thus rendering this design choice less pertinent. We keep it for now because we may introduce other object than <a class="el" href="classKite_1_1TrackSegment.html" title="Derived Katabatic::AutoSegment for the router. ">TrackSegment</a> inside a <a class="el" href="classKite_1_1Track.html" title="Structure managing one routing track. ">Track</a>. If the need do not arise, we may merge back <a class="el" href="classKite_1_1TrackElement.html" title="Abstract Class for all Elements inserted inside a Track. ">TrackElement</a> and <a class="el" href="classKite_1_1TrackSegment.html" title="Derived Katabatic::AutoSegment for the router. ">TrackSegment</a>. </p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a4648fa47d0870cf743436ff6a6239fd9"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceKite.html#aa5bc3df660243357cdf8639f57d4a41b">SegmentOverlapCostCB</a> * setOverlapCostCB </td>
<td>(</td>
<td class="paramtype"><a class="el" href="namespaceKite.html#aa5bc3df660243357cdf8639f57d4a41b">SegmentOverlapCostCB</a> *&#160;</td>
<td class="paramname"><em>cb</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">cb</td><td>the new overlap cost callback. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>the previous overlap cost callback.</dd></dl>
<p>sets the overlap callback. </p>
<p>Referenced by <a class="el" href="classKite_1_1NegociateWindow.html#a61e848b73b597f54e2e83e13eb70ff83">NegociateWindow::run()</a>.</p>
</div>
</div>
<a class="anchor" id="af5e7d3badddf2ec07159f1d83426d4c1"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool isFixed </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>See also:</b>&#160; <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/katabatic/doc/html/katabatic.tag:../katabatic/" href="../katabatic/classKatabatic_1_1AutoSegment.html#af5e7d3badddf2ec07159f1d83426d4c1">Katabatic::AutoSegment::isFixed()</a>. </p>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#af5e7d3badddf2ec07159f1d83426d4c1">TrackSegment</a>, and <a class="el" href="classKite_1_1TrackFixedSegment.html#af5e7d3badddf2ec07159f1d83426d4c1">TrackFixedSegment</a>.</p>
<p>Referenced by <a class="el" href="classKite_1_1SegmentFsm.html#ad9384c1cc2a9cd70ab9ff089b56380a0">SegmentFsm::addAction()</a>, <a class="el" href="classKite_1_1SegmentFsm.html#a9c0fa6a9067b6e027e24f38330f627dc">SegmentFsm::conflictSolveByPlaceds()</a>, <a class="el" href="classKite_1_1NegociateWindow.html#a7bf31fcd4e4007e62454689ef7c553fc">NegociateWindow::createTrackSegment()</a>, <a class="el" href="classKite_1_1SegmentFsm.html#a0b8e8be9d7c9501be9534d3c2a9dd586">SegmentFsm::desaturate()</a>, <a class="el" href="classKite_1_1SegmentAction.html#a324f17f0f5a09b76344eb2e003695d74">SegmentAction::doAction()</a>, <a class="el" href="classKite_1_1Manipulator.html#add26b688d75a99a1ae781787eead08d5">Manipulator::forceOverLocals()</a>, <a class="el" href="classKite_1_1Manipulator.html#a76d3956660cfa624696e2a5f2916cd22">Manipulator::forceToTrack()</a>, <a class="el" href="classKite_1_1Manipulator.html#a7140b507da2cab137d968a037bed19df">Manipulator::insertInTrack()</a>, <a class="el" href="classKite_1_1Manipulator.html#af977361f4d90967fec7fbf1e778d01bb">Manipulator::isCaged()</a>, <a class="el" href="classKite_1_1Manipulator.html#af4d93a43ea18ae124da71072c66d1e0a">Manipulator::makeDogleg()</a>, <a class="el" href="classKite_1_1Manipulator.html#aa61f08642d981761687635be108b9837">Manipulator::minimize()</a>, <a class="el" href="classKite_1_1Manipulator.html#ac954731e16188acb6984f348bf2d9d20">Manipulator::moveUp()</a>, <a class="el" href="classKite_1_1Manipulator.html#ac3b48ad16d9b9b63d1c68e526ceb42e8">Manipulator::pivotDown()</a>, <a class="el" href="classKite_1_1Manipulator.html#ad590137c4e7e8d5ad2a6f510e0d70e81">Manipulator::pivotUp()</a>, <a class="el" href="classKite_1_1Manipulator.html#a8b5b69fd5762d5a0cbc4ceea4d1b68c1">Manipulator::relax()</a>, <a class="el" href="classKite_1_1Manipulator.html#a9721ea909a9b11297dea855e1ba82a55">Manipulator::repackPerpandiculars()</a>, <a class="el" href="classKite_1_1Manipulator.html#a370b5a5373d3019510d4ec22f44c76c2">Manipulator::ripup()</a>, <a class="el" href="classKite_1_1Manipulator.html#aba69c61ccb330e26aaa8211f0454795f">Manipulator::shrinkToTrack()</a>, and <a class="el" href="classKite_1_1Manipulator.html#a82897c077e4c0d4281c3dce3e37ab997">Manipulator::slacken()</a>.</p>
</div>
</div>
<a class="anchor" id="a9d3db1f8a5aca58f8f54d291faebf873"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool isHorizontal </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">pure virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><b>See also:</b>&#160; <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/katabatic/doc/html/katabatic.tag:../katabatic/" href="../katabatic/classKatabatic_1_1AutoSegment.html#ac46ac3b48d712750c7888b48964ac189">Katabatic::AutoSegment::isHorizontal()</a>. </p>
<p>Implemented in <a class="el" href="classKite_1_1TrackSegment.html#ac46ac3b48d712750c7888b48964ac189">TrackSegment</a>, and <a class="el" href="classKite_1_1TrackFixedSegment.html#ac46ac3b48d712750c7888b48964ac189">TrackFixedSegment</a>.</p>
<p>Referenced by <a class="el" href="classKite_1_1SegmentFsm.html#a0d9a9926ae67cc7998799347f135e28a">SegmentFsm::conflictSolveByHistory()</a>, and <a class="el" href="classKite_1_1Manipulator.html#af7b3305693dab195d0c5d075821fbb30">Manipulator::makeDogleg()</a>.</p>
</div>
</div>
<a class="anchor" id="a6fa2bf0568a2b295dd7cd1f7207247d5"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool isVertical </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">pure virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><b>See also:</b>&#160; <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/katabatic/doc/html/katabatic.tag:../katabatic/" href="../katabatic/classKatabatic_1_1AutoSegment.html#a2bb30e82aad1f321af4a065338775f36">Katabatic::AutoSegment::isVertical()</a>. </p>
<p>Implemented in <a class="el" href="classKite_1_1TrackSegment.html#a2bb30e82aad1f321af4a065338775f36">TrackSegment</a>, and <a class="el" href="classKite_1_1TrackFixedSegment.html#a2bb30e82aad1f321af4a065338775f36">TrackFixedSegment</a>.</p>
</div>
</div>
<a class="anchor" id="a69fb7e260ed2bc6fa82bfe12c2aeec5a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool isLocal </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>See also:</b>&#160; Katabatic::isLocal(). </p>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#a69fb7e260ed2bc6fa82bfe12c2aeec5a">TrackSegment</a>.</p>
<p>Referenced by <a class="el" href="classKite_1_1SegmentFsm.html#a9c0fa6a9067b6e027e24f38330f627dc">SegmentFsm::conflictSolveByPlaceds()</a>, <a class="el" href="classKite_1_1SegmentFsm.html#abbcf429498049478d4d8ab94cdb4a022">SegmentFsm::doActions()</a>, <a class="el" href="classKite_1_1Manipulator.html#a7140b507da2cab137d968a037bed19df">Manipulator::insertInTrack()</a>, <a class="el" href="classKite_1_1Manipulator.html#af4d93a43ea18ae124da71072c66d1e0a">Manipulator::makeDogleg()</a>, <a class="el" href="classKite_1_1Manipulator.html#ac954731e16188acb6984f348bf2d9d20">Manipulator::moveUp()</a>, <a class="el" href="classKite_1_1Manipulator.html#ad590137c4e7e8d5ad2a6f510e0d70e81">Manipulator::pivotUp()</a>, <a class="el" href="classKite_1_1Manipulator.html#a8b5b69fd5762d5a0cbc4ceea4d1b68c1">Manipulator::relax()</a>, <a class="el" href="classKite_1_1Manipulator.html#af46102d49a7aa0c163de1bf143807794">Manipulator::ripple()</a>, <a class="el" href="classKite_1_1Manipulator.html#a147c24aa53f561c10d5d24b82b03448a">Manipulator::ripupPerpandiculars()</a>, <a class="el" href="classKite_1_1SegmentFsm.html#a2a8eadaaf3ed213914e7b4a81cae6e6a">SegmentFsm::SegmentFsm()</a>, <a class="el" href="classKite_1_1Manipulator.html#aba69c61ccb330e26aaa8211f0454795f">Manipulator::shrinkToTrack()</a>, <a class="el" href="classKite_1_1SegmentFsm.html#a623d68f599c0de60cdd36af3f183e6f1">SegmentFsm::slackenTopology()</a>, and <a class="el" href="classKite_1_1SegmentFsm.html#ab8ae818baad1d0a274a7e8c308ca3f92">SegmentFsm::solveFullBlockages()</a>.</p>
</div>
</div>
<a class="anchor" id="a017b1ead8e5988dd0e491cae93ac510c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool isGlobal </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>See also:</b>&#160; <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/katabatic/doc/html/katabatic.tag:../katabatic/" href="../katabatic/classKatabatic_1_1AutoSegment.html#a017b1ead8e5988dd0e491cae93ac510c">Katabatic::AutoSegment::isGlobal()</a>. </p>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#a017b1ead8e5988dd0e491cae93ac510c">TrackSegment</a>.</p>
<p>Referenced by <a class="el" href="classKite_1_1SegmentFsm.html#a9c0fa6a9067b6e027e24f38330f627dc">SegmentFsm::conflictSolveByPlaceds()</a>, <a class="el" href="classKite_1_1Manipulator.html#a7140b507da2cab137d968a037bed19df">Manipulator::insertInTrack()</a>, <a class="el" href="classKite_1_1Manipulator.html#a8b5b69fd5762d5a0cbc4ceea4d1b68c1">Manipulator::relax()</a>, <a class="el" href="classKite_1_1Manipulator.html#a9721ea909a9b11297dea855e1ba82a55">Manipulator::repackPerpandiculars()</a>, and <a class="el" href="classKite_1_1SegmentFsm.html#a2a8eadaaf3ed213914e7b4a81cae6e6a">SegmentFsm::SegmentFsm()</a>.</p>
</div>
</div>
<a class="anchor" id="ab5035e6d84cf3ec7b519a5acb109efaa"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool isBipoint </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>See also:</b>&#160; <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/katabatic/doc/html/katabatic.tag:../katabatic/" href="../katabatic/classKatabatic_1_1AutoSegment.html#ab5035e6d84cf3ec7b519a5acb109efaa">Katabatic::AutoSegment::isBipoint()</a>. </p>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#ab5035e6d84cf3ec7b519a5acb109efaa">TrackSegment</a>.</p>
<p>Referenced by <a class="el" href="classKite_1_1SegmentFsm.html#a0b8e8be9d7c9501be9534d3c2a9dd586">SegmentFsm::desaturate()</a>.</p>
</div>
</div>
<a class="anchor" id="a8d6f4521b27f32080d7477cf8ee8a274"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool isTerminal </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>See also:</b>&#160; Katabatic::AutoSegment::isTerminal(). </p>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#a8d6f4521b27f32080d7477cf8ee8a274">TrackSegment</a>.</p>
<p>Referenced by <a class="el" href="classKite_1_1Manipulator.html#af7b3305693dab195d0c5d075821fbb30">Manipulator::makeDogleg()</a>, and <a class="el" href="classKite_1_1Manipulator.html#a8b5b69fd5762d5a0cbc4ceea4d1b68c1">Manipulator::relax()</a>.</p>
</div>
</div>
<a class="anchor" id="a4721fcbe9c93ed5392afd9a756b989a8"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool isStrap </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>See also:</b>&#160; <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/katabatic/doc/html/katabatic.tag:../katabatic/" href="../katabatic/classKatabatic_1_1AutoSegment.html#a4721fcbe9c93ed5392afd9a756b989a8">Katabatic::AutoSegment::isStrap()</a>. </p>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#a4721fcbe9c93ed5392afd9a756b989a8">TrackSegment</a>.</p>
<p>Referenced by <a class="el" href="classKite_1_1Manipulator.html#a7140b507da2cab137d968a037bed19df">Manipulator::insertInTrack()</a>, <a class="el" href="classKite_1_1Manipulator.html#ac3b48ad16d9b9b63d1c68e526ceb42e8">Manipulator::pivotDown()</a>, <a class="el" href="classKite_1_1Manipulator.html#ad590137c4e7e8d5ad2a6f510e0d70e81">Manipulator::pivotUp()</a>, <a class="el" href="classKite_1_1SegmentFsm.html#a2a8eadaaf3ed213914e7b4a81cae6e6a">SegmentFsm::SegmentFsm()</a>, and <a class="el" href="classKite_1_1SegmentFsm.html#a623d68f599c0de60cdd36af3f183e6f1">SegmentFsm::slackenTopology()</a>.</p>
</div>
</div>
<a class="anchor" id="ab1f9e0bca70dea59558459a003a62d88"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool isSlackened </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>See also:</b>&#160; <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/katabatic/doc/html/katabatic.tag:../katabatic/" href="../katabatic/classKatabatic_1_1AutoSegment.html#ab1f9e0bca70dea59558459a003a62d88">Katabatic::AutoSegment::isSlackened()</a>. </p>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#ab1f9e0bca70dea59558459a003a62d88">TrackSegment</a>.</p>
</div>
</div>
<a class="anchor" id="a172b2394f9c2cbaaf5bc4b19e0e76e65"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool isDogleg </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>See also:</b>&#160; Katabatic::isDogleg(). </p>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#a172b2394f9c2cbaaf5bc4b19e0e76e65">TrackSegment</a>.</p>
</div>
</div>
<a class="anchor" id="a6a7e35dd5a9ca99ca879e424ce42b902"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool isCreated </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">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><b>See also:</b>&#160; <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/katabatic/doc/html/katabatic.tag:../katabatic/" href="../katabatic/classKatabatic_1_1AutoSegment.html#a6a7e35dd5a9ca99ca879e424ce42b902">Katabatic::AutoSegment::isCreated()</a>. </p>
</div>
</div>
<a class="anchor" id="a54f713d06c43bebf4e0dfef06e347531"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool isInvalidated </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">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><b>Returns:</b> <b>true</b> if the segment is invalidated (may be different from the supporting AutoSegment status). </p>
<p>Referenced by <a class="el" href="classKite_1_1SegmentObserver.html#a52e577fb0c4f2e3650928334fb621c2f">SegmentObserver::notify()</a>.</p>
</div>
</div>
<a class="anchor" id="a1dbaf905a283e4e45ac71c4771e9e644"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool isBlockage </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">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><b>true</b> if the element is a blockage (obstacle). </p>
<p>Referenced by <a class="el" href="classKite_1_1SegmentFsm.html#a9c0fa6a9067b6e027e24f38330f627dc">SegmentFsm::conflictSolveByPlaceds()</a>, <a class="el" href="classKite_1_1NegociateWindow.html#a7bf31fcd4e4007e62454689ef7c553fc">NegociateWindow::createTrackSegment()</a>, <a class="el" href="classKite_1_1Manipulator.html#a7140b507da2cab137d968a037bed19df">Manipulator::insertInTrack()</a>, and <a class="el" href="classKite_1_1Manipulator.html#af977361f4d90967fec7fbf1e778d01bb">Manipulator::isCaged()</a>.</p>
</div>
</div>
<a class="anchor" id="ae0c9fa9daf2467984aea571a0f3940c6"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool isLocked </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">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><b>true</b> if the element is part of a net, but must not be moved by the router, whatever the reason. </p>
</div>
</div>
<a class="anchor" id="ae7adbfe4ada0ac46f8cd9cc8f296327d"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool isRouted </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">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><b>true</b> if the router has placed it. </p>
<p>Referenced by <a class="el" href="classKite_1_1TrackSegment.html#aa0bb6f1592688e942ff67e0ac318a4fd">TrackSegment::canDogleg()</a>.</p>
</div>
</div>
<a class="anchor" id="af5f88959753a39f16726a858ee6fb0fd"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool hasSourceDogleg </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">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><span class="red">This method purpose has not been reviewed yet</span>. </p>
<p>Referenced by <a class="el" href="classKite_1_1TrackSegment.html#aa0bb6f1592688e942ff67e0ac318a4fd">TrackSegment::canDogleg()</a>, <a class="el" href="classKite_1_1TrackSegment.html#a7e79fbfe77f173d46b1959c41087930a">TrackSegment::getSourceDogleg()</a>, and <a class="el" href="classKite_1_1TrackSegment.html#aeb4e39bd925d093e6c45599433bb421c">TrackSegment::getTargetDogleg()</a>.</p>
</div>
</div>
<a class="anchor" id="a71fcabadfc78d0e1aefa934659cb1204"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool hasTargetDogleg </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">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><span class="red">This method purpose has not been reviewed yet</span>. </p>
<p>Referenced by <a class="el" href="classKite_1_1TrackSegment.html#aa0bb6f1592688e942ff67e0ac318a4fd">TrackSegment::canDogleg()</a>.</p>
</div>
</div>
<a class="anchor" id="a5aa65e9913c7368130b187464404ded6"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool canRipple </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">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><span class="red">This method purpose has not been reviewed yet</span>. </p>
<p>Referenced by <a class="el" href="classKite_1_1Manipulator.html#af46102d49a7aa0c163de1bf143807794">Manipulator::ripple()</a>.</p>
</div>
</div>
<a class="anchor" id="aa0bb6f1592688e942ff67e0ac318a4fd"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool canDogleg </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>See also:</b>&#160; <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/katabatic/doc/html/katabatic.tag:../katabatic/" href="../katabatic/classKatabatic_1_1AutoSegment.html#a43c865bcfcfd6132352a9ac8a84c25cd">AutoSegment::canDogleg()</a>. At <a class="el" href="namespaceKite.html" title="The namespace dedicated to Kite. ">Kite</a> level, this variant of the method will apply only on local segments and the segment must not already have a source or target dogleg. </p>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#aa0bb6f1592688e942ff67e0ac318a4fd">TrackSegment</a>.</p>
<p>Referenced by <a class="el" href="classKite_1_1SegmentFsm.html#a0d9a9926ae67cc7998799347f135e28a">SegmentFsm::conflictSolveByHistory()</a>, <a class="el" href="classKite_1_1Manipulator.html#af4d93a43ea18ae124da71072c66d1e0a">Manipulator::makeDogleg()</a>, and <a class="el" href="classKite_1_1Manipulator.html#a8b5b69fd5762d5a0cbc4ceea4d1b68c1">Manipulator::relax()</a>.</p>
</div>
</div>
<a class="anchor" id="accb4c6a7ee2678a0cff4dbc4a7860fe1"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool canDogleg </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/classHurricane_1_1Interval.html">Interval</a>&#160;</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>See also:</b>&#160; <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/katabatic/doc/html/katabatic.tag:../katabatic/" href="../katabatic/classKatabatic_1_1AutoSegment.html#a43c865bcfcfd6132352a9ac8a84c25cd">AutoSegment::canDogleg()</a>. At <a class="el" href="namespaceKite.html" title="The namespace dedicated to Kite. ">Kite</a> level, this variant of the method will apply only on local segments and the segment must not already have a source or target dogleg. </p>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#accb4c6a7ee2678a0cff4dbc4a7860fe1">TrackSegment</a>.</p>
</div>
</div>
<a class="anchor" id="a4f040cf33009e4886d401115c3bea838"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool canDogleg </td>
<td>(</td>
<td class="paramtype"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/katabatic/doc/html/katabatic.tag:../katabatic/" href="../katabatic/classKatabatic_1_1GCell.html">Katabatic::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> = <code>0</code>&#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>See also:</b>&#160; <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/katabatic/doc/html/katabatic.tag:../katabatic/" href="../katabatic/classKatabatic_1_1AutoSegment.html#a43c865bcfcfd6132352a9ac8a84c25cd">AutoSegment::canDogleg()</a>. At kite level, this variant of the method is mainly targeted to global segment. For local segment it behave like <a class="el" href="classKite_1_1TrackElement.html#accb4c6a7ee2678a0cff4dbc4a7860fe1">TrackElement::canDogleg(Interval)</a>. For global segment, make the break in the requested GCell <code>doglegGCell</code>. If it's in the first or last GCell and there is already a dogleg, allow to reuse it if <code>flags</code> contains <a class="el" href="namespaceKite.html#acca8fffa3182dea5f94208f454f14b47a766f453d6caa06490196a952762f0bb8">Kite::KtAllowDoglegReuse</a>. </p>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#a4f040cf33009e4886d401115c3bea838">TrackSegment</a>.</p>
</div>
</div>
<a class="anchor" id="ae68c47fdf838be02cbf6660cd25a0806"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">unsigned long getId </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">
<dl class="section return"><dt>Returns</dt><dd>The <code>Id</code> of the supporting AutoSegment, if there is any. <em>Zero</em> otherwise. </dd></dl>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#ae68c47fdf838be02cbf6660cd25a0806">TrackSegment</a>, and <a class="el" href="classKite_1_1TrackFixedSegment.html#ae68c47fdf838be02cbf6660cd25a0806">TrackFixedSegment</a>.</p>
<p>Referenced by <a class="el" href="classKite_1_1RoutingEvent.html#a6add4f520081c698421481bf8fe0ad1f">RoutingEvent::process()</a>.</p>
</div>
</div>
<a class="anchor" id="ae35b78590ed6aa546b626ef95f28c533"></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">pure virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>The direction of the supporting element (should match the preferred direction of the <a class="el" href="classKite_1_1Track.html" title="Structure managing one routing track. ">Track</a>). </dd></dl>
<p>Implemented in <a class="el" href="classKite_1_1TrackSegment.html#a09d03fbca9ab891c2f25bdae7f89a899">TrackSegment</a>, and <a class="el" href="classKite_1_1TrackFixedSegment.html#a09d03fbca9ab891c2f25bdae7f89a899">TrackFixedSegment</a>.</p>
<p>Referenced by <a class="el" href="classKite_1_1TrackElement.html#a3b9694bf093e3ea16e4a8c8126a8d4db">TrackElement::getBoundingBox()</a>, <a class="el" href="classKite_1_1TrackSegment.html#a7e79fbfe77f173d46b1959c41087930a">TrackSegment::getSourceDogleg()</a>, <a class="el" href="classKite_1_1TrackSegment.html#aeb4e39bd925d093e6c45599433bb421c">TrackSegment::getTargetDogleg()</a>, <a class="el" href="classKite_1_1Manipulator.html#a97e56b831481ef65309f6e3b7e3f4f3d">Manipulator::makeDogleg()</a>, <a class="el" href="classKite_1_1Manipulator.html#aa61f08642d981761687635be108b9837">Manipulator::minimize()</a>, <a class="el" href="classKite_1_1Manipulator.html#a8b5b69fd5762d5a0cbc4ceea4d1b68c1">Manipulator::relax()</a>, and <a class="el" href="classKite_1_1Manipulator.html#af46102d49a7aa0c163de1bf143807794">Manipulator::ripple()</a>.</p>
</div>
</div>
<a class="anchor" id="a2b383a5b6f5028911a35e446a682dabd"></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_1Net.html">Net</a> * getNet </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">pure virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><b>Returns:</b> The Net associated to the element (may be <code>NULL</code>). </p>
<p>Implemented in <a class="el" href="classKite_1_1TrackSegment.html#adf3e1a980233163de0ca34a5c3575998">TrackSegment</a>, and <a class="el" href="classKite_1_1TrackFixedSegment.html#adf3e1a980233163de0ca34a5c3575998">TrackFixedSegment</a>.</p>
<p>Referenced by <a class="el" href="classKite_1_1SegmentFsm.html#a0d9a9926ae67cc7998799347f135e28a">SegmentFsm::conflictSolveByHistory()</a>, <a class="el" href="classKite_1_1SegmentFsm.html#a9c0fa6a9067b6e027e24f38330f627dc">SegmentFsm::conflictSolveByPlaceds()</a>, <a class="el" href="classKite_1_1SegmentFsm.html#a0b8e8be9d7c9501be9534d3c2a9dd586">SegmentFsm::desaturate()</a>, <a class="el" href="classKite_1_1SegmentAction.html#a324f17f0f5a09b76344eb2e003695d74">SegmentAction::doAction()</a>, <a class="el" href="classKite_1_1Manipulator.html#add26b688d75a99a1ae781787eead08d5">Manipulator::forceOverLocals()</a>, <a class="el" href="classKite_1_1Manipulator.html#a76d3956660cfa624696e2a5f2916cd22">Manipulator::forceToTrack()</a>, <a class="el" href="classKite_1_1TrackElement.html#a38d30a241d00a14943a06401d0d12923">TrackElement::getFreeInterval()</a>, <a class="el" href="classKite_1_1TrackElement.html#a5af0ac91c558873fea9703e7ab6f48df">TrackElement::getNext()</a>, <a class="el" href="classKite_1_1Track.html#ac930c18bbcb0b25f2b5360f6ce6741e7">Track::getOverlapCost()</a>, <a class="el" href="classKite_1_1TrackElement.html#acbb9c965449bf4502d71149563cec0a2">TrackElement::getPrevious()</a>, <a class="el" href="classKite_1_1TrackElement.html#a250348f9030b92b19580749bf99030b5">TrackElement::incOverlapCost()</a>, <a class="el" href="classKite_1_1Manipulator.html#a7140b507da2cab137d968a037bed19df">Manipulator::insertInTrack()</a>, <a class="el" href="classKite_1_1Manipulator.html#af4d93a43ea18ae124da71072c66d1e0a">Manipulator::makeDogleg()</a>, <a class="el" href="classKite_1_1Manipulator.html#aa61f08642d981761687635be108b9837">Manipulator::minimize()</a>, <a class="el" href="classKite_1_1RoutingEvent.html#a6add4f520081c698421481bf8fe0ad1f">RoutingEvent::process()</a>, <a class="el" href="classKite_1_1RoutingEvent.html#a5bd93abe1416952ace15a98dbeeed124">RoutingEvent::revalidate()</a>, <a class="el" href="classKite_1_1Manipulator.html#af46102d49a7aa0c163de1bf143807794">Manipulator::ripple()</a>, <a class="el" href="classKite_1_1Manipulator.html#a147c24aa53f561c10d5d24b82b03448a">Manipulator::ripupPerpandiculars()</a>, <a class="el" href="classKite_1_1SegmentFsm.html#a2a8eadaaf3ed213914e7b4a81cae6e6a">SegmentFsm::SegmentFsm()</a>, <a class="el" href="classKite_1_1Manipulator.html#aba69c61ccb330e26aaa8211f0454795f">Manipulator::shrinkToTrack()</a>, <a class="el" href="classKite_1_1SegmentFsm.html#a623d68f599c0de60cdd36af3f183e6f1">SegmentFsm::slackenTopology()</a>, and <a class="el" href="classKite_1_1SegmentFsm.html#ab8ae818baad1d0a274a7e8c308ca3f92">SegmentFsm::solveFullBlockages()</a>.</p>
</div>
</div>
<a class="anchor" id="ad96c66549598873bf68c2e18ec7164c1"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">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> * getLayer </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">pure virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><b>Returns:</b> The Layer of the element (should match the one of the <a class="el" href="classKite_1_1Track.html" title="Structure managing one routing track. ">Track</a>). </p>
<p>Implemented in <a class="el" href="classKite_1_1TrackSegment.html#a304ee4e02745811e04ac6fb688bf834f">TrackSegment</a>, and <a class="el" href="classKite_1_1TrackFixedSegment.html#a304ee4e02745811e04ac6fb688bf834f">TrackFixedSegment</a>.</p>
<p>Referenced by <a class="el" href="classKite_1_1SegmentFsm.html#a0d9a9926ae67cc7998799347f135e28a">SegmentFsm::conflictSolveByHistory()</a>, <a class="el" href="classKite_1_1SegmentFsm.html#a9c0fa6a9067b6e027e24f38330f627dc">SegmentFsm::conflictSolveByPlaceds()</a>, <a class="el" href="classKite_1_1Track.html#aa392ba7cf1e3e485aac11cf326e31918">Track::insert()</a>, <a class="el" href="classKite_1_1Manipulator.html#a8b5b69fd5762d5a0cbc4ceea4d1b68c1">Manipulator::relax()</a>, <a class="el" href="classKite_1_1RoutingEvent.html#a5bd93abe1416952ace15a98dbeeed124">RoutingEvent::revalidate()</a>, <a class="el" href="classKite_1_1Manipulator.html#af46102d49a7aa0c163de1bf143807794">Manipulator::ripple()</a>, <a class="el" href="classKite_1_1Manipulator.html#a147c24aa53f561c10d5d24b82b03448a">Manipulator::ripupPerpandiculars()</a>, and <a class="el" href="classKite_1_1SegmentFsm.html#a2a8eadaaf3ed213914e7b4a81cae6e6a">SegmentFsm::SegmentFsm()</a>.</p>
</div>
</div>
<a class="anchor" id="abfd8de286baf41eea066220773c7046d"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classKite_1_1Track.html">Track</a> * getTrack </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">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><b>Returns:</b> The <a class="el" href="classKite_1_1Track.html" title="Structure managing one routing track. ">Track</a> into which the element is inserted (may be <code>NULL</code>). </p>
<p>Referenced by <a class="el" href="classKite_1_1RoutingEventQueue.html#af0813b67c9fc72d960f7e512e9403d57">RoutingEventQueue::add()</a>, <a class="el" href="classKite_1_1SegmentAction.html#a324f17f0f5a09b76344eb2e003695d74">SegmentAction::doAction()</a>, <a class="el" href="classKite_1_1TrackFixedSegment.html#af85576c58c70007850ad56e238e8d266">TrackFixedSegment::getAxis()</a>, <a class="el" href="classKite_1_1TrackFixedSegment.html#a09d03fbca9ab891c2f25bdae7f89a899">TrackFixedSegment::getDirection()</a>, <a class="el" href="classKite_1_1DataNegociate.html#abfd8de286baf41eea066220773c7046d">DataNegociate::getTrack()</a>, <a class="el" href="classKite_1_1Manipulator.html#af977361f4d90967fec7fbf1e778d01bb">Manipulator::isCaged()</a>, <a class="el" href="classKite_1_1TrackFixedSegment.html#ac46ac3b48d712750c7888b48964ac189">TrackFixedSegment::isHorizontal()</a>, <a class="el" href="classKite_1_1TrackFixedSegment.html#a2bb30e82aad1f321af4a065338775f36">TrackFixedSegment::isVertical()</a>, <a class="el" href="classKite_1_1Manipulator.html#a8b5b69fd5762d5a0cbc4ceea4d1b68c1">Manipulator::relax()</a>, and <a class="el" href="classKite_1_1TrackSegment.html#acc245ce084989d1c34816d0e61b9d510">TrackSegment::swapTrack()</a>.</p>
</div>
</div>
<a class="anchor" id="a659e8df65f89db5547aa8a8fe3d92f69"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">size_t getIndex </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">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><b>Returns:</b> The index of the element inside the <a class="el" href="classKite_1_1Track.html" title="Structure managing one routing track. ">Track</a>'s vector.</p>
<dl class="section user"><dt>Remark:</dt><dd>If the element is not inserted in a <a class="el" href="classKite_1_1Track.html" title="Structure managing one routing track. ">Track</a>, it is set to <a class="el" href="classKite_1_1Track.html#ae0070ea45b2592ce3701ab9e486e58a0">Track::npos</a>, and obviously must not be used. </dd></dl>
<p>Referenced by <a class="el" href="classKite_1_1TrackSegment.html#acc245ce084989d1c34816d0e61b9d510">TrackSegment::swapTrack()</a>.</p>
</div>
</div>
<a class="anchor" id="a9f20f94d2d8aaa38c2b9ead5275ead27"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">unsigned long getFreedomDegree </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 degree of freedom of the element. It is used as a priority value when sorting <a class="el" href="classKite_1_1TrackElement.html" title="Abstract Class for all Elements inserted inside a Track. ">TrackElement</a> (in <a class="el" href="classKite_1_1RoutingEvent.html" title="Atomic Placement Request for a TrackSegment. ">RoutingEvent</a>).</p>
<p><b>Returns:</b> The degree of freedom of the element. It is used as a priority value when sorting <a class="el" href="classKite_1_1TrackElement.html" title="Abstract Class for all Elements inserted inside a Track. ">TrackElement</a> (in <a class="el" href="classKite_1_1RoutingEvent.html" title="Atomic Placement Request for a TrackSegment. ">RoutingEvent</a>).</p>
<p>Currently, it is the <em>slack</em> of the <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/katabatic/doc/html/katabatic.tag:../katabatic/" href="../katabatic/classKatabatic_1_1AutoSegment.html">Katabatic::AutoSegment</a>. </p>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#a9f20f94d2d8aaa38c2b9ead5275ead27">TrackSegment</a>.</p>
<p>Referenced by <a class="el" href="classKite_1_1RoutingEvent.html#a6add4f520081c698421481bf8fe0ad1f">RoutingEvent::process()</a>.</p>
</div>
</div>
<a class="anchor" id="a71b29fb20a3ba09616a6be4b122a797e"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">float getMaxUnderDensity </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">
<p><b>Returns:</b> The maximum density of all the GCells under this element. </p>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#a3bc51798c4b09a1537350822025adcea">TrackSegment</a>.</p>
</div>
</div>
<a class="anchor" id="a3b9694bf093e3ea16e4a8c8126a8d4db"></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_1Box.html">Box</a> getBoundingBox </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">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><b>Returns:</b> The box that this element uses in the <a class="el" href="classKite_1_1Track.html" title="Structure managing one routing track. ">Track</a>. </p>
</div>
</div>
<a class="anchor" id="a5af0ac91c558873fea9703e7ab6f48df"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classKite_1_1TrackElement.html">TrackElement</a> * getNext </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 next <a class="el" href="classKite_1_1TrackElement.html" title="Abstract Class for all Elements inserted inside a Track. ">TrackElement</a>, on the same track and of a <em>different</em> net. <b>See also:</b>&#160; <a class="el" href="classKite_1_1Track.html#afaad0c947c459bab3b7ef742aaa5c59f">Track::getNext()</a>. </p>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#a5af0ac91c558873fea9703e7ab6f48df">TrackSegment</a>, and <a class="el" href="classKite_1_1TrackFixedSegment.html#a5af0ac91c558873fea9703e7ab6f48df">TrackFixedSegment</a>.</p>
<p>Referenced by <a class="el" href="classKite_1_1Manipulator.html#af977361f4d90967fec7fbf1e778d01bb">Manipulator::isCaged()</a>.</p>
</div>
</div>
<a class="anchor" id="acbb9c965449bf4502d71149563cec0a2"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classKite_1_1TrackElement.html">TrackElement</a> * getPrevious </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 previous <a class="el" href="classKite_1_1TrackElement.html" title="Abstract Class for all Elements inserted inside a Track. ">TrackElement</a>, on the same track and of a <em>different</em> net. <b>See also:</b>&#160; <a class="el" href="classKite_1_1Track.html#a4ebcb68fdea325b48de96a417a86d896">Track::getPrevious()</a>. </p>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#acbb9c965449bf4502d71149563cec0a2">TrackSegment</a>, and <a class="el" href="classKite_1_1TrackFixedSegment.html#acbb9c965449bf4502d71149563cec0a2">TrackFixedSegment</a>.</p>
<p>Referenced by <a class="el" href="classKite_1_1Manipulator.html#af977361f4d90967fec7fbf1e778d01bb">Manipulator::isCaged()</a>.</p>
</div>
</div>
<a class="anchor" id="ac492fb5399691d81c31547db6b56fd03"></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> getAxis </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">pure virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><b>Returns:</b> The axis position of the element (must be the same as the <a class="el" href="classKite_1_1Track.html" title="Structure managing one routing track. ">Track</a>). </p>
<p>Implemented in <a class="el" href="classKite_1_1TrackSegment.html#af85576c58c70007850ad56e238e8d266">TrackSegment</a>, and <a class="el" href="classKite_1_1TrackFixedSegment.html#af85576c58c70007850ad56e238e8d266">TrackFixedSegment</a>.</p>
<p>Referenced by <a class="el" href="classKite_1_1SegmentFsm.html#a0d9a9926ae67cc7998799347f135e28a">SegmentFsm::conflictSolveByHistory()</a>, <a class="el" href="classKite_1_1TrackElement.html#a3b9694bf093e3ea16e4a8c8126a8d4db">TrackElement::getBoundingBox()</a>, <a class="el" href="classKite_1_1Manipulator.html#af46102d49a7aa0c163de1bf143807794">Manipulator::ripple()</a>, and <a class="el" href="classKite_1_1Manipulator.html#a147c24aa53f561c10d5d24b82b03448a">Manipulator::ripupPerpandiculars()</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">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><b>Returns:</b> The minimun of the interval used by the element (cached in an attribute). </p>
<p>Referenced by <a class="el" href="classKite_1_1TrackSegment.html#aa1ef325b98fab61d2c7c5bdc1fcd92fc">TrackSegment::_check()</a>, <a class="el" href="classKite_1_1SegmentFsm.html#a0d9a9926ae67cc7998799347f135e28a">SegmentFsm::conflictSolveByHistory()</a>, <a class="el" href="classKite_1_1Track.html#a92159b77cb6e17d1c81fe6b907953387">Track::find()</a>, <a class="el" href="classKite_1_1TrackElement.html#a3b9694bf093e3ea16e4a8c8126a8d4db">TrackElement::getBoundingBox()</a>, <a class="el" href="classKite_1_1TrackElement.html#ad78cfb34e7d8e92ba854fbc2dbf9d842">TrackElement::getCanonicalInterval()</a>, <a class="el" href="classKite_1_1TrackElement.html#a5370f2cf21823e1fa58d0627ee53c483">TrackElement::getLength()</a>, <a class="el" href="classKite_1_1Manipulator.html#a7140b507da2cab137d968a037bed19df">Manipulator::insertInTrack()</a>, <a class="el" href="classKite_1_1Manipulator.html#af977361f4d90967fec7fbf1e778d01bb">Manipulator::isCaged()</a>, <a class="el" href="classKite_1_1Manipulator.html#aa61f08642d981761687635be108b9837">Manipulator::minimize()</a>, and <a class="el" href="classKite_1_1Manipulator.html#aba69c61ccb330e26aaa8211f0454795f">Manipulator::shrinkToTrack()</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">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><b>Returns:</b> The maximum of the interval used by the element (cached in an attribute). </p>
<p>Referenced by <a class="el" href="classKite_1_1TrackSegment.html#aa1ef325b98fab61d2c7c5bdc1fcd92fc">TrackSegment::_check()</a>, <a class="el" href="classKite_1_1TrackElement.html#a3b9694bf093e3ea16e4a8c8126a8d4db">TrackElement::getBoundingBox()</a>, <a class="el" href="classKite_1_1TrackElement.html#ad78cfb34e7d8e92ba854fbc2dbf9d842">TrackElement::getCanonicalInterval()</a>, <a class="el" href="classKite_1_1TrackElement.html#a5370f2cf21823e1fa58d0627ee53c483">TrackElement::getLength()</a>, <a class="el" href="classKite_1_1Manipulator.html#a7140b507da2cab137d968a037bed19df">Manipulator::insertInTrack()</a>, and <a class="el" href="classKite_1_1Manipulator.html#af977361f4d90967fec7fbf1e778d01bb">Manipulator::isCaged()</a>.</p>
</div>
</div>
<a class="anchor" id="a5370f2cf21823e1fa58d0627ee53c483"></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> getLength </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">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><b>Returns:</b> The length of the interval used by the element. </p>
<p>Referenced by <a class="el" href="classKite_1_1NegociateWindow.html#a4936106670361df6b6f3ef0b6088c9dc">NegociateWindow::computeWirelength()</a>, <a class="el" href="classKite_1_1Manipulator.html#af4d93a43ea18ae124da71072c66d1e0a">Manipulator::makeDogleg()</a>, <a class="el" href="classKite_1_1Manipulator.html#ac954731e16188acb6984f348bf2d9d20">Manipulator::moveUp()</a>, and <a class="el" href="classKite_1_1RoutingEvent.html#a5bd93abe1416952ace15a98dbeeed124">RoutingEvent::revalidate()</a>.</p>
</div>
</div>
<a class="anchor" id="ad78cfb34e7d8e92ba854fbc2dbf9d842"></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> getCanonicalInterval </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">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><b>Returns:</b> The interval span used by the element inside the <a class="el" href="classKite_1_1Track.html" title="Structure managing one routing track. ">Track</a>. </p>
<p>Referenced by <a class="el" href="classKite_1_1SegmentFsm.html#a0d9a9926ae67cc7998799347f135e28a">SegmentFsm::conflictSolveByHistory()</a>, <a class="el" href="classKite_1_1SegmentFsm.html#a9c0fa6a9067b6e027e24f38330f627dc">SegmentFsm::conflictSolveByPlaceds()</a>, <a class="el" href="classKite_1_1SegmentFsm.html#a0b8e8be9d7c9501be9534d3c2a9dd586">SegmentFsm::desaturate()</a>, <a class="el" href="classKite_1_1Manipulator.html#add26b688d75a99a1ae781787eead08d5">Manipulator::forceOverLocals()</a>, <a class="el" href="classKite_1_1Manipulator.html#a76d3956660cfa624696e2a5f2916cd22">Manipulator::forceToTrack()</a>, <a class="el" href="classKite_1_1Track.html#ac930c18bbcb0b25f2b5360f6ce6741e7">Track::getOverlapCost()</a>, <a class="el" href="classKite_1_1Manipulator.html#a7140b507da2cab137d968a037bed19df">Manipulator::insertInTrack()</a>, <a class="el" href="classKite_1_1Manipulator.html#af4d93a43ea18ae124da71072c66d1e0a">Manipulator::makeDogleg()</a>, <a class="el" href="classKite_1_1Manipulator.html#aa61f08642d981761687635be108b9837">Manipulator::minimize()</a>, <a class="el" href="classKite_1_1Manipulator.html#a8b5b69fd5762d5a0cbc4ceea4d1b68c1">Manipulator::relax()</a>, <a class="el" href="classKite_1_1Manipulator.html#af46102d49a7aa0c163de1bf143807794">Manipulator::ripple()</a>, <a class="el" href="classKite_1_1Manipulator.html#a147c24aa53f561c10d5d24b82b03448a">Manipulator::ripupPerpandiculars()</a>, <a class="el" href="classKite_1_1Manipulator.html#aba69c61ccb330e26aaa8211f0454795f">Manipulator::shrinkToTrack()</a>, and <a class="el" href="classKite_1_1SegmentFsm.html#ab8ae818baad1d0a274a7e8c308ca3f92">SegmentFsm::solveFullBlockages()</a>.</p>
</div>
</div>
<a class="anchor" id="a38d30a241d00a14943a06401d0d12923"></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> getFreeInterval </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 greatest free interval enclosing this element. </p>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#a38d30a241d00a14943a06401d0d12923">TrackSegment</a>, and <a class="el" href="classKite_1_1TrackFixedSegment.html#a38d30a241d00a14943a06401d0d12923">TrackFixedSegment</a>.</p>
</div>
</div>
<a class="anchor" id="a972921aeb7f907194710ea35ac7600be"></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="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>See also:</b>&#160; <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/katabatic/doc/html/katabatic.tag:../katabatic/" href="../katabatic/classKatabatic_1_1AutoSegment.html#ab7685e309e1d910db3e8237f8a898c35">Katabatic::AutoSegment::getSourceConstraints()</a>. </p>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#a972921aeb7f907194710ea35ac7600be">TrackSegment</a>.</p>
</div>
</div>
<a class="anchor" id="a00d398bdc1837c6c1e4847895c557829"></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="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>See also:</b>&#160; <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/katabatic/doc/html/katabatic.tag:../katabatic/" href="../katabatic/classKatabatic_1_1AutoSegment.html#a9c1b8b3cd57fb7b0bf60c7a6148237c2">Katabatic::AutoSegment::getTargetConstraints()</a>. </p>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#a00d398bdc1837c6c1e4847895c557829">TrackSegment</a>.</p>
</div>
</div>
<a class="anchor" id="a76a45d5701f875711a03692e9bf6d5ce"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classKite_1_1DataNegociate.html">DataNegociate</a> * getDataNegociate </td>
<td>(</td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>flags</em> = <code><a class="el" href="namespaceKite.html#acca8fffa3182dea5f94208f454f14b47a68e917ff37d4b5cef906303181836404">KtDataSelf</a></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">
<p><b>Returns:</b> The additional data-structure supplied by the routing algorithm. </p>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#a76a45d5701f875711a03692e9bf6d5ce">TrackSegment</a>.</p>
<p>Referenced by <a class="el" href="classKite_1_1NegociateWindow.html#a51ba8e6a122c0cb93174027658cade63">NegociateWindow::addRoutingEvent()</a>, <a class="el" href="classKite_1_1SegmentFsm.html#a0b8e8be9d7c9501be9534d3c2a9dd586">SegmentFsm::desaturate()</a>, <a class="el" href="classKite_1_1SegmentAction.html#a324f17f0f5a09b76344eb2e003695d74">SegmentAction::doAction()</a>, <a class="el" href="classKite_1_1Manipulator.html#add26b688d75a99a1ae781787eead08d5">Manipulator::forceOverLocals()</a>, <a class="el" href="classKite_1_1Manipulator.html#a76d3956660cfa624696e2a5f2916cd22">Manipulator::forceToTrack()</a>, <a class="el" href="classKite_1_1TrackSegment.html#a76a45d5701f875711a03692e9bf6d5ce">TrackSegment::getDataNegociate()</a>, <a class="el" href="classKite_1_1RoutingEvent.html#aeff84fdf6cc443a2c7a7bd33b03e871f">RoutingEvent::getState()</a>, <a class="el" href="classKite_1_1Manipulator.html#a7140b507da2cab137d968a037bed19df">Manipulator::insertInTrack()</a>, <a class="el" href="classKite_1_1Manipulator.html#af7b3305693dab195d0c5d075821fbb30">Manipulator::makeDogleg()</a>, <a class="el" href="classKite_1_1RoutingEvent.html#a6add4f520081c698421481bf8fe0ad1f">RoutingEvent::process()</a>, <a class="el" href="classKite_1_1Manipulator.html#a8b5b69fd5762d5a0cbc4ceea4d1b68c1">Manipulator::relax()</a>, <a class="el" href="classKite_1_1Manipulator.html#a9721ea909a9b11297dea855e1ba82a55">Manipulator::repackPerpandiculars()</a>, <a class="el" href="classKite_1_1RoutingEvent.html#abf2d02f18f96183fc6e78f3e6dc8cbf6">RoutingEvent::reschedule()</a>, <a class="el" href="classKite_1_1Manipulator.html#af46102d49a7aa0c163de1bf143807794">Manipulator::ripple()</a>, <a class="el" href="classKite_1_1SegmentFsm.html#a2a8eadaaf3ed213914e7b4a81cae6e6a">SegmentFsm::SegmentFsm()</a>, <a class="el" href="classKite_1_1NegociateWindow.html#a329dbc5bc549e3fe354996368dbf7113">NegociateWindow::setGCells()</a>, <a class="el" href="classKite_1_1RoutingEvent.html#ae2eddb4497661b6319616a70c4acd165">RoutingEvent::setSegment()</a>, <a class="el" href="classKite_1_1RoutingEvent.html#af7ce7f73feb28f3df8f3180632a2f731">RoutingEvent::setState()</a>, and <a class="el" href="classKite_1_1SegmentFsm.html#a623d68f599c0de60cdd36af3f183e6f1">SegmentFsm::slackenTopology()</a>.</p>
</div>
</div>
<a class="anchor" id="af2d46d64cbd02bdbba53d5483d95e26d"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classKite_1_1TrackElement.html">TrackElement</a> * getCanonical </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/classHurricane_1_1Interval.html">Interval</a> &amp;&#160;</td>
<td class="paramname"><em>i</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><span class="red">Inner working still unclear to myself.</span> </p>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#af2d46d64cbd02bdbba53d5483d95e26d">TrackSegment</a>.</p>
<p>Referenced by <a class="el" href="classKite_1_1NegociateWindow.html#a7bf31fcd4e4007e62454689ef7c553fc">NegociateWindow::createTrackSegment()</a>, and <a class="el" href="classKite_1_1DataNegociate.html#ac5c54df7ed3b930268c8d7752c101725">DataNegociate::update()</a>.</p>
</div>
</div>
<a class="anchor" id="a79b25d8199fe90446e99cf08d2d85674"></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">Katabatic::GCellVector &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">
<p><b>Returns:</b> The table of <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/katabatic/doc/html/katabatic.tag:../katabatic/" href="../katabatic/classKatabatic_1_1GCell.html">Katabatic::GCell</a> underneath the element whole span. </p>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#a79b25d8199fe90446e99cf08d2d85674">TrackSegment</a>.</p>
<p>Referenced by <a class="el" href="classKite_1_1Manipulator.html#a97e56b831481ef65309f6e3b7e3f4f3d">Manipulator::makeDogleg()</a>, and <a class="el" href="classKite_1_1Manipulator.html#a8b5b69fd5762d5a0cbc4ceea4d1b68c1">Manipulator::relax()</a>.</p>
</div>
</div>
<a class="anchor" id="ad1a03a36d5908ce44c3d0391ff9c7103"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classKite_1_1TrackElement.html">TrackElement</a> * getParent </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="classKite_1_1TrackElement.html" title="Abstract Class for all Elements inserted inside a Track. ">TrackElement</a> from which the dogleg has been created, if any. </p>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#ad1a03a36d5908ce44c3d0391ff9c7103">TrackSegment</a>.</p>
<p>Referenced by <a class="el" href="classKite_1_1RoutingEvent.html#a02a3f1f2801d4ebbbe676e062878faae">RoutingEvent::setAxisHintFromParent()</a>.</p>
</div>
</div>
<a class="anchor" id="ace669b962e7df815b92fe70e1f4ad755"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">unsigned int getDoglegLevel </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 deepness of the dogleg. </p>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#ace669b962e7df815b92fe70e1f4ad755">TrackSegment</a>.</p>
</div>
</div>
<a class="anchor" id="a7e79fbfe77f173d46b1959c41087930a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classKite_1_1TrackElement.html">TrackElement</a> * getSourceDogleg </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 source part of the segment from which the dogleg has been created. </p>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#a7e79fbfe77f173d46b1959c41087930a">TrackSegment</a>.</p>
<p>Referenced by <a class="el" href="classKite_1_1Manipulator.html#a8b5b69fd5762d5a0cbc4ceea4d1b68c1">Manipulator::relax()</a>.</p>
</div>
</div>
<a class="anchor" id="aeb4e39bd925d093e6c45599433bb421c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classKite_1_1TrackElement.html">TrackElement</a> * getTargetDogleg </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 target part of the segment from which the dogleg has been created. </p>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#aeb4e39bd925d093e6c45599433bb421c">TrackSegment</a>.</p>
<p>Referenced by <a class="el" href="classKite_1_1Manipulator.html#a8b5b69fd5762d5a0cbc4ceea4d1b68c1">Manipulator::relax()</a>.</p>
</div>
</div>
<a class="anchor" id="aa0ba92ebf19f596537dc051c090d5736"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">TrackElements getPerpandiculars </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 collection of all element perpandiculars to this one. </p>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#aa0ba92ebf19f596537dc051c090d5736">TrackSegment</a>.</p>
<p>Referenced by <a class="el" href="classKite_1_1Manipulator.html#a76d3956660cfa624696e2a5f2916cd22">Manipulator::forceToTrack()</a>, and <a class="el" href="classKite_1_1Manipulator.html#a7140b507da2cab137d968a037bed19df">Manipulator::insertInTrack()</a>.</p>
</div>
</div>
<a class="anchor" id="aeb14f94914af58657a0dc2f50ec98df5"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void setFlags </td>
<td>(</td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>flags</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set to <b>true</b> <code>flags</code> in the element state array. </p>
<p>Referenced by <a class="el" href="classKite_1_1TrackSegment.html#ac295bade8aee589f6718dfa79edc2a34">TrackSegment::detach()</a>, <a class="el" href="classKite_1_1TrackSegment.html#a893f1101c650c08c98612515c2b1a89c">TrackSegment::invalidate()</a>, and <a class="el" href="classKite_1_1Manipulator.html#a8b5b69fd5762d5a0cbc4ceea4d1b68c1">Manipulator::relax()</a>.</p>
</div>
</div>
<a class="anchor" id="a1a6fac115cb81db48e3ac9ffa0721bb5"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void unsetFlags </td>
<td>(</td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>flags</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Reset to <b>false</b> <code>flags</code> in the element state array. </p>
<p>Referenced by <a class="el" href="classKite_1_1TrackSegment.html#a5bd93abe1416952ace15a98dbeeed124">TrackSegment::revalidate()</a>.</p>
</div>
</div>
<a class="anchor" id="abd3d8093f871d3d1a7f24b053648026c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void setTrack </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classKite_1_1Track.html">Track</a> *&#160;</td>
<td class="paramname"><em>track</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>Insert the element into <code>track</code>, also used as an insertion marker. </p>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#abd3d8093f871d3d1a7f24b053648026c">TrackSegment</a>.</p>
<p>Referenced by <a class="el" href="classKite_1_1Track.html#aa392ba7cf1e3e485aac11cf326e31918">Track::insert()</a>, and <a class="el" href="classKite_1_1TrackSegment.html#abd3d8093f871d3d1a7f24b053648026c">TrackSegment::setTrack()</a>.</p>
</div>
</div>
<a class="anchor" id="abee236b4d62f51320212f31e010fc1b5"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void setIndex </td>
<td>(</td>
<td class="paramtype">size_t&#160;</td>
<td class="paramname"><em>index</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Cache the element's index in the <a class="el" href="classKite_1_1Track.html" title="Structure managing one routing track. ">Track</a> internal vector. </p>
<p>Referenced by <a class="el" href="classKite_1_1TrackSegment.html#ac295bade8aee589f6718dfa79edc2a34">TrackSegment::detach()</a>, and <a class="el" href="classKite_1_1TrackSegment.html#acc245ce084989d1c34816d0e61b9d510">TrackSegment::swapTrack()</a>.</p>
</div>
</div>
<a class="anchor" id="af5332d647c0482aa90ad7cc9b2a50f3a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void updateFreedomDegree </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, from the element characteristics, it's degree of freedom. </p>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#af5332d647c0482aa90ad7cc9b2a50f3a">TrackSegment</a>.</p>
</div>
</div>
<a class="anchor" id="a2b90319cb042b283aa5d1fdb1992f11f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void setDoglegLevel </td>
<td>(</td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>level</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>Sets the level of dogleg of the element. </p>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#a2b90319cb042b283aa5d1fdb1992f11f">TrackSegment</a>.</p>
</div>
</div>
<a class="anchor" id="acc245ce084989d1c34816d0e61b9d510"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void swapTrack </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classKite_1_1TrackElement.html">TrackElement</a> *&#160;</td>
<td class="paramname"><em>other</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>Swap the tracks of <code>this</code> and <code>other</code>. </p>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#acc245ce084989d1c34816d0e61b9d510">TrackSegment</a>.</p>
</div>
</div>
<a class="anchor" id="a0ffe603ec7d46f21f5e56ccbe84c03fb"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void reschedule </td>
<td>(</td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>level</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>If the <a class="el" href="classKite_1_1TrackElement.html" title="Abstract Class for all Elements inserted inside a Track. ">TrackElement</a> has already an event scheduled, change the level of this event, otherwise create a new event.</p>
<p><b>See also:</b>&#160; NegotiateWindow::rescheduleEvent(). </p>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#a0ffe603ec7d46f21f5e56ccbe84c03fb">TrackSegment</a>.</p>
<p>Referenced by <a class="el" href="classKite_1_1TrackSegment.html#a10a45c049d0bd7d01c7eff1c5441c7a2">TrackSegment::_postDoglegs()</a>.</p>
</div>
</div>
<a class="anchor" id="ac295bade8aee589f6718dfa79edc2a34"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void detach </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>Remove the link from the <a class="el" href="classKite_1_1TrackElement.html" title="Abstract Class for all Elements inserted inside a Track. ">TrackElement</a> to it's owning <a class="el" href="classKite_1_1Track.html" title="Structure managing one routing track. ">Track</a>, marking it for removal. The removal from the <a class="el" href="classKite_1_1Track.html" title="Structure managing one routing track. ">Track</a>'s vector is managed by the <a class="el" href="classKite_1_1Track.html" title="Structure managing one routing track. ">Track</a> itself during the <a class="el" href="classKite_1_1Session.html" title="Kite update Session. ">Session</a> revalidation stage. </p>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#ac295bade8aee589f6718dfa79edc2a34">TrackSegment</a>.</p>
</div>
</div>
<a class="anchor" id="a893f1101c650c08c98612515c2b1a89c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void invalidate </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>See also:</b>&#160; <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/katabatic/doc/html/katabatic.tag:../katabatic/" href="../katabatic/classKatabatic_1_1AutoSegment.html#a23599eee5a07af377fbc8d47cda7e7b0">AutoSegment::invalidate()</a>. </p>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#a893f1101c650c08c98612515c2b1a89c">TrackSegment</a>.</p>
<p>Referenced by <a class="el" href="classKite_1_1NegociateWindow.html#a7bf31fcd4e4007e62454689ef7c553fc">NegociateWindow::createTrackSegment()</a>, and <a class="el" href="classKite_1_1SegmentObserver.html#a52e577fb0c4f2e3650928334fb621c2f">SegmentObserver::notify()</a>.</p>
</div>
</div>
<a class="anchor" id="a5bd93abe1416952ace15a98dbeeed124"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void revalidate </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>Actualize the <a class="el" href="classKite_1_1TrackElement.html" title="Abstract Class for all Elements inserted inside a Track. ">TrackElement</a> characteristics from the supporting elements (set of AutoSegment).</p>
<p><span class="red">Must be completed with the event management</span> </p>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#a5bd93abe1416952ace15a98dbeeed124">TrackSegment</a>.</p>
</div>
</div>
<a class="anchor" id="a250348f9030b92b19580749bf99030b5"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void incOverlapCost </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/classHurricane_1_1Net.html">Net</a> *&#160;</td>
<td class="paramname"><em>net</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">TrackCost &amp;&#160;</td>
<td class="paramname"><em>cost</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>See also:</b>&#160; Compute the cost of overlap between this segment and the interval specified in <code>cost</code>. Mainly calls the relevant callback. </p>
</div>
</div>
<a class="anchor" id="a45e685b1e3ee630d24bf43746553af4c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void setAxis </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">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>flags</em> = <code><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/katabatic/doc/html/katabatic.tag:../katabatic/" href="../katabatic/namespaceKatabatic.html#a94585537ee1724ea9315578ec54380f4a86d22dbc8fbc045a1e12e25ba357e1d1">Katabatic::SegAxisSet</a></code>&#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>Sets the axis of the <a class="el" href="classKite_1_1TrackElement.html" title="Abstract Class for all Elements inserted inside a Track. ">TrackElement</a>. </p>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#a262a915c38127d3722ec561b30d80f91">TrackSegment</a>.</p>
<p>Referenced by <a class="el" href="classKite_1_1NegociateWindow.html#a7bf31fcd4e4007e62454689ef7c553fc">NegociateWindow::createTrackSegment()</a>, <a class="el" href="classKite_1_1SegmentAction.html#a324f17f0f5a09b76344eb2e003695d74">SegmentAction::doAction()</a>, <a class="el" href="classKite_1_1Track.html#aa392ba7cf1e3e485aac11cf326e31918">Track::insert()</a>, <a class="el" href="classKite_1_1TrackSegment.html#a7a9637875364e84e6862de0102341715">TrackSegment::makeDogleg()</a>, and <a class="el" href="classKite_1_1Manipulator.html#a8b5b69fd5762d5a0cbc4ceea4d1b68c1">Manipulator::relax()</a>.</p>
</div>
</div>
<a class="anchor" id="a7a9637875364e84e6862de0102341715"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classKite_1_1TrackElement.html">TrackElement</a> * makeDogleg </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>Create a dogleg on the source end of the <a class="el" href="classKite_1_1TrackSegment.html" title="Derived Katabatic::AutoSegment for the router. ">TrackSegment</a>. Put the dogleg axis on the source <b><span class="red">To be further reviewed</span></b>.</p>
<p><b>See also:</b>&#160; <a class="el" href="classKite_1_1TrackSegment.html#secDogleg">Dogleg management</a>.</p>
<p>Post-processing done by <a class="el" href="classKite_1_1TrackSegment.html#a10a45c049d0bd7d01c7eff1c5441c7a2">TrackSegment::_postDoglegs()</a>. </p>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#a7a9637875364e84e6862de0102341715">TrackSegment</a>.</p>
<p>Referenced by <a class="el" href="classKite_1_1SegmentFsm.html#a0d9a9926ae67cc7998799347f135e28a">SegmentFsm::conflictSolveByHistory()</a>, <a class="el" href="classKite_1_1Manipulator.html#af4d93a43ea18ae124da71072c66d1e0a">Manipulator::makeDogleg()</a>, <a class="el" href="classKite_1_1TrackElement.html#a3e1b4982a2427f74e55592520ab6272d">TrackElement::makeDogleg()</a>, and <a class="el" href="classKite_1_1Manipulator.html#a8b5b69fd5762d5a0cbc4ceea4d1b68c1">Manipulator::relax()</a>.</p>
</div>
</div>
<a class="anchor" id="a3e1b4982a2427f74e55592520ab6272d"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classKite_1_1TrackElement.html">TrackElement</a> * makeDogleg </td>
<td>(</td>
<td class="paramtype"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/katabatic/doc/html/katabatic.tag:../katabatic/" href="../katabatic/classKatabatic_1_1GCell.html">Katabatic::GCell</a> *&#160;</td>
<td class="paramname"><em>gcell</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p><b>See also:</b>&#160; <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/katabatic/doc/html/katabatic.tag:../katabatic/" href="../katabatic/classKatabatic_1_1AutoSegment.html#a39c927c04b5016770692b9b8448c2f04">AutoSegment::makeDogleg()</a>, <a class="el" href="classKite_1_1TrackSegment.html#secDogleg">Dogleg management</a>.</p>
<p>Post-processing done by <a class="el" href="classKite_1_1TrackSegment.html#a10a45c049d0bd7d01c7eff1c5441c7a2">TrackSegment::_postDoglegs()</a>. </p>
</div>
</div>
<a class="anchor" id="a524f1569b2f2c1a84df2fe47e84e28ed"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classKite_1_1TrackElement.html">TrackElement</a> * makeDogleg </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/classHurricane_1_1Interval.html">Interval</a>&#160;</td>
<td class="paramname"><em>interval</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int &amp;&#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>See also:</b>&#160; <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/katabatic/doc/html/katabatic.tag:../katabatic/" href="../katabatic/classKatabatic_1_1AutoSegment.html#a39c927c04b5016770692b9b8448c2f04">AutoSegment::makeDogleg()</a>, <a class="el" href="classKite_1_1TrackSegment.html#secDogleg">Dogleg management</a>, the return flags from this method are returned through the <code>flags</code> variable.</p>
<p>Post-processing done by <a class="el" href="classKite_1_1TrackSegment.html#a10a45c049d0bd7d01c7eff1c5441c7a2">TrackSegment::_postDoglegs()</a>. </p>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#a524f1569b2f2c1a84df2fe47e84e28ed">TrackSegment</a>.</p>
</div>
</div>
<a class="anchor" id="aa1ef325b98fab61d2c7c5bdc1fcd92fc"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool _check </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>Check the coherency of the element. For a <a class="el" href="classKite_1_1TrackSegment.html" title="Derived Katabatic::AutoSegment for the router. ">TrackSegment</a>:</p>
<ul>
<li>The supporting AutoSegment the canonical one of the set.</li>
<li>The cached <code>min</code> &amp; <code>max</code> values are identical to the computed ones.</li>
</ul>
<p><b>Returns:</b> <b>true</b> on success. </p>
<p>Reimplemented in <a class="el" href="classKite_1_1TrackSegment.html#aa1ef325b98fab61d2c7c5bdc1fcd92fc">TrackSegment</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="TrackElement_8h_source.html">TrackElement.h</a></li>
<li>TrackElement.cpp</li>
<li>TrackElement.dox</li>
<li>TrackSegment.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">Kite - Detailed Router</td>
<td class="RFooter"><small>Copyright &#169; 2008-2016 UPMC. All rights reserved</small></td>
</tr>
</table>
</body>
</html>