Code Flow for Converting ODB to GDSII
The ODB2GDS library has a lot of function calls and many arguments. This page should help the programmer understand which functions and arguments are most useful for converting ODB++ to GDSII.
Data The Calling Program needs to Know
Directory where the odb2gds library is located
Data The Calling Program needs to Collect from the User
input ODB file?
where is it located?
is it a .tgz/tar file or a directory structure
where to store temporary data?
what step and what layer(s) to convert
name and location of the output GDSII file?
structure name of the GDSII file
output data on which GDSII layer?
Units and Grid (resolution) of the output GDSII file
polygon output format (cut lines or butting)
max number of vertices in the output GDSII
arc control settings
should the output data be scaled?
should output use Step/Repeat?
Getting the Input File and Location
This does not need the library. A simple browse dialog along with a radio button asking whether the input is a file or directory should be sufficient. (If the user selects directory, you may wish to check for the presence of a subdirectories named "steps" and "matrix" These must be present; if not, inform the user that he has not selcted a valid directory.
You could also ask the user where to store "temporary" data that ODB2GDS will produce. This location will be needed when calling the function that opens the ODB++ data.
Getting the STEP/LAYER to Convert
ODB is organized by Steps and Layers similar to GDSII structures and layers. It is unlikely that the user knows the step name and layer name.So you need to present the user the available steps/layers and let him choose a combination.
To do this you need to use the library function, openODB. This will open and scan the ODB++ file.
There are quite a few convenience functions for getting STEP/LAYER information. The highest level call, getODBStepInfoList, returns a structure with all the information you will need.
Configuring the Conversion
The calling application should now collect user input that controls the conversion. This information will be used to build an argument list for the function, convertODBInput.
A dialog is normally created that enables the user to select the options which are passed as arguments.
Calling the Conversion function
Now that all the information you need to call convertODBInput has been collected, you can build your argument list and call the function.
Note that this library produces one layer per output file only. If you need to convert 10 ODB layers into GDSII you will need to repeat this function 10 times; each time changing the ODB layer.
If you want the user to see progress as the conversion proceeds then add -show_progress to the argument list.
Closing the Library
When done, close the library with closeODB .
|Download||Revision History||Program Usage||Library||Price|