• 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. How to stop when using dbGetTrueOverlaps ?

Stats

  • Locked Locked
  • Replies 8
  • Subscribers 143
  • Views 16154
  • 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

How to stop when using dbGetTrueOverlaps ?

Charley Chen
Charley Chen over 14 years ago

Dear All,

I want to know how many shapes in this cellview (within hierarchy or not).

When using dbGetTrueOverlaps , if has more and more shapes even in Level 0 ,

It will take long time to ,,,,, .I use Ctrl + c , but it doesn't work unless kill the process .

 Can it counts when more than 5000 , it will stop or ... .

 

Thank you,

Charley

  • Cancel
Parents
  • skillUser
    skillUser over 14 years ago

    Hi Charley,

    for the current level of hierarchy it is easy enough to find the number of shapes.  Assuming that "cv" stores the cellview database id, then length(cv~>shapes) gives the count of shapes (level 0) in this cellview.  As far as I am aware, unless you control the hierarchy depth yourself, there is no way to stop a function like dbGetOverlaps or dbGetTrueOverlaps mid-operation.  You could use the previous code suggestion as a starting place.  Then you might just call dbGetTrueOverlaps for 1 level of hierarchy, and if the number back is not too high, then progress onto level 2 etc. But this method would suffer the disadvantage of repeating work and getting progressively slower.  Another method might involve descending into the instances in a programmatic way; if you keep count as you go, you can choose to abort further processing.  Also you might have a global "stop" type flag that if set also prevents further processing - if the code encounters this setting during processing it stops.

     However, as I said, unless you control the hierarchy yourself I don't see how you might do this.

    Regards,

    Lawrence.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • skillUser
    skillUser over 14 years ago

    Hi Charley,

    for the current level of hierarchy it is easy enough to find the number of shapes.  Assuming that "cv" stores the cellview database id, then length(cv~>shapes) gives the count of shapes (level 0) in this cellview.  As far as I am aware, unless you control the hierarchy depth yourself, there is no way to stop a function like dbGetOverlaps or dbGetTrueOverlaps mid-operation.  You could use the previous code suggestion as a starting place.  Then you might just call dbGetTrueOverlaps for 1 level of hierarchy, and if the number back is not too high, then progress onto level 2 etc. But this method would suffer the disadvantage of repeating work and getting progressively slower.  Another method might involve descending into the instances in a programmatic way; if you keep count as you go, you can choose to abort further processing.  Also you might have a global "stop" type flag that if set also prevents further processing - if the code encounters this setting during processing it stops.

     However, as I said, unless you control the hierarchy yourself I don't see how you might do this.

    Regards,

    Lawrence.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Children
No Data

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