coriolis/kite/doc/html/classKite_1_1RoutingEvent.html

1328 lines
69 KiB
HTML

<!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.14 -->
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',false,false,'search.php','Search');
});
/* @license-end */</script>
<div id="main-nav"></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_1RoutingEvent.html">RoutingEvent</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="classKite_1_1RoutingEvent-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">RoutingEvent Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>Atomic Placement Request for a <a class="el" href="classKite_1_1TrackSegment.html" title="Derived Katabatic::AutoSegment for the router. ">TrackSegment</a>.
<a href="classKite_1_1RoutingEvent.html#details">More...</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent_1_1Key.html">Key</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classKite_1_1RoutingEvent.html" title="Atomic Placement Request for a TrackSegment. ">RoutingEvent</a> cached key for maps. <a href="classKite_1_1RoutingEvent_1_1Key.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:a46c8a310cf4c094f8c80e1cb8dc1f911"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#a46c8a310cf4c094f8c80e1cb8dc1f911">Mode</a> { <br />
&#160;&#160;<a class="el" href="classKite_1_1RoutingEvent.html#a46c8a310cf4c094f8c80e1cb8dc1f911a3980b02882c46c9bd4caf15040b85d1a">Negociate</a> =1,
<br />
&#160;&#160;<a class="el" href="classKite_1_1RoutingEvent.html#a46c8a310cf4c094f8c80e1cb8dc1f911a5afe185b48d7acf013dd5ccadc5b2414">Pack</a> =2,
<br />
&#160;&#160;<a class="el" href="classKite_1_1RoutingEvent.html#a46c8a310cf4c094f8c80e1cb8dc1f911a27b403019a93f9f127cf64a0688a8288">Repair</a> =3
<br />
}</td></tr>
<tr class="separator:a46c8a310cf4c094f8c80e1cb8dc1f911"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><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:ad4469c7fdb58a5f0bda8755302e37021"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classKite_1_1RoutingEvent.html">RoutingEvent</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#ad4469c7fdb58a5f0bda8755302e37021">clone</a> () const</td></tr>
<tr class="separator:ad4469c7fdb58a5f0bda8755302e37021"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3a80b6032f86a56bec74609034b3246f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#a3a80b6032f86a56bec74609034b3246f">destroy</a> ()</td></tr>
<tr class="separator:a3a80b6032f86a56bec74609034b3246f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a213956f734f660863e55f8f398cf932a"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#a213956f734f660863e55f8f398cf932a">isCloned</a> () const</td></tr>
<tr class="separator:a213956f734f660863e55f8f398cf932a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5bc2a781be2586924afce4e4a4ea6697"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#a5bc2a781be2586924afce4e4a4ea6697">isValid</a> () const</td></tr>
<tr class="separator:a5bc2a781be2586924afce4e4a4ea6697"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af8b3ab994396ccd821f529c5c02760a5"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#af8b3ab994396ccd821f529c5c02760a5">isUnimplemented</a> () const</td></tr>
<tr class="separator:af8b3ab994396ccd821f529c5c02760a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a83943e04f0ee0a5a38208278b97fc780"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#a83943e04f0ee0a5a38208278b97fc780">isProcessed</a> () const</td></tr>
<tr class="separator:a83943e04f0ee0a5a38208278b97fc780"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a50607443b762961229119228be30c5ad"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#a50607443b762961229119228be30c5ad">isDisabled</a> () const</td></tr>
<tr class="separator:a50607443b762961229119228be30c5ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6e38564fbae008179d865f844acba59a"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#a6e38564fbae008179d865f844acba59a">isForcedToHint</a> () const</td></tr>
<tr class="separator:a6e38564fbae008179d865f844acba59a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac460ce43ff71dcdf11091403c4ba9060"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#ac460ce43ff71dcdf11091403c4ba9060">isRipedByLocal</a> () const</td></tr>
<tr class="separator:ac460ce43ff71dcdf11091403c4ba9060"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a150a8fe8d214e9de76153c1d20676a98"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#a150a8fe8d214e9de76153c1d20676a98">getMode</a> () const</td></tr>
<tr class="separator:a150a8fe8d214e9de76153c1d20676a98"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a85d665e52caee3e804921f52417b0074"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#a85d665e52caee3e804921f52417b0074">canMinimize</a> () const</td></tr>
<tr class="separator:a85d665e52caee3e804921f52417b0074"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a40ec2b23684a0e6e6d7ac9783a269037"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#a40ec2b23684a0e6e6d7ac9783a269037">getState</a> () const</td></tr>
<tr class="separator:a40ec2b23684a0e6e6d7ac9783a269037"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ade1e79e88bf4f4c173ffd083dd5470c9"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classKite_1_1RoutingEvent_1_1Key.html">Key</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#ade1e79e88bf4f4c173ffd083dd5470c9">getKey</a> () const</td></tr>
<tr class="separator:ade1e79e88bf4f4c173ffd083dd5470c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a506a4d1cef59fc35984c1c88e0c0f6df"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classKite_1_1TrackElement.html">TrackElement</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#a506a4d1cef59fc35984c1c88e0c0f6df">getSegment</a> () const</td></tr>
<tr class="separator:a506a4d1cef59fc35984c1c88e0c0f6df"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab7d24e13f7b2c62cedce1fda2da7b7f5"><td class="memItemLeft" align="right" valign="top">const vector&lt; <a class="el" href="classKite_1_1TrackElement.html">TrackElement</a> * &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#ab7d24e13f7b2c62cedce1fda2da7b7f5">getPerpandiculars</a> () const</td></tr>
<tr class="separator:ab7d24e13f7b2c62cedce1fda2da7b7f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab94e1b7e323c5344019d6ea545e3ea05"><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_1RoutingEvent.html#ab94e1b7e323c5344019d6ea545e3ea05">getAxisHint</a> () const</td></tr>
<tr class="separator:ab94e1b7e323c5344019d6ea545e3ea05"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad1c8d7db376d2e0b99eb1f54df29dc71"><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_1RoutingEvent.html#ad1c8d7db376d2e0b99eb1f54df29dc71">getAxisHistory</a> () const</td></tr>
<tr class="separator:ad1c8d7db376d2e0b99eb1f54df29dc71"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aef5716e4b434aae813b1067a908f8b1a"><td class="memItemLeft" align="right" valign="top">long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#aef5716e4b434aae813b1067a908f8b1a">getAxisWeight</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>) const</td></tr>
<tr class="separator:aef5716e4b434aae813b1067a908f8b1a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1bea8aed79a2ac4c726e49b93af3cd37"><td class="memItemLeft" align="right" valign="top">const <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Interval.html">Interval</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#a1bea8aed79a2ac4c726e49b93af3cd37">getConstraints</a> () const</td></tr>
<tr class="separator:a1bea8aed79a2ac4c726e49b93af3cd37"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7dc0bafe113b8ec0c143ae4644ac79d4"><td class="memItemLeft" align="right" valign="top">const <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Interval.html">Interval</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#a7dc0bafe113b8ec0c143ae4644ac79d4">getOptimal</a> () const</td></tr>
<tr class="separator:a7dc0bafe113b8ec0c143ae4644ac79d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a391dd4b2a826c1d4713ef24ba25f687a"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#a391dd4b2a826c1d4713ef24ba25f687a">getPriority</a> () const</td></tr>
<tr class="separator:a391dd4b2a826c1d4713ef24ba25f687a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acd1128e75a441b654e6d881c495db4f7"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#acd1128e75a441b654e6d881c495db4f7">getTracksNb</a> () const</td></tr>
<tr class="separator:acd1128e75a441b654e6d881c495db4f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a00f02910915e7deb857f023e5d584c08"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#a00f02910915e7deb857f023e5d584c08">getInsertState</a> () const</td></tr>
<tr class="separator:a00f02910915e7deb857f023e5d584c08"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aebcd2884d8fa70256b0041b29e14404d"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#aebcd2884d8fa70256b0041b29e14404d">getEventLevel</a> () const</td></tr>
<tr class="separator:aebcd2884d8fa70256b0041b29e14404d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5bd93abe1416952ace15a98dbeeed124"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#a5bd93abe1416952ace15a98dbeeed124">revalidate</a> ()</td></tr>
<tr class="separator:a5bd93abe1416952ace15a98dbeeed124"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a14468bece068cbc5221f057226ee8955"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#a14468bece068cbc5221f057226ee8955">updateKey</a> ()</td></tr>
<tr class="separator:a14468bece068cbc5221f057226ee8955"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6add4f520081c698421481bf8fe0ad1f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#a6add4f520081c698421481bf8fe0ad1f">process</a> (<a class="el" href="classKite_1_1RoutingEventQueue.html">RoutingEventQueue</a> &amp;, <a class="el" href="classKite_1_1RoutingEventHistory.html">RoutingEventHistory</a> &amp;, <a class="el" href="classKite_1_1RoutingEventLoop.html">RoutingEventLoop</a> &amp;)</td></tr>
<tr class="separator:a6add4f520081c698421481bf8fe0ad1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae2eddb4497661b6319616a70c4acd165"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#ae2eddb4497661b6319616a70c4acd165">setSegment</a> (<a class="el" href="classKite_1_1TrackElement.html">TrackElement</a> *)</td></tr>
<tr class="separator:ae2eddb4497661b6319616a70c4acd165"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abf2d02f18f96183fc6e78f3e6dc8cbf6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classKite_1_1RoutingEvent.html">RoutingEvent</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#abf2d02f18f96183fc6e78f3e6dc8cbf6">reschedule</a> (<a class="el" href="classKite_1_1RoutingEventQueue.html">RoutingEventQueue</a> &amp;, unsigned int eventLevel)</td></tr>
<tr class="separator:abf2d02f18f96183fc6e78f3e6dc8cbf6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a85982827650655ef9d6e1206874ead69"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#a85982827650655ef9d6e1206874ead69">setMode</a> (unsigned int)</td></tr>
<tr class="separator:a85982827650655ef9d6e1206874ead69"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af7ce7f73feb28f3df8f3180632a2f731"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#af7ce7f73feb28f3df8f3180632a2f731">setState</a> (unsigned int)</td></tr>
<tr class="separator:af7ce7f73feb28f3df8f3180632a2f731"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a02a3f1f2801d4ebbbe676e062878faae"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#a02a3f1f2801d4ebbbe676e062878faae">setAxisHintFromParent</a> ()</td></tr>
<tr class="separator:a02a3f1f2801d4ebbbe676e062878faae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a86c4b1b3d406c12667188ad44ce366db"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#a86c4b1b3d406c12667188ad44ce366db">incInsertState</a> ()</td></tr>
<tr class="separator:a86c4b1b3d406c12667188ad44ce366db"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae35f271a106f6c6a6039e4a6f8bf4009"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#ae35f271a106f6c6a6039e4a6f8bf4009">resetInsertState</a> ()</td></tr>
<tr class="separator:ae35f271a106f6c6a6039e4a6f8bf4009"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a70a9ecd62b806eff001aa602132cc630"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#a70a9ecd62b806eff001aa602132cc630">setEventLevel</a> (unsigned int)</td></tr>
<tr class="separator:a70a9ecd62b806eff001aa602132cc630"><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:a110307ff26b264ea83f69aa1bab23626"><td class="memItemLeft" align="right" valign="top">static unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#a110307ff26b264ea83f69aa1bab23626">getStage</a> ()</td></tr>
<tr class="separator:a110307ff26b264ea83f69aa1bab23626"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a91c8bc1a6bdb1b15c3c084ebfd38af47"><td class="memItemLeft" align="right" valign="top">static size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#a91c8bc1a6bdb1b15c3c084ebfd38af47">getAllocateds</a> ()</td></tr>
<tr class="separator:a91c8bc1a6bdb1b15c3c084ebfd38af47"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0a3993330692b7eb816e9c776d161ad1"><td class="memItemLeft" align="right" valign="top">static size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#a0a3993330692b7eb816e9c776d161ad1">getProcesseds</a> ()</td></tr>
<tr class="separator:a0a3993330692b7eb816e9c776d161ad1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6cf10bb4e4488948e4c616c55a8e6514"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#a6cf10bb4e4488948e4c616c55a8e6514">resetProcesseds</a> ()</td></tr>
<tr class="separator:a6cf10bb4e4488948e4c616c55a8e6514"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7300c33d439e453796b170eeaf4bf04d"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#a7300c33d439e453796b170eeaf4bf04d">setStage</a> (unsigned int)</td></tr>
<tr class="separator:a7300c33d439e453796b170eeaf4bf04d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a131ef83c7a57a64aed4f698c0433dffa"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classKite_1_1RoutingEvent.html">RoutingEvent</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKite_1_1RoutingEvent.html#a131ef83c7a57a64aed4f698c0433dffa">create</a> (<a class="el" href="classKite_1_1TrackElement.html">TrackElement</a> *, unsigned int mode=<a class="el" href="classKite_1_1RoutingEvent.html#a46c8a310cf4c094f8c80e1cb8dc1f911a3980b02882c46c9bd4caf15040b85d1a">Negociate</a>)</td></tr>
<tr class="separator:a131ef83c7a57a64aed4f698c0433dffa"><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>Atomic Placement Request for a <a class="el" href="classKite_1_1TrackSegment.html" title="Derived Katabatic::AutoSegment for the router. ">TrackSegment</a>. </p>
<p><span class="red">The trackFrees attribute has to be reviewed not sure it's still useful.</span></p>
<p>Cached key for stable sorting, see <a class="el" href="classKite_1_1RoutingEvent_1_1Key.html" title="RoutingEvent cached key for maps. ">RoutingEvent::Key</a>. </p>
</div><h2 class="groupheader">Member Enumeration Documentation</h2>
<a id="a46c8a310cf4c094f8c80e1cb8dc1f911"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a46c8a310cf4c094f8c80e1cb8dc1f911">&#9670;&nbsp;</a></span>Mode</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="classKite_1_1RoutingEvent.html#a46c8a310cf4c094f8c80e1cb8dc1f911">Mode</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>The working mode of the router, affect how events are to be handled. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a46c8a310cf4c094f8c80e1cb8dc1f911a3980b02882c46c9bd4caf15040b85d1a"></a>Negociate&#160;</td><td class="fielddoc"><p>This is the normal mode of operation, topological modifications and ripup are enableds. </p>
</td></tr>
<tr><td class="fieldname"><a id="a46c8a310cf4c094f8c80e1cb8dc1f911a5afe185b48d7acf013dd5ccadc5b2414"></a>Pack&#160;</td><td class="fielddoc"><p>First post-processing step. For each segment, tries to find a more compact position for a segment, but without riping any others. </p>
</td></tr>
<tr><td class="fieldname"><a id="a46c8a310cf4c094f8c80e1cb8dc1f911a27b403019a93f9f127cf64a0688a8288"></a>Repair&#160;</td><td class="fielddoc"><p>Second post-processing step, try to find a suitable location for a segment more aggressively. </p>
</td></tr>
</table>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a110307ff26b264ea83f69aa1bab23626"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a110307ff26b264ea83f69aa1bab23626">&#9670;&nbsp;</a></span>getStage()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">unsigned int getStage </td>
<td>(</td>
<td class="paramname"></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">
<p><b>Returns:</b> The stage the router is in (see <a class="el" href="classKite_1_1RoutingEvent.html#a46c8a310cf4c094f8c80e1cb8dc1f911">RoutingEvent::Mode</a>). </p>
<p class="reference">Referenced by <a class="el" href="classKite_1_1SegmentAction.html#a324f17f0f5a09b76344eb2e003695d74">SegmentAction::doAction()</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_1RoutingEvent.html#a5bd93abe1416952ace15a98dbeeed124">RoutingEvent::revalidate()</a>, <a class="el" href="classKite_1_1SegmentFsm.html#a2a8eadaaf3ed213914e7b4a81cae6e6a">SegmentFsm::SegmentFsm()</a>, and <a class="el" href="classKite_1_1RoutingEvent.html#a02a3f1f2801d4ebbbe676e062878faae">RoutingEvent::setAxisHintFromParent()</a>.</p>
</div>
</div>
<a id="a91c8bc1a6bdb1b15c3c084ebfd38af47"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a91c8bc1a6bdb1b15c3c084ebfd38af47">&#9670;&nbsp;</a></span>getAllocateds()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">size_t getAllocateds </td>
<td>(</td>
<td class="paramname"></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">
<p><b>Returns:</b> The number of <a class="el" href="classKite_1_1RoutingEvent.html" title="Atomic Placement Request for a TrackSegment. ">RoutingEvent</a> currently allocateds. </p>
</div>
</div>
<a id="a0a3993330692b7eb816e9c776d161ad1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0a3993330692b7eb816e9c776d161ad1">&#9670;&nbsp;</a></span>getProcesseds()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">size_t getProcesseds </td>
<td>(</td>
<td class="paramname"></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">
<p><b>Returns:</b> The number of <a class="el" href="classKite_1_1RoutingEvent.html" title="Atomic Placement Request for a TrackSegment. ">RoutingEvent</a> that have been processeds since the last call to <a class="el" href="classKite_1_1RoutingEvent.html#a6cf10bb4e4488948e4c616c55a8e6514">RoutingEvent::resetProcesseds()</a>. </p>
<p class="reference">Referenced by <a class="el" href="classKite_1_1NegociateWindow.html#a8d3dfaa30cedabd6b64977827ac989d8">NegociateWindow::printStatistics()</a>, <a class="el" href="classKite_1_1RoutingEvent.html#a6add4f520081c698421481bf8fe0ad1f">RoutingEvent::process()</a>, and <a class="el" href="classKite_1_1RoutingEventLoop.html#ad684b7c05480897bdbd86a5fb8363c72">RoutingEventLoop::update()</a>.</p>
</div>
</div>
<a id="a6cf10bb4e4488948e4c616c55a8e6514"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6cf10bb4e4488948e4c616c55a8e6514">&#9670;&nbsp;</a></span>resetProcesseds()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void resetProcesseds </td>
<td>(</td>
<td class="paramname"></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">
<p><b>Returns:</b> Reset the number of processeds events. </p>
<p class="reference">Referenced by <a class="el" href="classKite_1_1NegociateWindow.html#a61e848b73b597f54e2e83e13eb70ff83">NegociateWindow::run()</a>.</p>
</div>
</div>
<a id="a7300c33d439e453796b170eeaf4bf04d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7300c33d439e453796b170eeaf4bf04d">&#9670;&nbsp;</a></span>setStage()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">unsigned int setStage </td>
<td>(</td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>mode</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">
<p>Sets the router's stage (see <a class="el" href="classKite_1_1RoutingEvent.html#a46c8a310cf4c094f8c80e1cb8dc1f911">RoutingEvent::Mode</a>). </p>
</div>
</div>
<a id="a131ef83c7a57a64aed4f698c0433dffa"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a131ef83c7a57a64aed4f698c0433dffa">&#9670;&nbsp;</a></span>create()</h2>
<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_1RoutingEvent.html">RoutingEvent</a> * create </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classKite_1_1TrackElement.html">TrackElement</a> *&#160;</td>
<td class="paramname"><em>element</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>mode</em> = <code><a class="el" href="classKite_1_1RoutingEvent.html#a46c8a310cf4c094f8c80e1cb8dc1f911a3980b02882c46c9bd4caf15040b85d1a">Negociate</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">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">element</td><td>The element for which to create the event. </td></tr>
<tr><td class="paramname">mode</td><td>The mode into which this event will be valid.</td></tr>
</table>
</dd>
</dl>
<p><a class="el" href="classKite_1_1RoutingEvent.html" title="Atomic Placement Request for a TrackSegment. ">RoutingEvent</a> constructor. </p>
<p class="reference">Referenced by <a class="el" href="classKite_1_1RoutingEventQueue.html#af0813b67c9fc72d960f7e512e9403d57">RoutingEventQueue::add()</a>, and <a class="el" href="classKite_1_1RoutingEventQueue.html#a7f5a051812b2925dc3c1cca8b2011237">RoutingEventQueue::load()</a>.</p>
</div>
</div>
<a id="ad4469c7fdb58a5f0bda8755302e37021"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad4469c7fdb58a5f0bda8755302e37021">&#9670;&nbsp;</a></span>clone()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classKite_1_1RoutingEvent.html">RoutingEvent</a> * clone </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>A clone of the event.</dd></dl>
<p>Cloning an event is slightly different from copying it (which is forbidden). There can be multiple events for one <code>element</code> but only one must be active at a time. This is a cheap way of implementing the rescheduling mechanism. The original event remains the active one, but it's cloned flag is raised. The cloned event is created inactive and with a null <em>eventLevel</em>. </p>
<p class="reference">Referenced by <a class="el" href="classKite_1_1RoutingEvent.html#abf2d02f18f96183fc6e78f3e6dc8cbf6">RoutingEvent::reschedule()</a>.</p>
</div>
</div>
<a id="a3a80b6032f86a56bec74609034b3246f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3a80b6032f86a56bec74609034b3246f">&#9670;&nbsp;</a></span>destroy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void destroy </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>The destructor. </p>
</div>
</div>
<a id="a213956f734f660863e55f8f398cf932a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a213956f734f660863e55f8f398cf932a">&#9670;&nbsp;</a></span>isCloned()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool isCloned </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 this event has been cloned at least once. </p>
</div>
</div>
<a id="a5bc2a781be2586924afce4e4a4ea6697"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5bc2a781be2586924afce4e4a4ea6697">&#9670;&nbsp;</a></span>isValid()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool isValid </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 cached informations from the <em>element</em> are valid (i.e. the element has not been changed). </p>
</div>
</div>
<a id="af8b3ab994396ccd821f529c5c02760a5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af8b3ab994396ccd821f529c5c02760a5">&#9670;&nbsp;</a></span>isUnimplemented()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool isUnimplemented </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p><b>Returns:</b> <b>true</b> if the event has tried to use an unimplemented feature. </p>
<p class="reference">Referenced by <a class="el" href="classKite_1_1Manipulator.html#acae2506c976194aef762d27900c97b02">Manipulator::canRipup()</a>, and <a class="el" href="classKite_1_1RoutingEvent.html#abf2d02f18f96183fc6e78f3e6dc8cbf6">RoutingEvent::reschedule()</a>.</p>
</div>
</div>
<a id="a83943e04f0ee0a5a38208278b97fc780"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a83943e04f0ee0a5a38208278b97fc780">&#9670;&nbsp;</a></span>isProcessed()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool isProcessed </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 event has been processed. </p>
<p class="reference">Referenced by <a class="el" href="classKite_1_1RoutingEvent.html#a6add4f520081c698421481bf8fe0ad1f">RoutingEvent::process()</a>, and <a class="el" href="classKite_1_1RoutingEvent.html#abf2d02f18f96183fc6e78f3e6dc8cbf6">RoutingEvent::reschedule()</a>.</p>
</div>
</div>
<a id="a50607443b762961229119228be30c5ad"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a50607443b762961229119228be30c5ad">&#9670;&nbsp;</a></span>isDisabled()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool isDisabled </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 event is <b>not</b> the active one. It should be discarted by the algorithm. </p>
<p class="reference">Referenced by <a class="el" href="classKite_1_1RoutingEvent.html#a6add4f520081c698421481bf8fe0ad1f">RoutingEvent::process()</a>.</p>
</div>
</div>
<a id="a6e38564fbae008179d865f844acba59a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6e38564fbae008179d865f844acba59a">&#9670;&nbsp;</a></span>isForcedToHint()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool isForcedToHint </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> the <em>element</em> must be placed exacltly on the given axis hint. </p>
</div>
</div>
<a id="ac460ce43ff71dcdf11091403c4ba9060"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac460ce43ff71dcdf11091403c4ba9060">&#9670;&nbsp;</a></span>isRipedByLocal()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool isRipedByLocal </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> the <em>element</em> (global) has been riped up to place a local one. </p>
</div>
</div>
<a id="a150a8fe8d214e9de76153c1d20676a98"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a150a8fe8d214e9de76153c1d20676a98">&#9670;&nbsp;</a></span>getMode()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">unsigned int getMode </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 mode the event must be taken into account to. </p>
</div>
</div>
<a id="a85d665e52caee3e804921f52417b0074"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a85d665e52caee3e804921f52417b0074">&#9670;&nbsp;</a></span>canMinimize()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool canMinimize </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> the <em>element</em> could still be minimized. </p>
<p class="reference">Referenced by <a class="el" href="classKite_1_1Manipulator.html#aa61f08642d981761687635be108b9837">Manipulator::minimize()</a>.</p>
</div>
</div>
<a id="a40ec2b23684a0e6e6d7ac9783a269037"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a40ec2b23684a0e6e6d7ac9783a269037">&#9670;&nbsp;</a></span>getState()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">unsigned int getState </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p><b>Returns:</b> the mode the router is currently in. </p>
<p class="reference">Referenced by <a class="el" href="classKite_1_1RoutingEvent.html#af8b3ab994396ccd821f529c5c02760a5">RoutingEvent::isUnimplemented()</a>.</p>
</div>
</div>
<a id="ade1e79e88bf4f4c173ffd083dd5470c9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ade1e79e88bf4f4c173ffd083dd5470c9">&#9670;&nbsp;</a></span>getKey()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="classKite_1_1RoutingEvent_1_1Key.html">Key</a> &amp; getKey </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 <em>key</em> to use in map &amp; queue for this event. </p>
</div>
</div>
<a id="a506a4d1cef59fc35984c1c88e0c0f6df"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a506a4d1cef59fc35984c1c88e0c0f6df">&#9670;&nbsp;</a></span>getSegment()</h2>
<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> * getSegment </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 associated segment. </p>
<p class="reference">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_1SegmentFsm.html#abbcf429498049478d4d8ab94cdb4a022">SegmentFsm::doActions()</a>, <a class="el" href="classKite_1_1SegmentFsm.html#a7140b507da2cab137d968a037bed19df">SegmentFsm::insertInTrack()</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_1SegmentFsm.html#a623d68f599c0de60cdd36af3f183e6f1">SegmentFsm::slackenTopology()</a>, and <a class="el" href="classKite_1_1SegmentFsm.html#ab8ae818baad1d0a274a7e8c308ca3f92">SegmentFsm::solveFullBlockages()</a>.</p>
</div>
</div>
<a id="ab7d24e13f7b2c62cedce1fda2da7b7f5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab7d24e13f7b2c62cedce1fda2da7b7f5">&#9670;&nbsp;</a></span>getPerpandiculars()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const vector&lt; <a class="el" href="classKite_1_1TrackElement.html">TrackElement</a> * &gt; &amp; getPerpandiculars </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> A vector of cached perpandiculars to the associated segment. </p>
<p class="reference">Referenced by <a class="el" href="classKite_1_1Manipulator.html#aa61f08642d981761687635be108b9837">Manipulator::minimize()</a>, <a class="el" href="classKite_1_1Manipulator.html#a9721ea909a9b11297dea855e1ba82a55">Manipulator::repackPerpandiculars()</a>, and <a class="el" href="classKite_1_1Manipulator.html#a147c24aa53f561c10d5d24b82b03448a">Manipulator::ripupPerpandiculars()</a>.</p>
</div>
</div>
<a id="ab94e1b7e323c5344019d6ea545e3ea05"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab94e1b7e323c5344019d6ea545e3ea05">&#9670;&nbsp;</a></span>getAxisHint()</h2>
<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> getAxisHint </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 preferred position for the segment axis. </p>
<p class="reference">Referenced by <a class="el" href="classKite_1_1RoutingEvent.html#aef5716e4b434aae813b1067a908f8b1a">RoutingEvent::getAxisWeight()</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>, and <a class="el" href="classKite_1_1SegmentFsm.html#a2a8eadaaf3ed213914e7b4a81cae6e6a">SegmentFsm::SegmentFsm()</a>.</p>
</div>
</div>
<a id="ad1c8d7db376d2e0b99eb1f54df29dc71"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad1c8d7db376d2e0b99eb1f54df29dc71">&#9670;&nbsp;</a></span>getAxisHistory()</h2>
<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> getAxisHistory </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 previous position of the segment axis (before it's current position). </p>
</div>
</div>
<a id="aef5716e4b434aae813b1067a908f8b1a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aef5716e4b434aae813b1067a908f8b1a">&#9670;&nbsp;</a></span>getAxisWeight()</h2>
<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> getAxisWeight </td>
<td>(</td>
<td class="paramtype"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a>&#160;</td>
<td class="paramname"><em>axis</em></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 distance between <code>axis</code> and the preferred position. </p>
<p class="reference">Referenced by <a class="el" href="classKite_1_1SegmentFsm.html#a2a8eadaaf3ed213914e7b4a81cae6e6a">SegmentFsm::SegmentFsm()</a>.</p>
</div>
</div>
<a id="a1bea8aed79a2ac4c726e49b93af3cd37"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1bea8aed79a2ac4c726e49b93af3cd37">&#9670;&nbsp;</a></span>getConstraints()</h2>
<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_1Interval.html">Interval</a> &amp; getConstraints </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 range of legal positions for the axis. </p>
<p class="reference">Referenced by <a class="el" href="classKite_1_1Manipulator.html#aa61f08642d981761687635be108b9837">Manipulator::minimize()</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 id="a7dc0bafe113b8ec0c143ae4644ac79d4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7dc0bafe113b8ec0c143ae4644ac79d4">&#9670;&nbsp;</a></span>getOptimal()</h2>
<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_1Interval.html">Interval</a> &amp; getOptimal </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 range of positions for the optimal axis (cached). </p>
<p class="reference">Referenced by <a class="el" href="classKite_1_1SegmentFsm.html#a2a8eadaaf3ed213914e7b4a81cae6e6a">SegmentFsm::SegmentFsm()</a>.</p>
</div>
</div>
<a id="a391dd4b2a826c1d4713ef24ba25f687a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a391dd4b2a826c1d4713ef24ba25f687a">&#9670;&nbsp;</a></span>getPriority()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">unsigned int getPriority </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 priority of the event, it quantify the degree of freedom of the segment. Currently it's computed from the length of the segment and it's slack: </p><p class="formulaDsp">
<img class="formulaDsp" alt="\[ priority = (slack(segment)+1.0) \times (length(segment)+1.0) \]" src="form_0.png"/>
</p>
<p> A high priority means that the segment will be harder to place thus it will be scheduled first. With this function, longer segments will be placed first. </p>
<p class="reference">Referenced by <a class="el" href="classKite_1_1RoutingEvent.html#a6add4f520081c698421481bf8fe0ad1f">RoutingEvent::process()</a>.</p>
</div>
</div>
<a id="acd1128e75a441b654e6d881c495db4f7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acd1128e75a441b654e6d881c495db4f7">&#9670;&nbsp;</a></span>getTracksNb()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">unsigned int getTracksNb </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 number of tracks avalaibles for the segment to be placed. </p>
<p class="reference">Referenced by <a class="el" href="classKite_1_1SegmentFsm.html#a2a8eadaaf3ed213914e7b4a81cae6e6a">SegmentFsm::SegmentFsm()</a>.</p>
</div>
</div>
<a id="a00f02910915e7deb857f023e5d584c08"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a00f02910915e7deb857f023e5d584c08">&#9670;&nbsp;</a></span>getInsertState()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">unsigned int getInsertState </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">
<dl class="section return"><dt>Returns</dt><dd>The kind of track insertion that will be intended. It's a counter whose values have the following meaning:<ul>
<li><b>1</b> : normal insert.</li>
<li><b>2</b> : shrink the segment to it's minimum before inserting.</li>
<li><b>3</b> : attempt to ripup conflicting others before inserting. </li>
</ul>
</dd></dl>
<p class="reference">Referenced by <a class="el" href="classKite_1_1SegmentFsm.html#a7140b507da2cab137d968a037bed19df">SegmentFsm::insertInTrack()</a>.</p>
</div>
</div>
<a id="aebcd2884d8fa70256b0041b29e14404d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aebcd2884d8fa70256b0041b29e14404d">&#9670;&nbsp;</a></span>getEventLevel()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">unsigned int getEventLevel </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 event level of the event, used to tweak the order inside the event queue. It differs from the priority in the sense that it isn't a topologicaly based value, but manipulated by the algorithm. </p>
<p class="reference">Referenced by <a class="el" href="classKite_1_1RoutingEvent.html#a6add4f520081c698421481bf8fe0ad1f">RoutingEvent::process()</a>.</p>
</div>
</div>
<a id="a5bd93abe1416952ace15a98dbeeed124"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5bd93abe1416952ace15a98dbeeed124">&#9670;&nbsp;</a></span>revalidate()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void revalidate </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Perform an event revalidation. </p>
<p class="reference">Referenced by <a class="el" href="classKite_1_1SegmentFsm.html#a2a8eadaaf3ed213914e7b4a81cae6e6a">SegmentFsm::SegmentFsm()</a>, and <a class="el" href="classKite_1_1RoutingEvent.html#a14468bece068cbc5221f057226ee8955">RoutingEvent::updateKey()</a>.</p>
</div>
</div>
<a id="a14468bece068cbc5221f057226ee8955"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a14468bece068cbc5221f057226ee8955">&#9670;&nbsp;</a></span>updateKey()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void updateKey </td>
<td>(</td>
<td class="paramname"></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>Update the key with the new values from the event, the key <em>must</em> not be inserted in the queue when this method is called. </p>
</div>
</div>
<a id="a6add4f520081c698421481bf8fe0ad1f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6add4f520081c698421481bf8fe0ad1f">&#9670;&nbsp;</a></span>process()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void process </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classKite_1_1RoutingEventQueue.html">RoutingEventQueue</a> &amp;&#160;</td>
<td class="paramname"><em>queue</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classKite_1_1RoutingEventHistory.html">RoutingEventHistory</a> &amp;&#160;</td>
<td class="paramname"><em>history</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classKite_1_1RoutingEventLoop.html">RoutingEventLoop</a> &amp;&#160;</td>
<td class="paramname"><em>loop</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">queue</td><td>The main event queue. </td></tr>
<tr><td class="paramname">history</td><td>The event's history list. </td></tr>
<tr><td class="paramname">loop</td><td>The loop detector.</td></tr>
</table>
</dd>
</dl>
<p>Process the event, that is:</p><ul>
<li>First, check if there is no looping, if any, do not process the event but dicard it (marked as unimplemented).</li>
<li>Second, attempt to place the associated segment. Pass it to the relevant function, according to the router's mode (<code>_processNegociate()</code>, <code>processPack()</code> or <code>_processRepair()</code> ). Once processed, the event is added to both <code>history</code> (for the record) and <code>loop</code> to check if we are not looping. </li>
</ul>
</div>
</div>
<a id="ae2eddb4497661b6319616a70c4acd165"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae2eddb4497661b6319616a70c4acd165">&#9670;&nbsp;</a></span>setSegment()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void setSegment </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classKite_1_1TrackElement.html">TrackElement</a> *&#160;</td>
<td class="paramname"><em>element</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Change the associated <code>segment</code>. <span class="red">Used only by <a class="el" href="classKite_1_1TrackSegment.html#acc245ce084989d1c34816d0e61b9d510">TrackSegment::swapTrack()</a>.</span> </p>
<p class="reference">Referenced by <a class="el" href="classKite_1_1TrackSegment.html#acc245ce084989d1c34816d0e61b9d510">TrackSegment::swapTrack()</a>.</p>
</div>
</div>
<a id="abf2d02f18f96183fc6e78f3e6dc8cbf6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abf2d02f18f96183fc6e78f3e6dc8cbf6">&#9670;&nbsp;</a></span>reschedule()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classKite_1_1RoutingEvent.html">RoutingEvent</a> * reschedule </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classKite_1_1RoutingEventQueue.html">RoutingEventQueue</a> &amp;&#160;</td>
<td class="paramname"><em>queue</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>eventLevel</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>The newly reinserted event. Depending on the cases it could be itself.</dd></dl>
<p>Insert or reinsert an event in the scheduler. The <code>eventLevel</code> parameter only allows to increase the level (if it is less than the current level of the event, it will be ignored).</p>
<p><b>Cloning Management.</b> As an event could be cloned, if we try to re-insert a disabled original, we must first lookup the currently cloned active event. This is done through the associated <code>segment</code> which must always be associated with the active event (if any).</p>
<p><b>Unimplemented Protection.</b> If the unimplemented flag is set the reschedule is cancelled (<code>NULL</code> is returned).</p>
<p><b>Unprocessed Event.</b> The event is still in queue, waiting to be processed, then just repush it in the queue with it's new level.</p>
<p><b>Processed Event.</b> Clone the already processed one, activate it and push it on the queue.</p>
<p><b>Router's Mode.</b> The mode is also updated. </p>
<p class="reference">Referenced by <a class="el" href="classKite_1_1SegmentAction.html#a324f17f0f5a09b76344eb2e003695d74">SegmentAction::doAction()</a>, and <a class="el" href="classKite_1_1RoutingEvent.html#abf2d02f18f96183fc6e78f3e6dc8cbf6">RoutingEvent::reschedule()</a>.</p>
</div>
</div>
<a id="a85982827650655ef9d6e1206874ead69"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a85982827650655ef9d6e1206874ead69">&#9670;&nbsp;</a></span>setMode()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void setMode </td>
<td>(</td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>mode</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the mode in which the event must be processed (see <a class="el" href="classKite_1_1RoutingEvent.html#a46c8a310cf4c094f8c80e1cb8dc1f911">RoutingEvent::Mode</a>). </p>
<p class="reference">Referenced by <a class="el" href="classKite_1_1SegmentAction.html#a324f17f0f5a09b76344eb2e003695d74">SegmentAction::doAction()</a>, and <a class="el" href="classKite_1_1RoutingEvent.html#abf2d02f18f96183fc6e78f3e6dc8cbf6">RoutingEvent::reschedule()</a>.</p>
</div>
</div>
<a id="af7ce7f73feb28f3df8f3180632a2f731"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af7ce7f73feb28f3df8f3180632a2f731">&#9670;&nbsp;</a></span>setState()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void setState </td>
<td>(</td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>state</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Proxy mutator for <a class="el" href="classKite_1_1DataNegociate.html#aafc8cd0dcd351625a12904bed7d5a7d1">DataNegociate::setState()</a>. </p>
<p class="reference">Referenced by <a class="el" href="classKite_1_1RoutingEvent.html#a6add4f520081c698421481bf8fe0ad1f">RoutingEvent::process()</a>.</p>
</div>
</div>
<a id="a02a3f1f2801d4ebbbe676e062878faae"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a02a3f1f2801d4ebbbe676e062878faae">&#9670;&nbsp;</a></span>setAxisHintFromParent()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void setAxisHintFromParent </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets the axis hint from it's parent segment. The parentage is found through the <a class="el" href="classKite_1_1TrackSegment.html" title="Derived Katabatic::AutoSegment for the router. ">TrackSegment</a> parentage. </p>
<p class="reference">Referenced by <a class="el" href="classKite_1_1RoutingEvent.html#a5bd93abe1416952ace15a98dbeeed124">RoutingEvent::revalidate()</a>.</p>
</div>
</div>
<a id="a86c4b1b3d406c12667188ad44ce366db"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a86c4b1b3d406c12667188ad44ce366db">&#9670;&nbsp;</a></span>incInsertState()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void incInsertState </td>
<td>(</td>
<td class="paramname"></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>Increment the insertion state.</p>
<p><b>See also:</b>&#160; <a class="el" href="classKite_1_1RoutingEvent.html#a00f02910915e7deb857f023e5d584c08">RoutingEvent::getInsertState()</a>. </p>
<p class="reference">Referenced by <a class="el" href="classKite_1_1SegmentFsm.html#a7140b507da2cab137d968a037bed19df">SegmentFsm::insertInTrack()</a>.</p>
</div>
</div>
<a id="ae35f271a106f6c6a6039e4a6f8bf4009"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae35f271a106f6c6a6039e4a6f8bf4009">&#9670;&nbsp;</a></span>resetInsertState()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void resetInsertState </td>
<td>(</td>
<td class="paramname"></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 the insertion state.</p>
<p><b>See also:</b>&#160; <a class="el" href="classKite_1_1RoutingEvent.html#a00f02910915e7deb857f023e5d584c08">RoutingEvent::getInsertState()</a>. </p>
<p class="reference">Referenced by <a class="el" href="classKite_1_1SegmentFsm.html#a623d68f599c0de60cdd36af3f183e6f1">SegmentFsm::slackenTopology()</a>.</p>
</div>
</div>
<a id="a70a9ecd62b806eff001aa602132cc630"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a70a9ecd62b806eff001aa602132cc630">&#9670;&nbsp;</a></span>setEventLevel()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void setEventLevel </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">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the event level (user-controlled re-ordering). </p>
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="RoutingEvent_8h_source.html">RoutingEvent.h</a></li>
<li>RoutingEvent.cpp</li>
<li>RoutingEvent.dox</li>
</ul>
</div><!-- contents -->
<br>
<hr>
<table class="footer1">
<tr>
<td class="LFooter"><small>Generated by doxygen 1.8.14 on Mon Feb 3 2020</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>