• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. Allegro X Capture CIS
  3. Need help extracting net alias names

Stats

  • State Not Answered
  • Replies 2
  • Subscribers 43
  • Views 2708
  • Members are here 0
More Content

Need help extracting net alias names

AB_1717543042707
AB_1717543042707 over 1 year ago

Hello,
I want to see if there is a way to extract the aliases of a net using TCL. I believe the command I am looking for is GetNetAliasArray() however, I can not figure out how to get the output to readable text. The command GetNetAliasArray() returns DboPtrArray and I can't find the TCL helper command to convert this data type into text, if that's even how you do it. If anyone knows how to do this or if there is a different approach to this I would appreciate it.

  • Sign in to reply
  • Cancel
  • CadAP
    0 CadAP over 1 year ago

    Hi  AB_1717543042707,

    Please find the below two code for extracting the net alias name:

    To run the first code(below) , you need to select the couple of nets(see below screen shot) from the open page and source the below tcl code:

    set lSelectedWires [GetSelectedObjects]
    set lAliasName [DboTclHelper_sMakeCString]
    foreach lWire $lSelectedWires {
    set lAliasIter [$lWire NewAliasesIter $lStatus]
    #get the first alias of wire
    set lAlias [$lAliasIter NextAlias $lStatus]
    while { $lAlias!=$lNullObj} {
    #placeholder: do your processing on $lAlias

    puts $lAlias
    $lAlias GetName $lAliasName
    puts [DboTclHelper_sGetConstCharPtr $lAliasName]
    #get the next alias of wire
    set lAlias [$lAliasIter NextAlias $lStatus]
    }
    delete_DboWireAliasesIter $lAliasIter

    }

    For second code(below)  you need to select the design from the Project manager of Capture(see below screenshot) and source the below tcl code:

    set lNets [CapFindObjects $COrFindFilterDlg_NETS {*}]
    set lStatus [DboState]
    set netname [DboTclHelper_sMakeCString]
    set lNullObj NULL
    foreach lNet $lNets {

    set lWiresIter [$lNet NewWiresIter $lStatus]
    #get the first wire
    set lWire [$lWiresIter NextWire $lStatus]
    puts $lWire
    set lObjectType [$lWire GetObjectType]
    if {$lObjectType == $::DboBaseObject_WIRE_SCALAR} {

    set lAliasIter [$lWire NewAliasesIter $lStatus]
    # #get the first alias of wire
    set lAlias [$lAliasIter NextAlias $lStatus]
    while { $lAlias!=$lNullObj} {
    #placeholder: do your processing on $lAlias
    #get the next alias of wire
    puts $lAlias
    set lAlias [$lAliasIter NextAlias $lStatus]
    }

    # $lWire GetNetName $netname
    # puts [DboTclHelper_sGetConstCharPtr $netname]
    #placeholder: do your processing on Wire scalar $lWire
    }
    #get the next wire
    delete_DboWireAliasesIter $lAliasIter
    set lWire [$lWiresIter NextWire $lStatus]
    }

    Hope this will help you to get your desired result.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • AB_1717543042707
    0 AB_1717543042707 over 1 year ago in reply to CadAP

    No this wasn't quite what I was looking for. The real problem I was having was that I am trying to get every name of a wire on a page. I already have code to iterate over every schematic, every page, and every wire. However, when I use the GetNetName command for my wire, it only returns the top name for the wire. In my design, I have wires that have more than one name. I want to find a way to extract all of the names of each wire. Do you know how I can do this? I appreciate it.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
Cadence Guidelines

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information