1424 lines
87 KiB
HTML
1424 lines
87 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>Katabatic Documentation</title>
|
|
<script type="text/javascript" src="jquery.js"></script>
|
|
<script type="text/javascript" src="dynsections.js"></script>
|
|
<link href="SoC.css" rel="stylesheet" type="text/css">
|
|
<link href="tabs.css" rel="stylesheet" type="text/css">
|
|
</head>
|
|
<h1 id="pagetop" class="header">Katabatic - Routing Toolbox</h1>
|
|
<!--
|
|
<center class="header">
|
|
<table class="header">
|
|
<tr>
|
|
<td><a href="customSummary.html">Summary</a></td>
|
|
<td><a href="namespaces.html">Namespaces</a></td>
|
|
<td><a href="customHierarchy.html">Class Hierarchy</a></td>
|
|
<td><a href="annotated.html">Classes</a></td>
|
|
<td><a href="functions.html">Member Index</a></td>
|
|
</tr>
|
|
</table>
|
|
</center>
|
|
-->
|
|
<br>
|
|
<body onload="javascript:toggleLevel(1)">
|
|
<!-- Generated by Doxygen 1.8.13 -->
|
|
<script type="text/javascript" src="menudata.js"></script>
|
|
<script type="text/javascript" src="menu.js"></script>
|
|
<script type="text/javascript">
|
|
$(function() {
|
|
initMenu('',false,false,'search.php','Search');
|
|
});
|
|
</script>
|
|
<div id="main-nav"></div>
|
|
<div id="nav-path" class="navpath">
|
|
<ul>
|
|
<li class="navelem"><a class="el" href="namespaceKatabatic.html">Katabatic</a></li><li class="navelem"><a class="el" href="classKatabatic_1_1KatabaticEngine.html">KatabaticEngine</a></li> </ul>
|
|
</div>
|
|
</div><!-- top -->
|
|
<div class="header">
|
|
<div class="summary">
|
|
<a href="classKatabatic_1_1KatabaticEngine-members.html">List of all members</a> |
|
|
<a href="#pub-types">Public Types</a> |
|
|
<a href="#pub-methods">Public Member Functions</a> |
|
|
<a href="#pub-static-methods">Static Public Member Functions</a> </div>
|
|
<div class="headertitle">
|
|
<div class="title">KatabaticEngine Class Reference</div> </div>
|
|
</div><!--header-->
|
|
<div class="contents">
|
|
|
|
<p>The <a class="el" href="namespaceKatabatic.html" title="The namespace dedicated to Katabatic. ">Katabatic</a> Tool.
|
|
<a href="classKatabatic_1_1KatabaticEngine.html#details">More...</a></p>
|
|
<div class="dynheader">
|
|
Inheritance diagram for KatabaticEngine:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><img src="classKatabatic_1_1KatabaticEngine__inherit__graph.png" border="0" usemap="#KatabaticEngine_inherit__map" alt="Inheritance graph"/></div>
|
|
<map name="KatabaticEngine_inherit__map" id="KatabaticEngine_inherit__map">
|
|
<area shape="rect" id="node2" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/crlcore/doc/crlcore/html/crlcore.tag:../crlcore/" href="../crlcore/classCRL_1_1ToolEngine.html" title="ToolEngine" alt="" coords="21,80,107,107"/>
|
|
<area shape="rect" id="node3" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1DBo.html" title="DBo" alt="" coords="40,5,88,32"/>
|
|
</map>
|
|
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
|
|
<table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
|
|
Public Types</h2></td></tr>
|
|
<tr class="memitem:a92ed88f9aecd2f195089c4029fa8bcc7"><td class="memItemLeft" align="right" valign="top">typedef set< <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> *, NetCompareByName > </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#a92ed88f9aecd2f195089c4029fa8bcc7">NetSet</a></td></tr>
|
|
<tr class="separator:a92ed88f9aecd2f195089c4029fa8bcc7"><td class="memSeparator" colspan="2"> </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:a83a7793270669d2669222eac2caa7f93"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#a83a7793270669d2669222eac2caa7f93">isGMetal</a> (const <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Layer.html">Layer</a> *) const</td></tr>
|
|
<tr class="separator:a83a7793270669d2669222eac2caa7f93"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ab6b7bc2b47ead460ac00a531451dc9cf"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#ab6b7bc2b47ead460ac00a531451dc9cf">isChip</a> () const</td></tr>
|
|
<tr class="separator:ab6b7bc2b47ead460ac00a531451dc9cf"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a0141bff96a4778a806d4eba5d256c32a"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#a0141bff96a4778a806d4eba5d256c32a">isInDemoMode</a> () const</td></tr>
|
|
<tr class="separator:a0141bff96a4778a806d4eba5d256c32a"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a9dec164d53fdee77f0f008133ecbd97f"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#a9dec164d53fdee77f0f008133ecbd97f">doWarnOnGCellOverload</a> () const</td></tr>
|
|
<tr class="separator:a9dec164d53fdee77f0f008133ecbd97f"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a6bb0ac3c0ec9720a3519d43491939f97"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#a6bb0ac3c0ec9720a3519d43491939f97">doDestroyBaseContact</a> () const</td></tr>
|
|
<tr class="separator:a6bb0ac3c0ec9720a3519d43491939f97"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a54d58d645317d43371f6b0bec1815e6b"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#a54d58d645317d43371f6b0bec1815e6b">doDestroyBaseSegment</a> () const</td></tr>
|
|
<tr class="separator:a54d58d645317d43371f6b0bec1815e6b"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a867e6dbfea5e5895a01ef71c66398b26"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#a867e6dbfea5e5895a01ef71c66398b26">doDestroyTool</a> () const</td></tr>
|
|
<tr class="separator:a867e6dbfea5e5895a01ef71c66398b26"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a9e76ae5cee9320b65251387419c9432b"><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_1Name.html">Name</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#a9e76ae5cee9320b65251387419c9432b">getName</a> () const</td></tr>
|
|
<tr class="separator:a9e76ae5cee9320b65251387419c9432b"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a878e8b694aa243a767c2f232799ec9b3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceKatabatic.html#ab9e409db5feff0bdbc85e90e2a029cda">EngineState</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#a878e8b694aa243a767c2f232799ec9b3">getState</a> () const</td></tr>
|
|
<tr class="separator:a878e8b694aa243a767c2f232799ec9b3"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a7132cd3f405dc24b3897b4396c8ecc92"><td class="memItemLeft" align="right" valign="top">unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#a7132cd3f405dc24b3897b4396c8ecc92">getFlags</a> (unsigned int mask) const</td></tr>
|
|
<tr class="separator:a7132cd3f405dc24b3897b4396c8ecc92"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:adccd6ceec2c68234d3a824ad7ae3954e"><td class="memItemLeft" align="right" valign="top">Configuration * </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#adccd6ceec2c68234d3a824ad7ae3954e">getKatabaticConfiguration</a> ()</td></tr>
|
|
<tr class="separator:adccd6ceec2c68234d3a824ad7ae3954e"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a9a7fbadfe526875680f698c76adfb128"><td class="memItemLeft" align="right" valign="top">virtual Configuration * </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#a9a7fbadfe526875680f698c76adfb128">getConfiguration</a> ()</td></tr>
|
|
<tr class="separator:a9a7fbadfe526875680f698c76adfb128"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a171ed6fac01ac5067d4f1b770cc419cf"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/crlcore/doc/crlcore/html/crlcore.tag:../crlcore/" href="../crlcore/classCRL_1_1RoutingGauge.html">RoutingGauge</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#a171ed6fac01ac5067d4f1b770cc419cf">getRoutingGauge</a> () const</td></tr>
|
|
<tr class="separator:a171ed6fac01ac5067d4f1b770cc419cf"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a0b7c308ac7fccc21dd0401c6ce70a586"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/crlcore/doc/crlcore/html/crlcore.tag:../crlcore/" href="../crlcore/classCRL_1_1RoutingLayerGauge.html">RoutingLayerGauge</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#a0b7c308ac7fccc21dd0401c6ce70a586">getLayerGauge</a> (size_t depth) const</td></tr>
|
|
<tr class="separator:a0b7c308ac7fccc21dd0401c6ce70a586"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:afa7ea850397e87889733ac959833b49f"><td class="memItemLeft" align="right" valign="top">const <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Layer.html">Layer</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#afa7ea850397e87889733ac959833b49f">getRoutingLayer</a> (size_t depth) const</td></tr>
|
|
<tr class="separator:afa7ea850397e87889733ac959833b49f"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a4c4549515aef37e81f2cc6537b931edc"><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_1Layer.html">Layer</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#a4c4549515aef37e81f2cc6537b931edc">getContactLayer</a> (size_t depth) const</td></tr>
|
|
<tr class="separator:a4c4549515aef37e81f2cc6537b931edc"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a9a56286f633fddd702d66563de457a4a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classKatabatic_1_1GCellGrid.html">GCellGrid</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#a9a56286f633fddd702d66563de457a4a">getGCellGrid</a> () const</td></tr>
|
|
<tr class="separator:a9a56286f633fddd702d66563de457a4a"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a8f661928f8f709552c8486d68ac33c55"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classKatabatic_1_1KatabaticEngine.html#a92ed88f9aecd2f195089c4029fa8bcc7">NetSet</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#a8f661928f8f709552c8486d68ac33c55">getRoutingNets</a> () const</td></tr>
|
|
<tr class="separator:a8f661928f8f709552c8486d68ac33c55"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a094b479155d3f30ec54e252c35dcffa3"><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> </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#a094b479155d3f30ec54e252c35dcffa3">getGlobalThreshold</a> () const</td></tr>
|
|
<tr class="separator:a094b479155d3f30ec54e252c35dcffa3"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a44d2c1fbd97dd09b102b461e906367a0"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#a44d2c1fbd97dd09b102b461e906367a0">getSaturateRatio</a> () const</td></tr>
|
|
<tr class="separator:a44d2c1fbd97dd09b102b461e906367a0"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a61977cc1fd981e7f1c6125189ed20509"><td class="memItemLeft" align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#a61977cc1fd981e7f1c6125189ed20509">getSaturateRp</a> () const</td></tr>
|
|
<tr class="separator:a61977cc1fd981e7f1c6125189ed20509"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ad9072cfa6215c92c9a9842270cf677c5"><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> </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#ad9072cfa6215c92c9a9842270cf677c5">getExtensionCap</a> () const</td></tr>
|
|
<tr class="separator:ad9072cfa6215c92c9a9842270cf677c5"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a423f5f2214c8b9fe73da9a86b6f6d9b9"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classKatabatic_1_1ChipTools.html">ChipTools</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#a423f5f2214c8b9fe73da9a86b6f6d9b9">getChipTools</a> () const</td></tr>
|
|
<tr class="separator:a423f5f2214c8b9fe73da9a86b6f6d9b9"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aecbe8bdcc61024a7539de3ea932c5e06"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#aecbe8bdcc61024a7539de3ea932c5e06">xmlWriteGCellGrid</a> (ostream &)</td></tr>
|
|
<tr class="separator:aecbe8bdcc61024a7539de3ea932c5e06"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a78394ac380a0fa462f268dcc2becc50e"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#a78394ac380a0fa462f268dcc2becc50e">xmlWriteGCellGrid</a> (const string &)</td></tr>
|
|
<tr class="separator:a78394ac380a0fa462f268dcc2becc50e"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a2391b9bfcb773398b9661b5ac0ef1a30"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#a2391b9bfcb773398b9661b5ac0ef1a30">setState</a> (<a class="el" href="namespaceKatabatic.html#ab9e409db5feff0bdbc85e90e2a029cda">EngineState</a> state)</td></tr>
|
|
<tr class="separator:a2391b9bfcb773398b9661b5ac0ef1a30"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aeb14f94914af58657a0dc2f50ec98df5"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#aeb14f94914af58657a0dc2f50ec98df5">setFlags</a> (unsigned int)</td></tr>
|
|
<tr class="separator:aeb14f94914af58657a0dc2f50ec98df5"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a1a6fac115cb81db48e3ac9ffa0721bb5"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#a1a6fac115cb81db48e3ac9ffa0721bb5">unsetFlags</a> (unsigned int)</td></tr>
|
|
<tr class="separator:a1a6fac115cb81db48e3ac9ffa0721bb5"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a1bd1e0104b73d4c558b0e121002796a6"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#a1bd1e0104b73d4c558b0e121002796a6">setGlobalThreshold</a> (<a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4fbfa3e8c89347af76c9628ea06c4146">DbU::Unit</a>)</td></tr>
|
|
<tr class="separator:a1bd1e0104b73d4c558b0e121002796a6"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ac2b780e06975ce8a0d6ca96f20cb971f"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#ac2b780e06975ce8a0d6ca96f20cb971f">setSaturateRatio</a> (float)</td></tr>
|
|
<tr class="separator:ac2b780e06975ce8a0d6ca96f20cb971f"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ade227e828b8c8fbfce478e353ca3ca59"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#ade227e828b8c8fbfce478e353ca3ca59">setSaturateRp</a> (size_t)</td></tr>
|
|
<tr class="separator:ade227e828b8c8fbfce478e353ca3ca59"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a2ea4b4fc379fb85a13890db451cbf93a"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#a2ea4b4fc379fb85a13890db451cbf93a">printMeasures</a> (const string &) const</td></tr>
|
|
<tr class="separator:a2ea4b4fc379fb85a13890db451cbf93a"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a1e9bb62be35c6a415a1950c72c1964ef"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#a1e9bb62be35c6a415a1950c72c1964ef">refresh</a> (unsigned int flags=<a class="el" href="namespaceKatabatic.html#a2af2ad6b6441614038caf59d04b3b217af314588109fcc5f5ee1c42e5fd4d0ed5">KbOpenSession</a>)</td></tr>
|
|
<tr class="separator:a1e9bb62be35c6a415a1950c72c1964ef"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a1b7d8ed09a198f7afd6e3ac911f6eb37"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#a1b7d8ed09a198f7afd6e3ac911f6eb37">createDetailedGrid</a> ()</td></tr>
|
|
<tr class="separator:a1b7d8ed09a198f7afd6e3ac911f6eb37"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aaba3b9450c85634131146fb507089f2d"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#aaba3b9450c85634131146fb507089f2d">makePowerRails</a> ()</td></tr>
|
|
<tr class="separator:aaba3b9450c85634131146fb507089f2d"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a583925cfe4bbadcc1c24fe619debce09"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#a583925cfe4bbadcc1c24fe619debce09">loadGlobalRouting</a> (unsigned int method)</td></tr>
|
|
<tr class="separator:a583925cfe4bbadcc1c24fe619debce09"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a145b36b18fc9149980c5d6bd4bd10e0d"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#a145b36b18fc9149980c5d6bd4bd10e0d">slackenBorder</a> (<a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Box.html">Box</a> bb, <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#af5277c670637bd5d910237e7afe01a91">Layer::Mask</a>, unsigned int flags)</td></tr>
|
|
<tr class="separator:a145b36b18fc9149980c5d6bd4bd10e0d"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ac40754d4a9bd0cf327b5fa088e993897"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#ac40754d4a9bd0cf327b5fa088e993897">slackenBlockIos</a> (<a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Instance.html">Instance</a> *core)</td></tr>
|
|
<tr class="separator:ac40754d4a9bd0cf327b5fa088e993897"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ac934a049003c9d5d2380f44ff393e458"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#ac934a049003c9d5d2380f44ff393e458">moveUpNetTrunk</a> (<a class="el" href="classKatabatic_1_1AutoSegment.html">AutoSegment</a> *, set< <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> *> &globalNets, <a class="el" href="classKatabatic_1_1GCell.html#aacb1c215b203bfba5729f135b3221d40">GCell::SetIndex</a> &invalidateds)</td></tr>
|
|
<tr class="separator:ac934a049003c9d5d2380f44ff393e458"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a77833ce938a430785ba869eedbc2300c"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#a77833ce938a430785ba869eedbc2300c">layerAssign</a> (unsigned int method)</td></tr>
|
|
<tr class="separator:a77833ce938a430785ba869eedbc2300c"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a6957a5830a4d6f1b2daf83a7d98df601"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#a6957a5830a4d6f1b2daf83a7d98df601">computeNetConstraints</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> *)</td></tr>
|
|
<tr class="separator:a6957a5830a4d6f1b2daf83a7d98df601"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ad6b9f7d94ee4a88f12c485e48d1e644a"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#ad6b9f7d94ee4a88f12c485e48d1e644a">toOptimals</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> *)</td></tr>
|
|
<tr class="separator:ad6b9f7d94ee4a88f12c485e48d1e644a"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a468eddb683c04cfeea1c5124a39e1f86"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#a468eddb683c04cfeea1c5124a39e1f86">finalizeLayout</a> ()</td></tr>
|
|
<tr class="separator:a468eddb683c04cfeea1c5124a39e1f86"><td class="memSeparator" colspan="2"> </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:ab877a64c314024602cfb04631ebfbfc4"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classKatabatic_1_1KatabaticEngine.html">KatabaticEngine</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#ab877a64c314024602cfb04631ebfbfc4">create</a> (<a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Cell.html">Cell</a> *)</td></tr>
|
|
<tr class="separator:ab877a64c314024602cfb04631ebfbfc4"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a802eee6265da8d536db52d412f8a4afd"><td class="memItemLeft" align="right" valign="top">static const <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Name.html">Name</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classKatabatic_1_1KatabaticEngine.html#a802eee6265da8d536db52d412f8a4afd">staticGetName</a> ()</td></tr>
|
|
<tr class="separator:a802eee6265da8d536db52d412f8a4afd"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table>
|
|
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
|
<div class="textblock"><p>The <a class="el" href="namespaceKatabatic.html" title="The namespace dedicated to Katabatic. ">Katabatic</a> Tool. </p>
|
|
<h1><a class="anchor" id="secEngineStates"></a>
|
|
States of KatabaticEngine</h1>
|
|
<p>During it's lifecycle, the engine go through a serie of states. It only can go forward between states.</p><ul>
|
|
<li><b>EngineCreation</b> : just after C++ object creation until the global routing is loaded.</li>
|
|
<li><b>EngineGlobalLoaded</b> : <em>after</em> the global routing has been done. This state must be set by an external tool, <a class="el" href="namespaceKatabatic.html" title="The namespace dedicated to Katabatic. ">Katabatic</a> cannot know by itself when the global routing has been done (see Kite).</li>
|
|
<li><b>EngineActive</b> : <em>after</em> the global routing has been converted into the <a class="el" href="namespaceKatabatic.html" title="The namespace dedicated to Katabatic. ">Katabatic</a> data structure. At this point the tool is ready to run.</li>
|
|
<li><b>EngineDriving</b> : <em>during</em> the stage of stripping all the decorations the tool has added over the Hurricane data structure (mostly: <a class="el" href="classKatabatic_1_1AutoContact.html" title="Abstract base class for AutoContact. ">AutoContact</a> & <a class="el" href="classKatabatic_1_1AutoSegment.html" title="Abstract base class for AutoSegment. ">AutoSegment</a>).</li>
|
|
<li><b>EngineGutted</b> : <em>after</em> the tool decorations have been removed. The tool is now useless and can only be destroyed.</li>
|
|
<li><b>EnginePreDestroying</b> : this special state is reached when going straight from EngineActive to the destructor, that is, skipping the EngineDriving state. That means we <em>do not</em> want to save whatever routing has been done. In that case, not only the tool decorations are destroyeds, but also the Hurricane data-structures they relies on (Contact, Segments).</li>
|
|
</ul>
|
|
<h1><a class="anchor" id="secEngineImpl"></a>
|
|
KatabaticEngine Implementation Details</h1>
|
|
<p>Due to the size of the code and the fact that the main body of some methods do not need to be present in the class, the implementation of <a class="el" href="classKatabatic_1_1KatabaticEngine.html" title="The Katabatic Tool. ">KatabaticEngine</a> is split in several files. The list below summarize them:</p><ul>
|
|
<li><code>KatabaticEngine.cpp</code> : the core of the class, methods that really need their bodies here.</li>
|
|
<li><code>PowerRails.cpp</code> : utilities to construct an abstract from all the power rails through the hierarchy.</li>
|
|
<li><code>LayerAssign.cpp</code> : layer assignement related methods and helpers.</li>
|
|
<li><code>LoadGrByNet.cpp</code> : global routing loader, transform global routing into <a class="el" href="namespaceKatabatic.html" title="The namespace dedicated to Katabatic. ">Katabatic</a> data-structure.</li>
|
|
<li><code>NetConstraints.cpp</code> : compute the topological constraints of all AutoSegment/AutoContact of a Net.</li>
|
|
<li><code>NetOptimals.cpp</code> : compute the optimal positions of all <a class="el" href="classKatabatic_1_1AutoSegment.html" title="Abstract base class for AutoSegment. ">AutoSegment</a> of a Net. </li>
|
|
</ul>
|
|
</div><h2 class="groupheader">Member Typedef Documentation</h2>
|
|
<a id="a92ed88f9aecd2f195089c4029fa8bcc7"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a92ed88f9aecd2f195089c4029fa8bcc7">◆ </a></span>NetSet</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">set< <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> *, NetCompareByName > <a class="el" href="classKatabatic_1_1KatabaticEngine.html#a92ed88f9aecd2f195089c4029fa8bcc7">NetSet</a></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
<p>Set of Net to be routed, alphabetically sorteds. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<h2 class="groupheader">Member Function Documentation</h2>
|
|
<a id="ab877a64c314024602cfb04631ebfbfc4"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ab877a64c314024602cfb04631ebfbfc4">◆ </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="classKatabatic_1_1KatabaticEngine.html">KatabaticEngine</a> * create </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_1Cell.html">Cell</a> * </td>
|
|
<td class="paramname"><em>cell</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>Create a <a class="el" href="classKatabatic_1_1KatabaticEngine.html" title="The Katabatic Tool. ">KatabaticEngine</a> on <code>cell</code>. </p>
|
|
|
|
<p class="reference">References <a class="el" href="classKatabatic_1_1AutoContact.html#ab422116c7edfacedd31711c96e3ec95b">AutoContact::base()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#a53877ff5ef48eb0030c2581a6eeb3c09">AutoSegment::base()</a>, <a class="el" href="namespaceKatabatic.html#ab9e409db5feff0bdbc85e90e2a029cdaad4f7e86648b59223202a64bde4eda4c7">Katabatic::EngineActive</a>, <a class="el" href="namespaceKatabatic.html#ab9e409db5feff0bdbc85e90e2a029cdaae21d68495c3c349ad351ba9692b40bd1">Katabatic::EngineDriving</a>, <a class="el" href="namespaceKatabatic.html#ab9e409db5feff0bdbc85e90e2a029cdaafb5f961d4cad2bb9fbda71204061c877">Katabatic::EngineGutted</a>, and <a class="el" href="namespaceKatabatic.html#ab9e409db5feff0bdbc85e90e2a029cdaafee0f47ec435d9c4e49b98a47683ad03">Katabatic::EnginePreDestroying</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a802eee6265da8d536db52d412f8a4afd"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a802eee6265da8d536db52d412f8a4afd">◆ </a></span>staticGetName()</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_1Name.html">Name</a> & staticGetName </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 unique string identifier for the <a class="el" href="classKatabatic_1_1KatabaticEngine.html" title="The Katabatic Tool. ">KatabaticEngine</a> class of ToolEngine. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a83a7793270669d2669222eac2caa7f93"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a83a7793270669d2669222eac2caa7f93">◆ </a></span>isGMetal()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">bool isGMetal </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Layer.html">Layer</a> * </td>
|
|
<td class="paramname"><em>layer</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> <b>true</b> if <code>layer</code> is one of the special (fake) metals used to build the global routing. </p>
|
|
|
|
<p class="reference">Referenced by <a class="el" href="classKatabatic_1_1AutoSegment.html#ab0cc9e57beeceec519cd4bd3e415569e">AutoSegment::create()</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ab6b7bc2b47ead460ac00a531451dc9cf"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ab6b7bc2b47ead460ac00a531451dc9cf">◆ </a></span>isChip()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">bool isChip </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 hierarchy top-level of the Cell matches the one of a complete design (i.e. pads and one core instance). </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a0141bff96a4778a806d4eba5d256c32a"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a0141bff96a4778a806d4eba5d256c32a">◆ </a></span>isInDemoMode()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">bool isInDemoMode </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 tool is in demo mode, that is suppress almost all warning and debug messages. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a9dec164d53fdee77f0f008133ecbd97f"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a9dec164d53fdee77f0f008133ecbd97f">◆ </a></span>doWarnOnGCellOverload()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">bool doWarnOnGCellOverload </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 tool should issue a warning when a <a class="el" href="classKatabatic_1_1GCell.html" title="Routing Global Cell. ">GCell</a> is overloaded (overload could be transient). </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a6bb0ac3c0ec9720a3519d43491939f97"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a6bb0ac3c0ec9720a3519d43491939f97">◆ </a></span>doDestroyBaseContact()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">bool doDestroyBaseContact </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 EngineDestroyBaseContact is set, meaning that when an <a class="el" href="classKatabatic_1_1AutoContact.html" title="Abstract base class for AutoContact. ">AutoContact</a> is destroyed, the Contact it decorates is destroyed altogether. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a54d58d645317d43371f6b0bec1815e6b"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a54d58d645317d43371f6b0bec1815e6b">◆ </a></span>doDestroyBaseSegment()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">bool doDestroyBaseSegment </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 EngineDestroyBaseSegment is set, meaning that when an <a class="el" href="classKatabatic_1_1AutoSegment.html" title="Abstract base class for AutoSegment. ">AutoSegment</a> is destroyed, the Segment it decorates is destroyed altogether. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a867e6dbfea5e5895a01ef71c66398b26"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a867e6dbfea5e5895a01ef71c66398b26">◆ </a></span>doDestroyTool()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">bool doDestroyTool </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 tool state is beyond EngineStateGutted, that is, only waits for <code><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1DBo.html#a67febf5bf9c8b322674648688639728b">destroy()</a></code> to be called. </p>
|
|
|
|
<p class="reference">References <a class="el" href="namespaceKatabatic.html#ab9e409db5feff0bdbc85e90e2a029cdaafb5f961d4cad2bb9fbda71204061c877">Katabatic::EngineGutted</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a9e76ae5cee9320b65251387419c9432b"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a9e76ae5cee9320b65251387419c9432b">◆ </a></span>getName()</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_1Name.html">Name</a> & getName </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 unique string identifier for the <a class="el" href="classKatabatic_1_1KatabaticEngine.html" title="The Katabatic Tool. ">KatabaticEngine</a> class of ToolEngine. </p>
|
|
|
|
<p>Implements <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/crlcore/doc/crlcore/html/crlcore.tag:../crlcore/" href="../crlcore/classCRL_1_1ToolEngine.html#a98c8fd84e7ea36d25287c08b75e9d5e7">ToolEngine</a>.</p>
|
|
|
|
<p class="reference">References <a class="el" href="namespaceKatabatic.html#ab9e409db5feff0bdbc85e90e2a029cdaa8bae41ad2fa29aaa5020b985b13416e0">Katabatic::EngineCreation</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a878e8b694aa243a767c2f232799ec9b3"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a878e8b694aa243a767c2f232799ec9b3">◆ </a></span>getState()</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="namespaceKatabatic.html#ab9e409db5feff0bdbc85e90e2a029cda">EngineState</a> getState </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 state the tool is currently in. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a7132cd3f405dc24b3897b4396c8ecc92"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a7132cd3f405dc24b3897b4396c8ecc92">◆ </a></span>getFlags()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">unsigned int getFlags </td>
|
|
<td>(</td>
|
|
<td class="paramtype">unsigned int </td>
|
|
<td class="paramname"><em>mask</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 <em>anded</em> combination of the tool flags and <code>mask</code>. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="adccd6ceec2c68234d3a824ad7ae3954e"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#adccd6ceec2c68234d3a824ad7ae3954e">◆ </a></span>getKatabaticConfiguration()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">Configuration * getKatabaticConfiguration </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><b>Returns:</b> The Configuration of <a class="el" href="namespaceKatabatic.html" title="The namespace dedicated to Katabatic. ">Katabatic</a>. In this class it is redundant with <a class="el" href="classKatabatic_1_1KatabaticEngine.html#a9a7fbadfe526875680f698c76adfb128">getConfiguration()</a>, but may be useful in derived classes. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a9a7fbadfe526875680f698c76adfb128"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a9a7fbadfe526875680f698c76adfb128">◆ </a></span>getConfiguration()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">Configuration * getConfiguration </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 Configuration of the current ToolEngine. </p>
|
|
|
|
<p class="reference">References <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#aeba73ca641db371dde29baf348b58bba">Net::getName()</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_1_1Type.html#a2652e3299403e0f5979a848b267163a5a87f5f36bbfcfac211f3dff73a8e46e65">Net::Type::GROUND</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/crlcore/doc/crlcore/html/crlcore.tag:../crlcore/" href="../crlcore/classCRL_1_1AllianceFramework.html#aa41d24d292c19624236fff250a28b102">AllianceFramework::isBLOCKAGE()</a>, and <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Net_1_1Type.html#a2652e3299403e0f5979a848b267163a5a0b7ce81772b3f4df72edb083a52b2748">Net::Type::POWER</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a171ed6fac01ac5067d4f1b770cc419cf"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a171ed6fac01ac5067d4f1b770cc419cf">◆ </a></span>getRoutingGauge()</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/crlcore/doc/crlcore/html/crlcore.tag:../crlcore/" href="../crlcore/classCRL_1_1RoutingGauge.html">RoutingGauge</a> * getRoutingGauge </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 RoutingGauge (Configuration shortcut). </p>
|
|
|
|
<p class="reference">Referenced by <a class="el" href="classKatabatic_1_1Session.html#a76f17c3642eaeba85fa0af5ae9d208b4">Session::get()</a>, and <a class="el" href="classKatabatic_1_1GCell.html#a819f3ffbba69e4de2a19c827676b5aee">GCell::translate()</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a0b7c308ac7fccc21dd0401c6ce70a586"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a0b7c308ac7fccc21dd0401c6ce70a586">◆ </a></span>getLayerGauge()</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/crlcore/doc/crlcore/html/crlcore.tag:../crlcore/" href="../crlcore/classCRL_1_1RoutingLayerGauge.html">RoutingLayerGauge</a> * getLayerGauge </td>
|
|
<td>(</td>
|
|
<td class="paramtype">size_t </td>
|
|
<td class="paramname"><em>depth</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 RoutingLayerGauge associated to <code>depth</code> (Configuration shortcut). </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="afa7ea850397e87889733ac959833b49f"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#afa7ea850397e87889733ac959833b49f">◆ </a></span>getRoutingLayer()</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_1Layer.html">Layer</a> * getRoutingLayer </td>
|
|
<td>(</td>
|
|
<td class="paramtype">size_t </td>
|
|
<td class="paramname"><em>depth</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 routing Layer associated to <code>depth</code> (Configuration shortcut). </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a4c4549515aef37e81f2cc6537b931edc"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a4c4549515aef37e81f2cc6537b931edc">◆ </a></span>getContactLayer()</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/classHurricane_1_1Layer.html">Layer</a> * getContactLayer </td>
|
|
<td>(</td>
|
|
<td class="paramtype">size_t </td>
|
|
<td class="paramname"><em>depth</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 contact Layer associated to <code>depth</code> (Configuration shortcut). </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a9a56286f633fddd702d66563de457a4a"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a9a56286f633fddd702d66563de457a4a">◆ </a></span>getGCellGrid()</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="classKatabatic_1_1GCellGrid.html">GCellGrid</a> * getGCellGrid </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="classKatabatic_1_1GCellGrid.html" title="GCell Grid. ">GCellGrid</a>. </p>
|
|
|
|
<p class="reference">Referenced by <a class="el" href="group__LoadGlobalRouting.html#ga3973291866b39c10cea5ca17f7d174fb">anonymous_namespace{LoadGrByNet.cpp}::singleGCell()</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a8f661928f8f709552c8486d68ac33c55"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a8f661928f8f709552c8486d68ac33c55">◆ </a></span>getRoutingNets()</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="classKatabatic_1_1KatabaticEngine.html#a92ed88f9aecd2f195089c4029fa8bcc7">NetSet</a> & getRoutingNets </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 set of nets to be routeds. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a094b479155d3f30ec54e252c35dcffa3"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a094b479155d3f30ec54e252c35dcffa3">◆ </a></span>getGlobalThreshold()</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> getGlobalThreshold </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 above which a global wire is moved up in the layer assignment stage (Configuration shortcut). </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a44d2c1fbd97dd09b102b461e906367a0"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a44d2c1fbd97dd09b102b461e906367a0">◆ </a></span>getSaturateRatio()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">float getSaturateRatio </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 ratio above which a <a class="el" href="classKatabatic_1_1GCell.html" title="Routing Global Cell. ">GCell</a> is considered to be saturated (Configuration shortcut). </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a61977cc1fd981e7f1c6125189ed20509"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a61977cc1fd981e7f1c6125189ed20509">◆ </a></span>getSaturateRp()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">size_t getSaturateRp </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 RoutingPad above which a <a class="el" href="classKatabatic_1_1GCell.html" title="Routing Global Cell. ">GCell</a> is saturated, causing extras global segments to be moved up. (Configuration shortcut). </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ad9072cfa6215c92c9a9842270cf677c5"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ad9072cfa6215c92c9a9842270cf677c5">◆ </a></span>getExtensionCap()</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> getExtensionCap </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 wires extension cap, same for all layers for the time beeing (Configuration shortcut). </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a423f5f2214c8b9fe73da9a86b6f6d9b9"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a423f5f2214c8b9fe73da9a86b6f6d9b9">◆ </a></span>getChipTools()</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="classKatabatic_1_1ChipTools.html">ChipTools</a> & getChipTools </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 chip tools (for whole designs). </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="aecbe8bdcc61024a7539de3ea932c5e06"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aecbe8bdcc61024a7539de3ea932c5e06">◆ </a></span>xmlWriteGCellGrid() <span class="overload">[1/2]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void xmlWriteGCellGrid </td>
|
|
<td>(</td>
|
|
<td class="paramtype">ostream & </td>
|
|
<td class="paramname"><em>o</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
<p>Write in a stream all informations on the GCells in XML format. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a78394ac380a0fa462f268dcc2becc50e"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a78394ac380a0fa462f268dcc2becc50e">◆ </a></span>xmlWriteGCellGrid() <span class="overload">[2/2]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void xmlWriteGCellGrid </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const string & </td>
|
|
<td class="paramname"><em>fileName</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
<p>Write in a file all informations on the GCells in XML format. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a2391b9bfcb773398b9661b5ac0ef1a30"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a2391b9bfcb773398b9661b5ac0ef1a30">◆ </a></span>setState()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void setState </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="namespaceKatabatic.html#ab9e409db5feff0bdbc85e90e2a029cda">EngineState</a> </td>
|
|
<td class="paramname"><em>state</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>Force the state of the tool. Must be used with caution, as no sanity checks are performeds. This method is normally invoked from inside the <a class="el" href="classKatabatic_1_1KatabaticEngine.html" title="The Katabatic Tool. ">KatabaticEngine</a> various methods. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="aeb14f94914af58657a0dc2f50ec98df5"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aeb14f94914af58657a0dc2f50ec98df5">◆ </a></span>setFlags()</h2>
|
|
|
|
<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 </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 the flags given in <code>flags</code>. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a1a6fac115cb81db48e3ac9ffa0721bb5"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a1a6fac115cb81db48e3ac9ffa0721bb5">◆ </a></span>unsetFlags()</h2>
|
|
|
|
<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 </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 the flags given in <code>flags</code>. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a1bd1e0104b73d4c558b0e121002796a6"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a1bd1e0104b73d4c558b0e121002796a6">◆ </a></span>setGlobalThreshold()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void setGlobalThreshold </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> </td>
|
|
<td class="paramname"><em>threshold</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>(Configuration shortcut). </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ac2b780e06975ce8a0d6ca96f20cb971f"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ac2b780e06975ce8a0d6ca96f20cb971f">◆ </a></span>setSaturateRatio()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void setSaturateRatio </td>
|
|
<td>(</td>
|
|
<td class="paramtype">float </td>
|
|
<td class="paramname"><em>ratio</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>(Configuration shortcut). </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ade227e828b8c8fbfce478e353ca3ca59"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ade227e828b8c8fbfce478e353ca3ca59">◆ </a></span>setSaturateRp()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void setSaturateRp </td>
|
|
<td>(</td>
|
|
<td class="paramtype">size_t </td>
|
|
<td class="paramname"><em>threshold</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>(Configuration shortcut). </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a2ea4b4fc379fb85a13890db451cbf93a"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a2ea4b4fc379fb85a13890db451cbf93a">◆ </a></span>printMeasures()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void printMeasures </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const string & </td>
|
|
<td class="paramname"><em>tag</em></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
<p>Print memory & time measurement on ``cmess1``. If <code>tag</code> is not empty, also adds the measurement to the internal table (with <code>tag</code> as label). </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a1e9bb62be35c6a415a1950c72c1964ef"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a1e9bb62be35c6a415a1950c72c1964ef">◆ </a></span>refresh()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void refresh </td>
|
|
<td>(</td>
|
|
<td class="paramtype">unsigned int </td>
|
|
<td class="paramname"><em>flags</em> = <code><a class="el" href="namespaceKatabatic.html#a2af2ad6b6441614038caf59d04b3b217af314588109fcc5f5ee1c42e5fd4d0ed5">KbOpenSession</a></code></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
<p>In case the tool is associated with a graphic display, trigger a full redraw of the Cell. Slow the router but allow to see work in progress... If <code>flags</code> <em>do not</em> contains <code>KbOpenSession</code> the refresh operation will not be enclosed inside it's own session. This assumes that a session is already opened. </p>
|
|
|
|
<p class="reference">References <a class="el" href="namespaceKatabatic.html#ab9e409db5feff0bdbc85e90e2a029cdaae21d68495c3c349ad351ba9692b40bd1">Katabatic::EngineDriving</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a1b7d8ed09a198f7afd6e3ac911f6eb37"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a1b7d8ed09a198f7afd6e3ac911f6eb37">◆ </a></span>createDetailedGrid()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void createDetailedGrid </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>Allocate the <a class="el" href="classKatabatic_1_1GCellGrid.html" title="GCell Grid. ">GCellGrid</a>. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="aaba3b9450c85634131146fb507089f2d"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aaba3b9450c85634131146fb507089f2d">◆ </a></span>makePowerRails()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void makePowerRails </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
<p>Detect all the aligned segments of same width that compose power rails, unificate them and copy them at the design top level. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a583925cfe4bbadcc1c24fe619debce09"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a583925cfe4bbadcc1c24fe619debce09">◆ </a></span>loadGlobalRouting()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void loadGlobalRouting </td>
|
|
<td>(</td>
|
|
<td class="paramtype">unsigned int </td>
|
|
<td class="paramname"><em>method</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">
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">method</td><td>the loading algorithm </td></tr>
|
|
<tr><td class="paramname">nets</td><td>the set of nets to route.</td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<p>Convert the global routing into the initial detailed routing. For the time beeing, only one loading algorithm is available: <em>net by net</em> (EngineLoadGrByNet). Only Net given in <code>nets</code> are routeds. If <code>nets</code> is empty then all ordinary nets are routeds. In either cases the set of nets to route is pruned from any power, ground or clock signals.</p>
|
|
<dl class="section user"><dt>Remark:</dt><dd>The tool state must be <b>EngineGlobalLoaded</b> <em>before</em> calling this method and will be set to <b>EngineActive</b> on exit. </dd></dl>
|
|
|
|
<p class="reference">References <a class="el" href="namespaceKatabatic.html#ab9e409db5feff0bdbc85e90e2a029cdaad4f7e86648b59223202a64bde4eda4c7">Katabatic::EngineActive</a>, and <a class="el" href="namespaceKatabatic.html#ab9e409db5feff0bdbc85e90e2a029cdaa5e262eba2c323c8ab5365b5e1364fc1e">Katabatic::EngineGlobalLoaded</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a145b36b18fc9149980c5d6bd4bd10e0d"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a145b36b18fc9149980c5d6bd4bd10e0d">◆ </a></span>slackenBorder()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void slackenBorder </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_1Box.html">Box</a> </td>
|
|
<td class="paramname"><em>bb</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype"><a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Layer.html#af5277c670637bd5d910237e7afe01a91">Layer::Mask</a> </td>
|
|
<td class="paramname"><em>mask</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">unsigned int </td>
|
|
<td class="paramname"><em>flags</em> </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">bb</td><td>The bounding box, defines the edges. </td></tr>
|
|
<tr><td class="paramname">mask</td><td>Consider only layers that are fully included in that mask. </td></tr>
|
|
<tr><td class="paramname">flags</td><td>Consider only segment in that direction.</td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<p>Perform a preventive break on all global segments going through the <em>vertical</em> left and right edges of the <code>bb</code> box. The set of global segments to be broken could be further restricted using <code>mask</code> and <code>flags</code>.</p>
|
|
<p><span class="red">The Semantic of <code>flags</code> is not clear, must review the code more closely.</span> </p>
|
|
|
|
<p class="reference">References <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#a77b9db757080544fcede3e670cee8c5c">Box::getXMax()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Box.html#ad5122ef7dda8a58c1dacddb57cd4ccfb">Box::getXMin()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Box.html#a06e1a86a06dacfca6d3403c16affc7e8">Box::getYMax()</a>, and <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Box.html#a542c383466845aeca0e32f51b77c7439">Box::getYMin()</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ac40754d4a9bd0cf327b5fa088e993897"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ac40754d4a9bd0cf327b5fa088e993897">◆ </a></span>slackenBlockIos()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void slackenBlockIos </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_1Instance.html">Instance</a> * </td>
|
|
<td class="paramname"><em>core</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
<p>Perform a preventive break on horizontal segments in the <a class="el" href="classKatabatic_1_1GCell.html" title="Routing Global Cell. ">GCell</a> immediatly <em>outside</em> the instance <code>core</code> area in the routing layer of index <code>1</code>.</p>
|
|
<p><span class="red">This method is too much hardwired to the <code>SxLib</code> gauge. It's effect is to break all <b>METAL2</b> outside the core (in a chip).</span> </p>
|
|
|
|
<p class="reference">References <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Entity.html#ad834f8ce33a08a13e2a88446696e63e7">Entity::getBoundingBox()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Instance.html#aa48280b4d7127d283c89983cf7a42c23">Instance::getName()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/crlcore/doc/crlcore/html/crlcore.tag:../crlcore/" href="../crlcore/namespaceConstant.html#ac081a99f2b64361919ed5d9f37c0f9afa7a545ff2d744fe30bfac294dfe9d03db">Constant::Horizontal</a>, and <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Box.html#a90207e7ca8044a6afc72674cc6ae366e">Box::inflate()</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ac934a049003c9d5d2380f44ff393e458"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ac934a049003c9d5d2380f44ff393e458">◆ </a></span>moveUpNetTrunk()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">bool moveUpNetTrunk </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classKatabatic_1_1AutoSegment.html">AutoSegment</a> * </td>
|
|
<td class="paramname"><em>seed</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">set< <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> *> & </td>
|
|
<td class="paramname"><em>globalNets</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype"><a class="el" href="classKatabatic_1_1GCell.html#aacb1c215b203bfba5729f135b3221d40">GCell::SetIndex</a> & </td>
|
|
<td class="paramname"><em>invalidateds</em> </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">seed</td><td>The <a class="el" href="classKatabatic_1_1AutoSegment.html" title="Abstract base class for AutoSegment. ">AutoSegment</a> to take the net from. </td></tr>
|
|
<tr><td class="paramname">globalNets</td><td>The set of nets that has been moved up. </td></tr>
|
|
<tr><td class="paramname">invalidateds</td><td>The set of GCells that have been invalidated. <b>Returns:</b> <b>true</b> if the net trunk have been moved up.</td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<p>Try to move up a whole net trunk. The net is supplied through the <code>seed</code> argument (the segment that triggers the move). If the net is actually moved up, it is added to <code>globalNets</code> and all GCells that have been invalidateds are added to <code>invalidateds</code>.</p>
|
|
<p><span class="red">An individual <a class="el" href="classKatabatic_1_1AutoSegment.html" title="Abstract base class for AutoSegment. ">AutoSegment</a> of the net is moved up if it's length is greater that <code>150</code> lambdas, that is, three times the side of a <a class="el" href="classKatabatic_1_1GCell.html" title="Routing Global Cell. ">GCell</a>. This is hard-wired and should be parametrized in the future.</span> </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a77833ce938a430785ba869eedbc2300c"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a77833ce938a430785ba869eedbc2300c">◆ </a></span>layerAssign()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void layerAssign </td>
|
|
<td>(</td>
|
|
<td class="paramtype">unsigned int </td>
|
|
<td class="paramname"><em>method</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
<p>Perform the layer assignment. The global routing loading stage uses only the two bottom most layers, this method spread them on all the availables routing layers, according to <a class="el" href="classKatabatic_1_1GCell.html" title="Routing Global Cell. ">GCell</a> and RoutingPad density criterions.</p>
|
|
<p>Two algorithms are availables:</p><ul>
|
|
<li><b>EngineLayerAssignByLength</b> : the global wires are moved up one by one.</li>
|
|
<li><b>EngineLayerAssignByTrunk</b> : if one global wire of a net is to be moved up, then all the global trunk of the net is moved along. This methods gives the best results for now. </li>
|
|
</ul>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a6957a5830a4d6f1b2daf83a7d98df601"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a6957a5830a4d6f1b2daf83a7d98df601">◆ </a></span>computeNetConstraints()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void computeNetConstraints </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> * </td>
|
|
<td class="paramname"><em>net</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
<p>Compute the box constraints on AutoContacts (and therefore those applied to AutoSegments). Constraints comes from AutoContacts anchoreds on RoutingPads and transmitted through <a class="el" href="classKatabatic_1_1AutoContactHTee.html" title="AutoContact H-Tee (two H, one V) ">AutoContactHTee</a> or <a class="el" href="classKatabatic_1_1AutoContactVTee.html" title="AutoContact V-Tee (one H, two V) ">AutoContactVTee</a>. Constraints are applied to all AutoContacts of an aligned set.</p>
|
|
<dl class="section user"><dt>Remark:</dt><dd>The <code>net</code> must have been canonized before this function to be called. </dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ad6b9f7d94ee4a88f12c485e48d1e644a"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ad6b9f7d94ee4a88f12c485e48d1e644a">◆ </a></span>toOptimals()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void toOptimals </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> * </td>
|
|
<td class="paramname"><em>net</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
<p>Move all <a class="el" href="classKatabatic_1_1AutoSegment.html" title="Abstract base class for AutoSegment. ">AutoSegment</a> of <code>net</code> so that their axis are inside their optimals interval. If a <a class="el" href="classKatabatic_1_1AutoSegment.html" title="Abstract base class for AutoSegment. ">AutoSegment</a> is already inside the interval is not moved, otherwise it is put on the nearest bound of the optimal interval. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a468eddb683c04cfeea1c5124a39e1f86"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a468eddb683c04cfeea1c5124a39e1f86">◆ </a></span>finalizeLayout()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void finalizeLayout </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>Transform the <a class="el" href="namespaceKatabatic.html" title="The namespace dedicated to Katabatic. ">Katabatic</a> wires into the Hurricane data-structure. Mostly by removing the AutoSegment/AutoContact <em>without</em> removing their Hurricane conterparts. May also fill gaps that may have appeared.</p>
|
|
<dl class="section user"><dt>Remark:</dt><dd>The tool state must be <b>EngineActive</b> <em>before</em> calling this method and will be set to <b>EngineGutted</b> on exit. </dd></dl>
|
|
|
|
<p class="reference">References <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Hook.html#aacc4dacd0d128b35fd15546bc6dde3c3">Hook::attach()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#a53877ff5ef48eb0030c2581a6eeb3c09">AutoSegment::base()</a>, <a class="el" href="classKatabatic_1_1AutoContact.html#ac371cd5b837a8965c11297c197e70a45">AutoContact::checkTopology()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1DebugSession.html#ac880eca99eeec60c669c0696f495ac42">DebugSession::close()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#abc72aaeefa7450eaf67aee3212ec974d">AutoSegment::computeTerminal()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1DBo.html#a67febf5bf9c8b322674648688639728b">DBo::destroy()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Hook.html#a83f5beb5092e97947d24bd18adb33db1">Hook::detach()</a>, <a class="el" href="namespaceKatabatic.html#ab9e409db5feff0bdbc85e90e2a029cdaae21d68495c3c349ad351ba9692b40bd1">Katabatic::EngineDriving</a>, <a class="el" href="namespaceKatabatic.html#ab9e409db5feff0bdbc85e90e2a029cdaafb5f961d4cad2bb9fbda71204061c877">Katabatic::EngineGutted</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#aaca749f49cd03ca06449d5ea2104033a">AutoSegment::getAligneds()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Contact.html#ab0b327b306bf7ebda634f59d8d0cfd8f">Contact::getAnchor()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#a2ca3fac97e325ec8a55d3e03a2ce11a6">AutoSegment::getAutoSource()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#afa494ddc031f4dd1c24999ff83fb878c">AutoSegment::getAutoTarget()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Component.html#a19f06d7cad163bab3b97a13f4736c9d1">Component::getBodyHook()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Hook.html#ab420305aa59b8ff10d59678363de2511">Hook::getComponent()</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#a1e2d7ef9bab15694870a605e514f26e8">Net::getComponents()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1DataBase.html#a53d0b9fcd06b73f3968c8f238f377a88">DataBase::getDB()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Segment.html#a9f6c42c2de0330aa6a486cdbf550cea1">Segment::getLength()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Hook.html#a03044fa995d6d784d6c441927ca8af04">Hook::getNextHook()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Hook.html#a80bf5cdd4e81952064f1be94fe10188f">Hook::getPreviousMasterHook()</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#aadc5a9ef26d7a72f49fdf22452f3cc58">Net::getSegments()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Collection.html#aa32ea7249d57ee05e3c71dcde8106832">Collection< Type >::getSubSet()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1DataBase.html#a144480c54b0f9fbda57622ad6767ab8a">DataBase::getTechnology()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#gadc9c1a06b4296dbddcf711077113f4bd">DbU::getValueString()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Technology.html#a8209708bc594a307ea39f15a39bbf196">Technology::getViaBetween()</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#aeeb3735dd7451bc0054dd68ac21aae47">Net::isExternal()</a>, <a class="el" href="classKatabatic_1_1AutoSegment.html#ac540608485240ff88970131ebc02c1ab">AutoSegment::isInvalidated()</a>, <a class="el" href="classKatabatic_1_1AutoContact.html#a6d1120fc8800af5d269e72ce5c3ba629">AutoContact::isInvalidatedCache()</a>, <a class="el" href="namespaceKatabatic.html#a2af2ad6b6441614038caf59d04b3b217a45a219697151531a23e997b11118e08a">Katabatic::KbRealignate</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1DebugSession.html#ac12865b68d1acfd85cd48d4d44d9c4fc">DebugSession::open()</a>, <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/classHurricane_1_1Contact.html#a147644849f33bc4d58b6b997543c8306">Contact::setLayer()</a>, and <a class="elRef" doxygen="/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href="../hurricane/group__DbUGroup.html#ga4923a9a443871282ad7d331be2a2a5d4">DbU::toLambda()</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<hr/>The documentation for this class was generated from the following files:<ul>
|
|
<li><a class="el" href="KatabaticEngine_8h_source.html">KatabaticEngine.h</a></li>
|
|
<li>ChipTools.cpp</li>
|
|
<li>LoadGrByNet.cpp</li>
|
|
<li>KatabaticEngine.cpp</li>
|
|
<li>KatabaticEngine.dox</li>
|
|
</ul>
|
|
</div><!-- contents -->
|
|
<br>
|
|
<hr>
|
|
<table class="footer1">
|
|
<tr>
|
|
<td class="LFooter"><small>Generated by doxygen 1.8.13 on Mon May 14 2018</small></td>
|
|
<td class="RFooter"><a href='#pagetop'><small>Return to top of page</small></a></td>
|
|
</tr>
|
|
</table>
|
|
<table class="footer2">
|
|
<tr>
|
|
<td class="LFooter">Katabatic - Routing Toolbox</td>
|
|
<td class="RFooter"><small>Copyright © 2008-2016 UPMC. All rights reserved</small></td>
|
|
</tr>
|
|
</table>
|
|
</body>
|
|
</html>
|