1RFLATTENLOFIG(3) MBK LOGICAL UTILITY FUNCTIONS RFLATTENLOFIG(3)
2
3
4
6 rflattenlofig - recursivly flatten a figure
7
9 #include "mlu.h"
10 void rflattenlofig(ptfig, concat, catal)
11 lofig_list ∗ptfig;
12 char concat;
13 char catal;
14
16 ptfig Pointer to a logical figure
17
18 concat Name generation mode
19
20 catal End level choice
21
23 rflattenlofig recursivly flattens all the instances of the figure
24 pointed to by ptfig.
25 The concat argument can take either the value YES in which case the
26 name of the objects coming from instances are named insname'X'object‐
27 name, where 'X' is the caracter set int the MBK_SEPAR(1) environment
28 variable, or the value NO, and then the object name remains inchanged.
29 This is quite dangerous since name unicity is no more warrantied, and
30 may cause the flatten to fail. See MBK_SEPAR(1), mbkenv(3) and concat‐
31 name(3) for details.
32 The catal argument may be set to NO, in which case flattening stops at
33 the transistor level, all hierachies and instances have desapeard, only
34 terminal elements remains. If set to YES, flattening stops when it
35 encounters an instance model being present in the catalog file, set by
36 the MBK_CATAL_NAME(1) environment variable. See MBK_CATAL_NAME(1) and
37 incatalog(3) for details.
38
40 No errors can directly result from a call to rflattenlofig, but since
41 it uses many other mbk functions, it may be a good error starting
42 point.
43
45 #include "mlu.h"
46 void flatten_my_amd2901()
47 {
48 loins_list ∗pt;
49 pt = getlofig("my_amd2901", 'A');
50 rflattenlofig(pt, YES, YES);
51 pt->NAME = "my_flattened_amd2901";
52 savelofig(pt);
53 }
54
56 mbk(1), incatalog(3), mbkenv(3), lofig(3), addlofig(3), getlofig(3),
57 dellofig(3), loadlofig(3), savelofig(3), flattenlofig(3),
58 MBK_CATAL_NAME(1).
59
60
61
62
63
64
65ASIM/LIP6 October 1, 1997 RFLATTENLOFIG(3)