• 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. Create a library with ddsHiCreateLibrary() function and...

Stats

  • Locked Locked
  • Replies 5
  • Subscribers 144
  • Views 14609
  • 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

Create a library with ddsHiCreateLibrary() function and wait the end of creation to follow my script

CalenZoo
CalenZoo over 10 years ago

Dear All,

I am actually stuck to create a library in my Skill script.

I want to use the function ddsHiCreateLibrary(), automatically update some fields of the pop-up box.

  ddsHiCreateLibrary()
  ddsCreateLibForm->dontBlock>value=nil
  ddsCreateLibForm->Option->value= "Attach to an existing technology library"
  ddsCreateLibForm->LibName->value="061_HPA_Title"
  hiFormDone(ddsCreateLibForm)

But i encoutered two problem:

- The fields update does not work

- And I need that my library is created to follow my script.

Does someone could help me to solve this issue?

Thank you in advance

Best regards,

Patrick

 

  • Cancel
  • theopaone
    theopaone over 10 years ago

    The form is probably blocking so it never gets to your code till it is dismissed and the callback has already been evaluated.

    Do you need the form? You can use procedural interface of ddCreateLib and techBindTechFile to create it and bind the tech file.


    Ted

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

    Thank your for your answer.

    Your proposal works fine but it does not fit to my needs

    In fact, I wish that the the user choose the tech file as it is done in the cadence GUI. In my case it is not always the same techlib so that's why  I had tried this method...

    Patrick

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

    You may have to create a new GUI rather than try to hack that dds form.

    From your initial description, you already have the library name so you can create a custom GUI to prompt for the tech library name and whatever other information you need. That way, you bypass the dds GUI.

    Ted

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

    Thanks Ted, but Unfortunatly it does not answer to my need because I really need the GUI wich let the user chose the tech library listed as in cadence dds form. The tech choice is not always the same and is not obvious to define.

     

    Regards,

     

    Patrick

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

    You will have to duplicate this functionality since the original form is blocking.

    ;; Get all the open tech libraries:

    libList = techGetOpenTechFiles()

    ;; If you want to include the unopened tech libs, use ddGetLibList and
    ;; Figure out the ones which are tech libs: techGetTechFile( libId ) == libId

    ;; Display the library names as a list of choices:

    techLibFieldId = hiCreateCyclicField( ?name '_techLibField

        ?prompt "Tech Lib:"
        ?choices libList~>name
    )

    • 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