• 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. Custom IC SKILL
  3. need help with three skill commands...please!

Stats

  • Locked Locked
  • Replies 10
  • Subscribers 144
  • Views 15701
  • Members are here 0
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

need help with three skill commands...please!

boomme
boomme over 10 years ago

I have what I  3   questions.

question 1...

for the skill command...    dbSetShapeColorLocked(d_shapeID    g_setLocked)

what are the values for the variable g_SetLocked ?

(I am trying to unlock the shape's colors so I can make a hotkey toggle to switch colors.)

question 2...

what is the skill command to highlight a single shape?

question 3...

I am trying to use the following common: dbIsShapeColorLocked(obj)

where obj is a shape ID... as in: 

sel = geGetSelSet()

foreach(obj sel

if(dbIsShapeColorLocked(obj) == "t" 

...

the dbIsShapeColorLocked command does not seem to be returning "t" or "nil" but rather a database ID like:

db:0x7838b470

any idea why?

Thanks for any and all help!

-T

  • Cancel
  • boomme
    boomme over 10 years ago
    so... I've figured out the answer to question #3.... no quotes around the t or nil. I'm still needing some help with questions 1 & 2. Sure hope someone comes to my rescue.
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • boomme
    boomme over 10 years ago
    well... no I figured out question #1 on my own...same answer... get rid of the quotes. Still looking for the answer to #2 .... how can I highlight single shape (not a net)?
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • theopaone
    theopaone over 10 years ago
    Questions 1 and 3 are related to double patterning while #2 uses a different group of functions, the hilight set. You first have to create the hilight set with geCreateHilightSet. Then you enable it, and push it to the stack: gePushHilightStack. Finally you add objects to the set geAdHilightFig and they are highlighted. The documentation is in the SKILL Design Environment document.
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • boomme
    boomme over 10 years ago

    Thank you for answering Theo...

    So... FYI- I have trouble with the skill finder - it lists generic variables such as:

    geCreateHilightSet( 

    d_cellview
    l_layerPurposePair
    [ g_notGlobal ]
    )

    geAddHilightFig( 

    g_hlSetId
    d_figId
    [ g_drawAll ]
    )

    but doesn't list what are valid entries for [ g_notGlobal ] or [ g_drawAll ] - I'm guessing these are T or NIL values?

    trying to use your psuedo code instructions above, I have written the following code... it does not work....

    cv = geGetEditRep()

    geSelectAllFig(cv)

    sel = geGetSelSet()

    pp = list("hilite" "drawing")

    HilightID = geCreateHilightSet(cv pp t)

    gePushHilightStack(HilightID)

    foreach(obj sel

    geAddHilightFig(HilightID obj)

    ....so, what am I not doing right?

    Thanks again for your help.

    -Terry

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 10 years ago

    Hi Terry,

    First of all, the finder is just a very brief reminder of the arguments and basic outline of the function. More detail is found in the full documentation which expands (usually) on each argument and hopefully gives examples. So please look in cdnshelp for more detail.

    I suspect the main issue you have is that you have not enabled the hilight set. I don't have the documentation to hand, but it is something like:

    HilightID~>enabled=t

    (I can't remember whether it is enabled or enable). Without this, you won't see the set.

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • theopaone
    theopaone over 10 years ago

    Thanks Andrew.

    I don't use finder very much because of the limited amount of help available, I may use it to get a listing of potential commands -> geHi* and then look in cdnshelp for more detail.

    I forgot about enabling the hilight set, I have encapsulated the hilight commands so I can highlight an object and it will create the hilight set without an explicit call.

    The enable action is hilightId->enable = t

    If you create a non global set you have to push the hilight set with gePushHilightStack(hilightId)


    Ted

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • boomme
    boomme over 10 years ago

    HAAAA!  that worked guys.... I say thank ya very much.

    so...

    last questions.  what's the command to unhighlight these guys now?

    and... where do I find this cdnshelp thingy???... Is it under the main Cadence help pulldown? if so, what title topic?

    I'm a contractor, so i might have limited access.

    -terry

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • boomme
    boomme over 10 years ago
    figured out the unhighlite... but still would like to know where to find the cdnshelp thing - thanks again so much.
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 10 years ago

    You could either do `cds_root virtuoso`/tools/bin/cdnshelp from UNIX (this may be in your search path anyway, so just typing "cdnshelp" may work - otherwise it's probably a function of how it has been set up at the site you're working at, so you might need to ask one of the local CAD people?) or just use Help->Virtuoso Documentation from the CIW. You might need to do View->Show Navigation once it has started.

    Then you can search for the function you want.

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • boomme
    boomme over 10 years ago
    Thanks Andrew, wish I had known about how to get to this resource 15 years ago... probably would have saved a a couple of years worth of hacking. :)
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel

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