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-08-19 06:27:09 -05:00
<!-- Generated by Doxygen 1.8.5 -->
< div id = "navrow1" class = "tabs" >
< ul class = "tablist" >
< li > < a href = "index.html" > < span > Main  Page< / span > < / a > < / li >
< li > < a href = "pages.html" > < span > Related  Pages< / span > < / a > < / li >
< li > < a href = "modules.html" > < span > Modules< / span > < / a > < / li >
< li > < a href = "namespaces.html" > < span > Namespaces< / span > < / a > < / li >
< li class = "current" > < a href = "annotated.html" > < span > Classes< / span > < / a > < / li >
< li > < a href = "files.html" > < span > Files< / span > < / a > < / li >
< / ul >
< / div >
< div id = "navrow2" class = "tabs2" >
< ul class = "tablist" >
< li > < a href = "annotated.html" > < span > Class  List< / span > < / a > < / li >
< li > < a href = "classes.html" > < span > Class  Index< / span > < / a > < / li >
< li > < a href = "hierarchy.html" > < span > Class  Hierarchy< / span > < / a > < / li >
< li > < a href = "functions.html" > < span > Class  Members< / span > < / a > < / li >
< / ul >
< / 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-08-19 06:27:09 -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-08-19 06:27:09 -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 > < br class = "typebreak" / >
*, 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-08-19 06:27:09 -05:00
< tr class = "memitem:a2f4d1f8df0e5dc9c7ad9ec6f31438790" > < td class = "memItemLeft" align = "right" valign = "top" > bool  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classKatabatic_1_1KatabaticEngine.html#a2f4d1f8df0e5dc9c7ad9ec6f31438790" > 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:a2f4d1f8df0e5dc9c7ad9ec6f31438790" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a390b4da0f5d92dc7586dbb35fb33f105" > < td class = "memItemLeft" align = "right" valign = "top" > bool  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classKatabatic_1_1KatabaticEngine.html#a390b4da0f5d92dc7586dbb35fb33f105" > isChip< / a > () const < / td > < / tr >
< tr class = "separator:a390b4da0f5d92dc7586dbb35fb33f105" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:af3c979bc4832c7e9e9b5a1e749e038ff" > < td class = "memItemLeft" align = "right" valign = "top" > bool  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classKatabatic_1_1KatabaticEngine.html#af3c979bc4832c7e9e9b5a1e749e038ff" > isInDemoMode< / a > () const < / td > < / tr >
< tr class = "separator:af3c979bc4832c7e9e9b5a1e749e038ff" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:aef1c27657e9afe69d832ec7c31c546a8" > < td class = "memItemLeft" align = "right" valign = "top" > bool  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classKatabatic_1_1KatabaticEngine.html#aef1c27657e9afe69d832ec7c31c546a8" > doWarnOnGCellOverload< / a > () const < / td > < / tr >
< tr class = "separator:aef1c27657e9afe69d832ec7c31c546a8" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a6ab936a51a682d97d3885fc2805531ce" > < td class = "memItemLeft" align = "right" valign = "top" > bool  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classKatabatic_1_1KatabaticEngine.html#a6ab936a51a682d97d3885fc2805531ce" > doDestroyBaseContact< / a > () const < / td > < / tr >
< tr class = "separator:a6ab936a51a682d97d3885fc2805531ce" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a217f87950b30061709e80f5fce58b5a8" > < td class = "memItemLeft" align = "right" valign = "top" > bool  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classKatabatic_1_1KatabaticEngine.html#a217f87950b30061709e80f5fce58b5a8" > doDestroyBaseSegment< / a > () const < / td > < / tr >
< tr class = "separator:a217f87950b30061709e80f5fce58b5a8" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ae979c1db2aa0d919e58d2d7e1b246c5e" > < td class = "memItemLeft" align = "right" valign = "top" > bool  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classKatabatic_1_1KatabaticEngine.html#ae979c1db2aa0d919e58d2d7e1b246c5e" > doDestroyTool< / a > () const < / td > < / tr >
< tr class = "separator:ae979c1db2aa0d919e58d2d7e1b246c5e" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a5e23c46b801d3049b349b68774a0d298" > < 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#a5e23c46b801d3049b349b68774a0d298" > getName< / a > () const < / td > < / tr >
< tr class = "separator:a5e23c46b801d3049b349b68774a0d298" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:aed8728c9a7c5c82507eb717490e814d6" > < 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#aed8728c9a7c5c82507eb717490e814d6" > getState< / a > () const < / td > < / tr >
< tr class = "separator:aed8728c9a7c5c82507eb717490e814d6" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:af7b5043686805e83dbbd84fd687e25be" > < td class = "memItemLeft" align = "right" valign = "top" > unsigned int  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classKatabatic_1_1KatabaticEngine.html#af7b5043686805e83dbbd84fd687e25be" > getFlags< / a > (unsigned int mask) const < / td > < / tr >
< tr class = "separator:af7b5043686805e83dbbd84fd687e25be" > < 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-08-19 06:27:09 -05:00
< tr class = "memitem:ae03bde33b07beff91870e3922696ff8f" > < 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#ae03bde33b07beff91870e3922696ff8f" > getRoutingGauge< / a > () const < / td > < / tr >
< tr class = "separator:ae03bde33b07beff91870e3922696ff8f" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a93f9c18075b02f7fd7ba03d951f6be56" > < 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#a93f9c18075b02f7fd7ba03d951f6be56" > getLayerGauge< / a > (size_t depth) const < / td > < / tr >
< tr class = "separator:a93f9c18075b02f7fd7ba03d951f6be56" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a3dcc03dc20b0bdca03772901316ba6b3" > < 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#a3dcc03dc20b0bdca03772901316ba6b3" > getRoutingLayer< / a > (size_t depth) const < / td > < / tr >
< tr class = "separator:a3dcc03dc20b0bdca03772901316ba6b3" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a2b7ddb281e0b785b5d28d284bdd1f77c" > < 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#a2b7ddb281e0b785b5d28d284bdd1f77c" > getContactLayer< / a > (size_t depth) const < / td > < / tr >
< tr class = "separator:a2b7ddb281e0b785b5d28d284bdd1f77c" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a0702328522e94ca9705222cd5b9e9c6d" > < 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#a0702328522e94ca9705222cd5b9e9c6d" > getGCellGrid< / a > () const < / td > < / tr >
< tr class = "separator:a0702328522e94ca9705222cd5b9e9c6d" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a7b752887b598b0244207f36eb13b9149" > < 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#a7b752887b598b0244207f36eb13b9149" > getRoutingNets< / a > () const < / td > < / tr >
< tr class = "separator:a7b752887b598b0244207f36eb13b9149" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ae375ec4d6fe84babba01c056a32d5a83" > < 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#ae375ec4d6fe84babba01c056a32d5a83" > getGlobalThreshold< / a > () const < / td > < / tr >
< tr class = "separator:ae375ec4d6fe84babba01c056a32d5a83" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a1563b5789b3cd5db8dc6fc1cc069dc82" > < td class = "memItemLeft" align = "right" valign = "top" > float  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classKatabatic_1_1KatabaticEngine.html#a1563b5789b3cd5db8dc6fc1cc069dc82" > getSaturateRatio< / a > () const < / td > < / tr >
< tr class = "separator:a1563b5789b3cd5db8dc6fc1cc069dc82" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a929aa539d03f19c7edbf6b34d7ec30a3" > < td class = "memItemLeft" align = "right" valign = "top" > size_t  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classKatabatic_1_1KatabaticEngine.html#a929aa539d03f19c7edbf6b34d7ec30a3" > getSaturateRp< / a > () const < / td > < / tr >
< tr class = "separator:a929aa539d03f19c7edbf6b34d7ec30a3" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a7b6417a63eaf4f4d3f423dbdb8c13302" > < 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#a7b6417a63eaf4f4d3f423dbdb8c13302" > getExtensionCap< / a > () const < / td > < / tr >
< tr class = "separator:a7b6417a63eaf4f4d3f423dbdb8c13302" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a53565592ca14ec9f302d068327d846c8" > < 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#a53565592ca14ec9f302d068327d846c8" > getChipTools< / a > () const < / td > < / tr >
< tr class = "separator:a53565592ca14ec9f302d068327d846c8" > < 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-08-19 06:27:09 -05:00
< tr class = "memitem:a1b196d124bb66595a760ccc9b901d78b" > < td class = "memItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classKatabatic_1_1KatabaticEngine.html#a1b196d124bb66595a760ccc9b901d78b" > printMeasures< / a > (const string & ) const < / td > < / tr >
< tr class = "separator:a1b196d124bb66595a760ccc9b901d78b" > < 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-08-19 06:27:09 -05:00
< tr class = "memitem:abb2b28adfaca2cc36716db41b093f355" > < td class = "memItemLeft" align = "right" valign = "top" > bool  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classKatabatic_1_1KatabaticEngine.html#abb2b28adfaca2cc36716db41b093f355" > 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:abb2b28adfaca2cc36716db41b093f355" > < 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-08-19 06:27:09 -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-08-19 06:27:09 -05:00
< li > < b > EngineDriving< / b > : < em > during< / em > the stage of stripping all the decorations the tool has added over the < a class = "elRef" doxygen = "/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href = "../hurricane/namespaceHurricane.html" > Hurricane< / a > 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-08-19 06:27:09 -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 < a class = "elRef" doxygen = "/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href = "../hurricane/namespaceHurricane.html" > Hurricane< / a > 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-08-19 06:27:09 -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-08-19 06:27:09 -05:00
< a class = "anchor" id = "a92ed88f9aecd2f195089c4029fa8bcc7" > < / a >
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-08-19 06:27:09 -05:00
< a class = "anchor" id = "ab877a64c314024602cfb04631ebfbfc4" > < / a >
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-08-19 06:27:09 -05:00
< a class = "anchor" id = "a802eee6265da8d536db52d412f8a4afd" > < / a >
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-08-19 06:27:09 -05:00
< a class = "anchor" id = "a2f4d1f8df0e5dc9c7ad9ec6f31438790" > < / a >
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-08-19 06:27:09 -05:00
< p > 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-08-19 06:27:09 -05:00
< a class = "anchor" id = "a390b4da0f5d92dc7586dbb35fb33f105" > < / a >
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-08-19 06:27:09 -05:00
< p > References < a class = "el" href = "classKatabatic_1_1ChipTools.html#a390b4da0f5d92dc7586dbb35fb33f105" > ChipTools::isChip()< / a > .< / p >
2018-06-06 11:42:26 -05:00
< / div >
< / div >
2018-08-19 06:27:09 -05:00
< a class = "anchor" id = "af3c979bc4832c7e9e9b5a1e749e038ff" > < / a >
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-08-19 06:27:09 -05:00
< p > Referenced by < a class = "el" href = "classKatabatic_1_1Session.html#a037c7ec3b18ec43973f2e6fe3a172000" > Session::isInDemoMode()< / a > .< / p >
2018-06-06 11:42:26 -05:00
< / div >
< / div >
2018-08-19 06:27:09 -05:00
< a class = "anchor" id = "aef1c27657e9afe69d832ec7c31c546a8" > < / a >
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-08-19 06:27:09 -05:00
< p > Referenced by < a class = "el" href = "classKatabatic_1_1Session.html#ad41e6fb02bd7bb01c27fb6aae36f0ddc" > Session::doWarnGCellOverload()< / a > .< / p >
2018-06-06 11:42:26 -05:00
< / div >
< / div >
2018-08-19 06:27:09 -05:00
< a class = "anchor" id = "a6ab936a51a682d97d3885fc2805531ce" > < / a >
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-08-19 06:27:09 -05:00
< a class = "anchor" id = "a217f87950b30061709e80f5fce58b5a8" > < / a >
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-08-19 06:27:09 -05:00
< a class = "anchor" id = "ae979c1db2aa0d919e58d2d7e1b246c5e" > < / a >
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-08-19 06:27:09 -05:00
< p > References < a class = "el" href = "namespaceKatabatic.html#ab9e409db5feff0bdbc85e90e2a029cdaafb5f961d4cad2bb9fbda71204061c877" > Katabatic::EngineGutted< / a > .< / p >
2018-06-06 11:42:26 -05:00
< / div >
< / div >
2018-08-19 06:27:09 -05:00
< a class = "anchor" id = "a5e23c46b801d3049b349b68774a0d298" > < / a >
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-08-19 06:27:09 -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-08-19 06:27:09 -05:00
< a class = "anchor" id = "aed8728c9a7c5c82507eb717490e814d6" > < / a >
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-08-19 06:27:09 -05:00
< a class = "anchor" id = "af7b5043686805e83dbbd84fd687e25be" > < / a >
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-08-19 06:27:09 -05:00
< a class = "anchor" id = "adccd6ceec2c68234d3a824ad7ae3954e" > < / a >
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-08-19 06:27:09 -05:00
< a class = "anchor" id = "a9a7fbadfe526875680f698c76adfb128" > < / a >
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-08-19 06:27:09 -05:00
< a class = "anchor" id = "ae03bde33b07beff91870e3922696ff8f" > < / a >
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-08-19 06:27:09 -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-08-19 06:27:09 -05:00
< a class = "anchor" id = "a93f9c18075b02f7fd7ba03d951f6be56" > < / a >
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-08-19 06:27:09 -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-08-19 06:27:09 -05:00
< a class = "anchor" id = "a3dcc03dc20b0bdca03772901316ba6b3" > < / a >
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-08-19 06:27:09 -05:00
< a class = "anchor" id = "a2b7ddb281e0b785b5d28d284bdd1f77c" > < / a >
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-08-19 06:27:09 -05:00
< a class = "anchor" id = "a0702328522e94ca9705222cd5b9e9c6d" > < / a >
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-08-19 06:27:09 -05:00
< p > 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-08-19 06:27:09 -05:00
< a class = "anchor" id = "a7b752887b598b0244207f36eb13b9149" > < / a >
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-08-19 06:27:09 -05:00
< a class = "anchor" id = "ae375ec4d6fe84babba01c056a32d5a83" > < / a >
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-08-19 06:27:09 -05:00
< a class = "anchor" id = "a1563b5789b3cd5db8dc6fc1cc069dc82" > < / a >
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-08-19 06:27:09 -05:00
< p > Referenced by < a class = "el" href = "classKatabatic_1_1Session.html#a266a4079ca235e8fdb622ef4996d324d" > Session::getSaturateRatio()< / a > .< / p >
2018-06-06 11:42:26 -05:00
< / div >
< / div >
2018-08-19 06:27:09 -05:00
< a class = "anchor" id = "a929aa539d03f19c7edbf6b34d7ec30a3" > < / a >
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-08-19 06:27:09 -05:00
< p > Referenced by < a class = "el" href = "classKatabatic_1_1Session.html#adfdaa8b3e81de14fce1f99444b35fcda" > Session::getSaturateRp()< / a > .< / p >
2018-06-06 11:42:26 -05:00
< / div >
< / div >
2018-08-19 06:27:09 -05:00
< a class = "anchor" id = "a7b6417a63eaf4f4d3f423dbdb8c13302" > < / a >
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-08-19 06:27:09 -05:00
< a class = "anchor" id = "a53565592ca14ec9f302d068327d846c8" > < / a >
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-08-19 06:27:09 -05:00
< p > Referenced by < a class = "el" href = "classKatabatic_1_1KatabaticEngine.html#a1b7d8ed09a198f7afd6e3ac911f6eb37" > KatabaticEngine::createDetailedGrid()< / a > .< / p >
2018-06-06 11:42:26 -05:00
< / div >
< / div >
2018-08-19 06:27:09 -05:00
< a class = "anchor" id = "aecbe8bdcc61024a7539de3ea932c5e06" > < / a >
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-08-19 06:27:09 -05:00
< p > Referenced by < a class = "el" href = "classKatabatic_1_1KatabaticEngine.html#a78394ac380a0fa462f268dcc2becc50e" > KatabaticEngine::xmlWriteGCellGrid()< / a > .< / p >
2018-06-06 11:42:26 -05:00
< / div >
< / div >
2018-08-19 06:27:09 -05:00
< a class = "anchor" id = "a78394ac380a0fa462f268dcc2becc50e" > < / a >
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-08-19 06:27:09 -05:00
< p > References < a class = "el" href = "classKatabatic_1_1KatabaticEngine.html#aecbe8bdcc61024a7539de3ea932c5e06" > KatabaticEngine::xmlWriteGCellGrid()< / a > .< / p >
2018-06-06 11:42:26 -05:00
< / div >
< / div >
2018-08-19 06:27:09 -05:00
< a class = "anchor" id = "a2391b9bfcb773398b9661b5ac0ef1a30" > < / a >
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-08-19 06:27:09 -05:00
< a class = "anchor" id = "aeb14f94914af58657a0dc2f50ec98df5" > < / a >
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-08-19 06:27:09 -05:00
< p > Referenced by < a class = "el" href = "classKatabatic_1_1Session.html#af9919aefa1db2478b3d1813c1872d175" > Session::setKatabaticFlags()< / a > .< / p >
2018-06-06 11:42:26 -05:00
< / div >
< / div >
2018-08-19 06:27:09 -05:00
< a class = "anchor" id = "a1a6fac115cb81db48e3ac9ffa0721bb5" > < / a >
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-08-19 06:27:09 -05:00
< a class = "anchor" id = "a1bd1e0104b73d4c558b0e121002796a6" > < / a >
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-08-19 06:27:09 -05:00
< a class = "anchor" id = "ac2b780e06975ce8a0d6ca96f20cb971f" > < / a >
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-08-19 06:27:09 -05:00
< a class = "anchor" id = "ade227e828b8c8fbfce478e353ca3ca59" > < / a >
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-08-19 06:27:09 -05:00
< a class = "anchor" id = "a1b196d124bb66595a760ccc9b901d78b" > < / a >
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-08-19 06:27:09 -05:00
< p > Referenced by < a class = "el" href = "classKatabatic_1_1KatabaticEngine.html#a468eddb683c04cfeea1c5124a39e1f86" > KatabaticEngine::finalizeLayout()< / a > .< / p >
2018-06-06 11:42:26 -05:00
< / div >
< / div >
2018-08-19 06:27:09 -05:00
< a class = "anchor" id = "a1e9bb62be35c6a415a1950c72c1964ef" > < / a >
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-08-19 06:27:09 -05:00
< p > 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-08-19 06:27:09 -05:00
< a class = "anchor" id = "a1b7d8ed09a198f7afd6e3ac911f6eb37" > < / a >
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-08-19 06:27:09 -05:00
< p > References < a class = "el" href = "classKatabatic_1_1GCellGrid.html#a19a45b2e6c6b9ca8898b2fde035d1827" > GCellGrid::create()< / a > , < a class = "el" href = "classKatabatic_1_1KatabaticEngine.html#a53565592ca14ec9f302d068327d846c8" > KatabaticEngine::getChipTools()< / a > , < a class = "el" href = "classKatabatic_1_1BaseGrid.html#ae2bf24a99431664bb5897b122bb15b43" > 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#ab7e3c454272e9a8f2c803e24454d7303" > BaseGrid::getRows()< / a > , < a class = "el" href = "classKatabatic_1_1ChipTools.html#a390b4da0f5d92dc7586dbb35fb33f105" > ChipTools::isChip()< / a > , and < a class = "el" href = "classKatabatic_1_1Session.html#a4da9e28432c1fdb0c754717487d9cc83" > Session::revalidate()< / a > .< / p >
2018-06-06 11:42:26 -05:00
< / div >
< / div >
2018-08-19 06:27:09 -05:00
< a class = "anchor" id = "aaba3b9450c85634131146fb507089f2d" > < / a >
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-08-19 06:27:09 -05:00
< a class = "anchor" id = "a583925cfe4bbadcc1c24fe619debce09" > < / a >
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 >
< dl class = "section user" > < dt > Remark:< / dt > < dd > The tool state must be < b > EngineGlobalLoaded< / b > < em > before< / em > calling this method and will be set to < b > EngineActive< / b > on exit. < / dd > < / dl >
2018-08-19 06:27:09 -05:00
< p > 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-08-19 06:27:09 -05:00
< a class = "anchor" id = "a145b36b18fc9149980c5d6bd4bd10e0d" > < / a >
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-08-19 06:27:09 -05:00
< p > References < a class = "elRef" doxygen = "/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href = "../hurricane/classHurricane_1_1Box.html#acc5d2a8bd02e55b7dd89b2e3eb978574" > Box::getXMax()< / a > , < a class = "elRef" doxygen = "/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href = "../hurricane/classHurricane_1_1Box.html#aface811f07334748f81b547336bb7658" > Box::getXMin()< / a > , < 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#ab694cc5f242e0fe8f8e13ad64d1fd780" > 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#a42ba8048c9dedabd808e7c567264a092" > Box::getYMin()< / a > .< / p >
2018-06-06 11:42:26 -05:00
< / div >
< / div >
2018-08-19 06:27:09 -05:00
< a class = "anchor" id = "ac40754d4a9bd0cf327b5fa088e993897" > < / a >
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-08-19 06:27:09 -05:00
< p > References < a class = "elRef" doxygen = "/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href = "../hurricane/classHurricane_1_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#a8699381234cb33a4191b6f8a7ea299f6" > 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-08-19 06:27:09 -05:00
< a class = "anchor" id = "abb2b28adfaca2cc36716db41b093f355" > < / a >
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-08-19 06:27:09 -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-08-19 06:27:09 -05:00
< a class = "anchor" id = "a77833ce938a430785ba869eedbc2300c" > < / a >
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-08-19 06:27:09 -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-08-19 06:27:09 -05:00
< a class = "anchor" id = "a6957a5830a4d6f1b2daf83a7d98df601" > < / a >
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 >
< dl class = "section user" > < dt > Remark:< / dt > < dd > The < code > net< / code > must have been canonized before this function to be called. < / dd > < / dl >
< / div >
< / div >
2018-08-19 06:27:09 -05:00
< a class = "anchor" id = "ad6b9f7d94ee4a88f12c485e48d1e644a" > < / a >
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-08-19 06:27:09 -05:00
< a class = "anchor" id = "a468eddb683c04cfeea1c5124a39e1f86" > < / a >
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-08-19 06:27:09 -05:00
< p > Transform the < a class = "el" href = "namespaceKatabatic.html" title = "The namespace dedicated to Katabatic. " > Katabatic< / a > wires into the < a class = "elRef" doxygen = "/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href = "../hurricane/namespaceHurricane.html" > Hurricane< / a > data-structure. Mostly by removing the AutoSegment/AutoContact < em > without< / em > removing their < a class = "elRef" doxygen = "/dsk/l1/jpc/coriolis-2.x/src/coriolis/hurricane/doc/hurricane/html/hurricane.tag:../hurricane/" href = "../hurricane/namespaceHurricane.html" > Hurricane< / a > conterparts. May also fill gaps that may have appeared.< / p >
2018-06-06 11:42:26 -05:00
< dl class = "section user" > < dt > Remark:< / dt > < dd > The tool state must be < b > EngineActive< / b > < em > before< / em > calling this method and will be set to < b > EngineGutted< / b > on exit. < / dd > < / dl >
2018-08-19 06:27:09 -05:00
< p > 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#a1b196d124bb66595a760ccc9b901d78b" > 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 >
2018-10-01 09:52:17 -05:00
< td class = "LFooter" > < small > Generated by doxygen 1.8.5 on Mon Oct 1 2018< / 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 >