2018-06-06 11:42:26 -05:00
<!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)" >
2018-10-18 11:10:01 -05:00
<!-- 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& dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',false,false,'search.php','Search');
});
/* @license-end */< / script >
< div id = "main-nav" > < / div >
2018-06-06 11:42:26 -05:00
< 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" >
2018-10-18 11:10:01 -05:00
< 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 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< 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 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< 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 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< 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 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< 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 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< 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 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< p > During it's lifecycle, the engine go through a serie of states. It only can go forward between states.< / p > < ul >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< 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 >
2018-06-06 11:42:26 -05:00
< li > < b > EngineGutted< / b > : < em > after< / em > the tool decorations have been removed. The tool is now useless and can only be destroyed.< / li >
2018-10-18 11:10:01 -05:00
< 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 >
2018-06-06 11:42:26 -05:00
< / ul >
< h1 > < a class = "anchor" id = "secEngineImpl" > < / a >
KatabaticEngine Implementation Details< / h1 >
2018-10-18 11:10:01 -05:00
< 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 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< a id = "a92ed88f9aecd2f195089c4029fa8bcc7" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a92ed88f9aecd2f195089c4029fa8bcc7" > ◆ < / a > < / span > NetSet< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< a id = "ab877a64c314024602cfb04631ebfbfc4" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ab877a64c314024602cfb04631ebfbfc4" > ◆ < / a > < / span > create()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
< / div >
< / div >
2018-10-18 11:10:01 -05:00
< a id = "a802eee6265da8d536db52d412f8a4afd" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a802eee6265da8d536db52d412f8a4afd" > ◆ < / a > < / span > staticGetName()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< a id = "a83a7793270669d2669222eac2caa7f93" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a83a7793270669d2669222eac2caa7f93" > ◆ < / a > < / span > isGMetal()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< p class = "reference" > Referenced by < a class = "el" href = "classKatabatic_1_1AutoSegment.html#ab0cc9e57beeceec519cd4bd3e415569e" > AutoSegment::create()< / a > .< / p >
2018-06-06 11:42:26 -05:00
< / div >
< / div >
2018-10-18 11:10:01 -05:00
< a id = "ab6b7bc2b47ead460ac00a531451dc9cf" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ab6b7bc2b47ead460ac00a531451dc9cf" > ◆ < / a > < / span > isChip()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< p class = "reference" > References < a class = "el" href = "classKatabatic_1_1ChipTools.html#ab6b7bc2b47ead460ac00a531451dc9cf" > ChipTools::isChip()< / a > .< / p >
2018-08-19 06:27:09 -05:00
2018-06-06 11:42:26 -05:00
< / div >
< / div >
2018-10-18 11:10:01 -05:00
< a id = "a0141bff96a4778a806d4eba5d256c32a" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a0141bff96a4778a806d4eba5d256c32a" > ◆ < / a > < / span > isInDemoMode()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< p class = "reference" > Referenced by < a class = "el" href = "classKatabatic_1_1Session.html#a037c7ec3b18ec43973f2e6fe3a172000" > Session::isInDemoMode()< / a > .< / p >
2018-08-19 06:27:09 -05:00
2018-06-06 11:42:26 -05:00
< / div >
< / div >
2018-10-18 11:10:01 -05:00
< a id = "a9dec164d53fdee77f0f008133ecbd97f" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a9dec164d53fdee77f0f008133ecbd97f" > ◆ < / a > < / span > doWarnOnGCellOverload()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< p class = "reference" > Referenced by < a class = "el" href = "classKatabatic_1_1Session.html#ad41e6fb02bd7bb01c27fb6aae36f0ddc" > Session::doWarnGCellOverload()< / a > .< / p >
2018-08-19 06:27:09 -05:00
2018-06-06 11:42:26 -05:00
< / div >
< / div >
2018-10-18 11:10:01 -05:00
< a id = "a6bb0ac3c0ec9720a3519d43491939f97" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a6bb0ac3c0ec9720a3519d43491939f97" > ◆ < / a > < / span > doDestroyBaseContact()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< a id = "a54d58d645317d43371f6b0bec1815e6b" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a54d58d645317d43371f6b0bec1815e6b" > ◆ < / a > < / span > doDestroyBaseSegment()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< a id = "a867e6dbfea5e5895a01ef71c66398b26" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a867e6dbfea5e5895a01ef71c66398b26" > ◆ < / a > < / span > doDestroyTool()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< p class = "reference" > References < a class = "el" href = "namespaceKatabatic.html#ab9e409db5feff0bdbc85e90e2a029cdaafb5f961d4cad2bb9fbda71204061c877" > Katabatic::EngineGutted< / a > .< / p >
2018-06-06 11:42:26 -05:00
< / div >
< / div >
2018-10-18 11:10:01 -05:00
< a id = "a9e76ae5cee9320b65251387419c9432b" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a9e76ae5cee9320b65251387419c9432b" > ◆ < / a > < / span > getName()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< 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 >
2018-06-06 11:42:26 -05:00
< / div >
< / div >
2018-10-18 11:10:01 -05:00
< a id = "a878e8b694aa243a767c2f232799ec9b3" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a878e8b694aa243a767c2f232799ec9b3" > ◆ < / a > < / span > getState()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< a id = "a7132cd3f405dc24b3897b4396c8ecc92" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a7132cd3f405dc24b3897b4396c8ecc92" > ◆ < / a > < / span > getFlags()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< a id = "adccd6ceec2c68234d3a824ad7ae3954e" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#adccd6ceec2c68234d3a824ad7ae3954e" > ◆ < / a > < / span > getKatabaticConfiguration()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< a id = "a9a7fbadfe526875680f698c76adfb128" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a9a7fbadfe526875680f698c76adfb128" > ◆ < / a > < / span > getConfiguration()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
< / div >
< / div >
2018-10-18 11:10:01 -05:00
< a id = "a171ed6fac01ac5067d4f1b770cc419cf" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a171ed6fac01ac5067d4f1b770cc419cf" > ◆ < / a > < / span > getRoutingGauge()< / h2 >
2018-06-06 11:42:26 -05:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
2018-10-18 11:10:01 -05:00
< 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 >
2018-06-06 11:42:26 -05:00
< 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 >
< / div >
< / div >
2018-10-18 11:10:01 -05:00
< a id = "a0b7c308ac7fccc21dd0401c6ce70a586" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a0b7c308ac7fccc21dd0401c6ce70a586" > ◆ < / a > < / span > getLayerGauge()< / h2 >
2018-06-06 11:42:26 -05:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
2018-10-18 11:10:01 -05:00
< 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 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< a id = "afa7ea850397e87889733ac959833b49f" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#afa7ea850397e87889733ac959833b49f" > ◆ < / a > < / span > getRoutingLayer()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< a id = "a4c4549515aef37e81f2cc6537b931edc" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a4c4549515aef37e81f2cc6537b931edc" > ◆ < / a > < / span > getContactLayer()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< a id = "a9a56286f633fddd702d66563de457a4a" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a9a56286f633fddd702d66563de457a4a" > ◆ < / a > < / span > getGCellGrid()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< p class = "reference" > Referenced by < a class = "el" href = "group__LoadGlobalRouting.html#ga60edeea78b56db072fc26a58a7afbcd4" > GCellTopology::doRp_AccessPad()< / a > , < a class = "el" href = "group__LoadGlobalRouting.html#gae9cae408ea16a3f7c77c3d75f0242f19" > GCellTopology::doRp_AutoContacts()< / a > , and < a class = "el" href = "group__LoadGlobalRouting.html#ga3973291866b39c10cea5ca17f7d174fb" > anonymous_namespace{LoadGrByNet.cpp}::singleGCell()< / a > .< / p >
2018-06-06 11:42:26 -05:00
< / div >
< / div >
2018-10-18 11:10:01 -05:00
< a id = "a8f661928f8f709552c8486d68ac33c55" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a8f661928f8f709552c8486d68ac33c55" > ◆ < / a > < / span > getRoutingNets()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< a id = "a094b479155d3f30ec54e252c35dcffa3" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a094b479155d3f30ec54e252c35dcffa3" > ◆ < / a > < / span > getGlobalThreshold()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< a id = "a44d2c1fbd97dd09b102b461e906367a0" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a44d2c1fbd97dd09b102b461e906367a0" > ◆ < / a > < / span > getSaturateRatio()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< p class = "reference" > Referenced by < a class = "el" href = "classKatabatic_1_1Session.html#a266a4079ca235e8fdb622ef4996d324d" > Session::getSaturateRatio()< / a > .< / p >
2018-08-19 06:27:09 -05:00
2018-06-06 11:42:26 -05:00
< / div >
< / div >
2018-10-18 11:10:01 -05:00
< a id = "a61977cc1fd981e7f1c6125189ed20509" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a61977cc1fd981e7f1c6125189ed20509" > ◆ < / a > < / span > getSaturateRp()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< p class = "reference" > Referenced by < a class = "el" href = "classKatabatic_1_1Session.html#adfdaa8b3e81de14fce1f99444b35fcda" > Session::getSaturateRp()< / a > .< / p >
2018-08-19 06:27:09 -05:00
2018-06-06 11:42:26 -05:00
< / div >
< / div >
2018-10-18 11:10:01 -05:00
< a id = "ad9072cfa6215c92c9a9842270cf677c5" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ad9072cfa6215c92c9a9842270cf677c5" > ◆ < / a > < / span > getExtensionCap()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< a id = "a423f5f2214c8b9fe73da9a86b6f6d9b9" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a423f5f2214c8b9fe73da9a86b6f6d9b9" > ◆ < / a > < / span > getChipTools()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< p class = "reference" > Referenced by < a class = "el" href = "classKatabatic_1_1KatabaticEngine.html#a1b7d8ed09a198f7afd6e3ac911f6eb37" > KatabaticEngine::createDetailedGrid()< / a > .< / p >
2018-08-19 06:27:09 -05:00
2018-06-06 11:42:26 -05:00
< / div >
< / div >
2018-10-18 11:10:01 -05:00
< a id = "aecbe8bdcc61024a7539de3ea932c5e06" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#aecbe8bdcc61024a7539de3ea932c5e06" > ◆ < / a > < / span > xmlWriteGCellGrid() < span class = "overload" > [1/2]< / span > < / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< p class = "reference" > Referenced by < a class = "el" href = "classKatabatic_1_1KatabaticEngine.html#a78394ac380a0fa462f268dcc2becc50e" > KatabaticEngine::xmlWriteGCellGrid()< / a > .< / p >
2018-08-19 06:27:09 -05:00
2018-06-06 11:42:26 -05:00
< / div >
< / div >
2018-10-18 11:10:01 -05:00
< a id = "a78394ac380a0fa462f268dcc2becc50e" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a78394ac380a0fa462f268dcc2becc50e" > ◆ < / a > < / span > xmlWriteGCellGrid() < span class = "overload" > [2/2]< / span > < / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< p class = "reference" > References < a class = "el" href = "classKatabatic_1_1KatabaticEngine.html#aecbe8bdcc61024a7539de3ea932c5e06" > KatabaticEngine::xmlWriteGCellGrid()< / a > .< / p >
2018-08-19 06:27:09 -05:00
2018-06-06 11:42:26 -05:00
< / div >
< / div >
2018-10-18 11:10:01 -05:00
< a id = "a2391b9bfcb773398b9661b5ac0ef1a30" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a2391b9bfcb773398b9661b5ac0ef1a30" > ◆ < / a > < / span > setState()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< a id = "aeb14f94914af58657a0dc2f50ec98df5" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#aeb14f94914af58657a0dc2f50ec98df5" > ◆ < / a > < / span > setFlags()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< p class = "reference" > Referenced by < a class = "el" href = "classKatabatic_1_1Session.html#af9919aefa1db2478b3d1813c1872d175" > Session::setKatabaticFlags()< / a > .< / p >
2018-08-19 06:27:09 -05:00
2018-06-06 11:42:26 -05:00
< / div >
< / div >
2018-10-18 11:10:01 -05:00
< a id = "a1a6fac115cb81db48e3ac9ffa0721bb5" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a1a6fac115cb81db48e3ac9ffa0721bb5" > ◆ < / a > < / span > unsetFlags()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< a id = "a1bd1e0104b73d4c558b0e121002796a6" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a1bd1e0104b73d4c558b0e121002796a6" > ◆ < / a > < / span > setGlobalThreshold()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< a id = "ac2b780e06975ce8a0d6ca96f20cb971f" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ac2b780e06975ce8a0d6ca96f20cb971f" > ◆ < / a > < / span > setSaturateRatio()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< a id = "ade227e828b8c8fbfce478e353ca3ca59" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ade227e828b8c8fbfce478e353ca3ca59" > ◆ < / a > < / span > setSaturateRp()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< a id = "a2ea4b4fc379fb85a13890db451cbf93a" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a2ea4b4fc379fb85a13890db451cbf93a" > ◆ < / a > < / span > printMeasures()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< p class = "reference" > Referenced by < a class = "el" href = "classKatabatic_1_1KatabaticEngine.html#a468eddb683c04cfeea1c5124a39e1f86" > KatabaticEngine::finalizeLayout()< / a > .< / p >
2018-08-19 06:27:09 -05:00
2018-06-06 11:42:26 -05:00
< / div >
< / div >
2018-10-18 11:10:01 -05:00
< a id = "a1e9bb62be35c6a415a1950c72c1964ef" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a1e9bb62be35c6a415a1950c72c1964ef" > ◆ < / a > < / span > refresh()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< p class = "reference" > References < a class = "el" href = "classKatabatic_1_1GCellGrid.html#a032d6eb23f92e3a41a020d18c6bbc02d" > GCellGrid::updateContacts()< / a > .< / p >
2018-06-06 11:42:26 -05:00
< / div >
< / div >
2018-10-18 11:10:01 -05:00
< a id = "a1b7d8ed09a198f7afd6e3ac911f6eb37" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a1b7d8ed09a198f7afd6e3ac911f6eb37" > ◆ < / a > < / span > createDetailedGrid()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< p class = "reference" > References < a class = "el" href = "classKatabatic_1_1GCellGrid.html#a19a45b2e6c6b9ca8898b2fde035d1827" > GCellGrid::create()< / a > , < a class = "el" href = "classKatabatic_1_1KatabaticEngine.html#a423f5f2214c8b9fe73da9a86b6f6d9b9" > KatabaticEngine::getChipTools()< / a > , < a class = "el" href = "classKatabatic_1_1BaseGrid.html#aeaf0dae788f4c997e6172f9c734e3a91" > BaseGrid::getColumns()< / a > , < a class = "el" href = "classKatabatic_1_1Grid.html#aa8d0393323104d48c089a8429b254689" > Grid< GCellT > ::getGCellsColumn()< / a > , < a class = "el" href = "classKatabatic_1_1Grid.html#a35e2075302cdb696945f05c5bcc817a0" > Grid< GCellT > ::getGCellsRow()< / a > , < a class = "el" href = "classKatabatic_1_1BaseGrid.html#a4bad6abc58473d953258a3230506291a" > BaseGrid::getRows()< / a > , < a class = "el" href = "classKatabatic_1_1ChipTools.html#ab6b7bc2b47ead460ac00a531451dc9cf" > ChipTools::isChip()< / a > , and < a class = "el" href = "classKatabatic_1_1Session.html#a4da9e28432c1fdb0c754717487d9cc83" > Session::revalidate()< / a > .< / p >
2018-08-19 06:27:09 -05:00
2018-06-06 11:42:26 -05:00
< / div >
< / div >
2018-10-18 11:10:01 -05:00
< a id = "aaba3b9450c85634131146fb507089f2d" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#aaba3b9450c85634131146fb507089f2d" > ◆ < / a > < / span > makePowerRails()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< a id = "a583925cfe4bbadcc1c24fe619debce09" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a583925cfe4bbadcc1c24fe619debce09" > ◆ < / a > < / span > loadGlobalRouting()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< dl class = "section user" > < dt > Remark: The tool state must be < b > EngineGlobalLoaded< / b > < em > before< / em > calling this method< / dt > < dd > and will be set to < b > EngineActive< / b > on exit. < / dd > < / dl >
2018-06-06 11:42:26 -05:00
2018-10-18 11:10:01 -05:00
< 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 >
2018-06-06 11:42:26 -05:00
< / div >
< / div >
2018-10-18 11:10:01 -05:00
< a id = "a145b36b18fc9149980c5d6bd4bd10e0d" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a145b36b18fc9149980c5d6bd4bd10e0d" > ◆ < / a > < / span > slackenBorder()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< 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 >
2018-06-06 11:42:26 -05:00
< / div >
< / div >
2018-10-18 11:10:01 -05:00
< a id = "ac40754d4a9bd0cf327b5fa088e993897" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ac40754d4a9bd0cf327b5fa088e993897" > ◆ < / a > < / span > slackenBlockIos()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< 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 >
2018-06-06 11:42:26 -05:00
< / div >
< / div >
2018-10-18 11:10:01 -05:00
< a id = "ac934a049003c9d5d2380f44ff393e458" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ac934a049003c9d5d2380f44ff393e458" > ◆ < / a > < / span > moveUpNetTrunk()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< 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 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< a id = "a77833ce938a430785ba869eedbc2300c" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a77833ce938a430785ba869eedbc2300c" > ◆ < / a > < / span > layerAssign()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< p > Two algorithms are availables:< / p > < ul >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< a id = "a6957a5830a4d6f1b2daf83a7d98df601" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a6957a5830a4d6f1b2daf83a7d98df601" > ◆ < / a > < / span > computeNetConstraints()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< dl class = "section user" > < dt > Remark: The < code > net< / code > must have been canonized before this function to be called. < / dt > < dd > < / dd > < / dl >
2018-06-06 11:42:26 -05:00
< / div >
< / div >
2018-10-18 11:10:01 -05:00
< a id = "ad6b9f7d94ee4a88f12c485e48d1e644a" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ad6b9f7d94ee4a88f12c485e48d1e644a" > ◆ < / a > < / span > toOptimals()< / h2 >
2018-06-06 11:42:26 -05:00
< 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 >
2018-10-18 11:10:01 -05:00
< a id = "a468eddb683c04cfeea1c5124a39e1f86" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a468eddb683c04cfeea1c5124a39e1f86" > ◆ < / a > < / span > finalizeLayout()< / h2 >
2018-06-06 11:42:26 -05:00
< 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" >
2018-10-18 11:10:01 -05:00
< 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: The tool state must be < b > EngineActive< / b > < em > before< / em > calling this method< / dt > < dd > and will be set to < b > EngineGutted< / b > on exit. < / dd > < / dl >
2018-06-06 11:42:26 -05:00
2018-10-18 11:10:01 -05:00
< p class = "reference" > References < 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 = "classKatabatic_1_1KatabaticEngine.html#a2ea4b4fc379fb85a13890db451cbf93a" > KatabaticEngine::printMeasures()< / a > .< / p >
2018-06-06 11:42:26 -05:00
< / 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 >
Migrating the initialisation system to be completely Python-like.
* New: In bootstrap/coriolisEnv.py, add the "etc" directory to the
PYTHONPATH as initialization are now Python modules.
* New: In Hurricane/analogic, first groundwork for the integration of
PIP/MIM/MOM multi-capacitors. Add C++ and Python interface for the
allocation matrix and the list of capacities values.
* Change: In Hurricane::RegularLayer, add a layer parameter to the
constructor so the association between the RegularLayer and it's
BasicLayer can readily be done.
* Change: In Hurricane::Layer, add a new getCut() accessor to get the
cut layer in ViaLayer.
* Change: In Hurricane::DataBase::get(), the Python wrapper should no
longer consider an error if the data-base has not been created yet.
Just return None.
* Bug: In Isobar::PyLayer::getEnclosure() wrapper, if the overall
enclosure is requested, pass the right parameter to the C++ function.
* Change: In AllianceFramework, make public _bindLibraries() and export
it to the Python interface.
* Change: In AllianceFramework::create(), do not longer call bindLibraries().
This now must be done explicitely and afterwards.
* Change: In AllianceFramework::createLibrary() and
Environement::addSYSTEM_LIBRARY(), minor bug corrections that I don't
recall.
* Change: In SearchPath::prepend(), set the selected index to zero and
return it.
* Change: In CRL::System CTOR, add "etc" to the PYTHONPATH as the
configuration files are now organized as Python modules.
* New: In PyCRL, export the CRL::System singleton, it's creation is no
longer triggered by the one of AllianceFramework.
* New: In CRL/etc/, convert most of the configuration files into the
Python module format. For now, keep the old ".conf", but that are no
longer used.
For the real technologies, we cannot keep the directory name as
"180" or "45" as it not allowed by Python syntax, so we create "node180"
or "node45" instead.
Most of the helpers and coriolisInit.py are no longer used now.
To be removed in future commits after being sure that everything
works...
* Bug: In AutoSegment::makeDogleg(AutoContact*), the layer of the contacts
where badly computed when one end of the original segment was attached
to a non-preferred direction segment (mostly on terminal contacts).
Now use the new AutoContact::updateLayer() method.
* Bug: In Dijkstra::load(), limit symetric search area only if the net
is a symmetric one !
* Change: In Katana/python/katanaInit.py, comply with the new initialisation
scheme.
* Change: In Unicorn/cgt.py, comply to the new inititalization scheme.
* Change: In cumulus various Python scripts remove the call to
helpers.staticInitialization() as they are not needed now (we run in
only *one* interpreter, so we correctly share all init).
In plugins/__init__.py, read the new NDA directory variable.
* Bug: In cumulus/plugins/Chip.doCoronafloorplan(), self.railsNb was not
correctly managed when there was no clock.
* Change: In cumulus/plugins/Configuration.coronaContactArray(), compute
the viaPitch from the technology instead of the hard-coded 4.0 lambdas.
In Configuration.loadConfiguration(), read the "ioring.py" from
the new user's settings module.
* Bug: In stratus.dpgen_ADSB2F, gives coordinates translated into DbU to
the XY functions.
In st_model.Save(), use the VstUseConcat flag to get correct VST files.
In st_net.hur_net(), when a net is POWER/GROUND or CLOCK also make it
global.
* Change: In Oroshi/python/WIP_Transistor.py, encapsulate the generator
inside a try/except block to get prettier error (and stop at the first).
2019-10-28 12:09:14 -05:00
< td class = "LFooter" > < small > Generated by doxygen 1.8.14 on Mon Oct 28 2019< / small > < / td >
2018-06-06 11:42:26 -05:00
< 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 >