Provided by: alliance_5.1.1-1.1_amd64 bug

NAME

       rflattenlofig - recursivly flatten a figure

SYNOPSYS

       #include "mlu.h"
       void rflattenlofig(ptfig, concat, catal)
       lofig_list ∗ptfig;
       char concat;
       char catal;

PARAMETERS

       ptfig               Pointer to a logical figure

       concat              Name generation mode

       catal               End level choice

DESCRIPTION

       rflattenlofig recursivly flattens all the instances of the figure pointed to by ptfig.
       The  concat  argument  can  take  either the value YES in which case the name of the objects comming from
       instances are named insname'X'objectname, where 'X' is the caracter set int the MBK_SEPAR(1)  environment
       variable, or the value NO, and then the object name remains inchanged. This is quite dangerous since name
       unicity is no more warrantied, and may cause  the  flatten  to  fail.  See  MBK_SEPAR(1),  mbkenv(3)  and
       concatname(3) for details.
       The  catal  argument  may  be  set  to  NO,  in  which case flattening stops at the transistor level, all
       hierachies and instances have desapeard, only terminal elements remains. If set to YES, flattening  stops
       when  it  encounters  an  instance model beeing present in the catalog file, set by the MBK_CATAL_NAME(1)
       environment variable.  See MBK_CATAL_NAME(1) and incatalog(3) for details.

ERRORS

       No errors can directly result from a call to rflattenlofig, but since it uses many other  mbk  functions,
       it may be a good error starting point.

EXAMPLE

       #include "mlu.h"
       void flatten_my_amd2901()
       {
       loins_list ∗pt;
          pt = getlofig("my_amd2901", 'A');
          rflattenlofig(pt, YES, YES);
          pt->NAME = "my_flattened_amd2901";
          savelofig(pt);
       }

SEE ALSO

       mbk(1),   incatalog(3),   mbkenv(3),   lofig(3),  addlofig(3),  getlofig(3),  dellofig(3),  loadlofig(3),
       savelofig(3), flattenlofig(3), MBK_CATAL_NAME(1).