Is there somene some documentation of the OpenDB A...
# openroad
t
Is there somene some documentation of the OpenDB API ? Sometime I can sort of figure it out just using auto-completion but ... sometime it's really not all that clear how it works.
Ok, I figured it out for what I needed this time, but still some good reference would be useful for the future.
a
The OpenDB API is documented in db.h. This provides the C++ interface, but everything there is automatically converted to Tcl (and Python, I believe?) using SWIG. So for example if you have the following in C++
Copy code
dbSite site;
cout << site.getHeight();
Would be equivalent to the following Tcl
Copy code
puts [$site getHeight]
after going through all the accessors to get the chip, block, tech, etc.
There is some intermittent effort to build a doxygen page for it, such as PR 4059
t
Thanks for the pointer ! Usueful reference for the future for the API itself. But I was looking also for a higher layer description, like ... what's the difference between TechVia and BoxVia or what's a SWire and why is it different from a normal wire, that kind of high level description of the concepts involved.
Mmm, I guess there is actually some of those concepts explained in the file, nice.
a
OpenDB follows the LEF/DEF conventions somewhat closely, so if you take a look at the LEF/DEF reference manual or even some OpenAccess docs, there may be better explanations
👌 1