![]() |
![]()
| ![]() |
![]()
NAMEloadphfig - load a new physical cell model from disk See the file man1/alc_origin.1. SYNOPSIS#include "mph.h" void loadphfig(ptfig, figname, mode) phfig_list ∗ptfig; char ∗figname; char mode; PARAMETERSDESCRIPTIONloadphfig fills the phfig 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, abutment box, and through routes are loaded, or 'C',
that finishes to fill an already loaded figure in 'P' mode, in order
to have it all in memory. This last mode allows to keep the same
ptfig pointer when reaccessing the same file.
ERRORSSome errors resulting from a call to loadphfig are due to
the parsers, and are prefixed by the parser format (pf).
The environment variable MBK_IN_PH is not set to a
legal physical format.
"∗∗∗ mbk error ∗∗∗ pfloadphfig
: 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 ∗∗∗ pfloadphfig
: 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 "mph.h" phfig_list ∗get_the_phfig(figname, mode) char ∗figname; char mode; { phfig_list ∗pt; for (pt = HEAD_PHFIG; pt; pt = pt->NEXT) /∗ scan figure list ∗/ if (!strcmp(pt->NAME, figname)) break; if (!pt) { /∗ figure doesn't exist ∗/ pt = addphfig(figname); pt->MODE = mode == 'A' ? mode : 'P'; loadphfig(pt, figname, pt->MODE); return pt; } if (ptfig->MODE != 'A') { /∗ figure exists interface only ∗/ if (mode == 'A') { pt->MODE = 'A'; loadphfig(pt, figname, 'C'); return pt; } else return pt; } else /∗ figure exists interface and body ∗/ return pt; } SEE ALSOmbk(1), mbkenv(3), phfig(3), addphfig(3), getphfig(3), delphfig(3), savephfig(3), flattenphfig(3), rflattenphfig(3), MBK_IN_PH(1), MBK_WORK_LIB(1), MBK_CATA_LIB(1). See the file man1/alc_bug_report.1.
|