table of contents
LOADLOFIG(3) | MBK LOGICAL UTILITY FUNCTIONS | LOADLOFIG(3) |
NAME¶
loadlofig - load a new logical cell model from diskORIGIN¶
This software belongs to the ALLIANCE CAD SYSTEM developed by the ASIM team at LIP6 laboratory of Université Pierre et Marie CURIE, in Paris, France.SYNOPSYS¶
#include "mlo.h" void loadlofig(ptfig, figname, mode) lofig_list ∗ptfig; char ∗figname; char mode;
PARAMETERS¶
- ptfig
- Pointer to an allocated but empty lofig
- figname
- Name of the figure to be loaded
- mode
- Loading mode
DESCRIPTION¶
loadlofig fills the lofig pointed to by ptfig with the contents of a disk file called figname. The loading mode may be either 'A', then the entire content is parsed, or 'P' then only connectors and extrernal signals are loaded in memory, or 'C', that loads the "complement" of an already partially loaded cell in order to keep the same pointer when accessing the same file.ERRORS¶
Some errors resulting from a call to loadlofig are due to the parsers, and are prefixed by the parser format (pf).The environment variable MBK_IN_LO is not set to a
legal logical format.
"∗∗∗ mbk error ∗∗∗ pfloadlofig :
could not open file figname"
No file called figname.ext, where ext is
the file format extension, has been found in the directories set by the
environment.
"∗∗∗ mbk error ∗∗∗ pfloadlofig :
syntax error line x parsing figname.ext"
Either the file has been corrupted and its syntax is not
legal, or there is a bug in the given parser.
EXAMPLE¶
#include "mlo.h" lofig_list ∗get_the_lofig(figname, mode) char ∗figname; char mode; { lofig_list ∗pt; for (pt = HEAD_LOFIG; pt; pt = pt->NEXT) /∗ scan figure list ∗/ if (!strcmp(pt->NAME, figname)) break; if (!pt) { /∗ figure doesn't exist ∗/ pt = addlofig(figname); pt->MODE = mode == 'A' ? mode : 'P'; loadlofig(pt, figname, pt->MODE); return pt; } if (ptfig->MODE != 'A') { /∗ figure exists interface only ∗/ if (mode == 'A') { pt->MODE = 'A'; loadlofig(pt, figname, 'C'); return pt; } else return pt; } else /∗ figure exists interface and body ∗/ return pt; }
SEE ALSO¶
mbk(1), mbkenv(3), lofig(3), addlofig(3), getlofig(3), dellofig(3), savelofig(3), flattenlofig(3), rflattenlofig(3), MBK_IN_LO(1), MBK_WORK_LIB(1), MBK_CATA_LIB(1).BUG REPORT¶
This tool is under development at the ASIM department of the LIP6 laboratory.October 1, 1997 | ASIM/LIP6 |