rflattenphfig

RFLATTENPHFIG(3)        MBK PHYSICAL UTILITY FUNCTIONS        RFLATTENPHFIG(3)



NAME
       rflattenphfig - recursivly flatten a figure


ORIGIN
       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.

       Web : http://asim.lip6.fr/recherche/alliance/
       E-mail : alliance-users@asim.lip6.fr


SYNOPSYS
       #include "mph.h"
       void rflattenphfig(ptfig, concat, catal)
       phfig_list ∗ptfig;
       char concat;
       char catal;

PARAMETERS
       ptfig               Pointer to a physical figure

       concat              Name generation mode

       catal               End level choice

DESCRIPTION
       rflattenphfig 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 rflattenphfig, but since
       it uses many other mbk functions, it may be a good error starting
       point.

EXAMPLE
       #include "mph.h"
       void flatten_my_amd2901()
       {
       phins_list ∗pt;
          pt = getphfig("my_amd2901", 'A');
          rflattenphfig(pt, YES, YES);
          pt->NAME = "my_flattened_amd2901";
          savephfig(pt);
       }

SEE ALSO
       mbk(1), incatalog(3), mbkenv(3), phfig(3), addphfig(3), getphfig(3),
       delphfig(3), loadphfig(3), savephfig(3), flattenphfig(3),
       MBK_CATAL_NAME(1).




BUG REPORT
       This tool is under development at the ASIM department of the LIP6
       laboratory.
       We need your feedback to improve documentation and tools.






ASIM/LIP6                       October 1, 1997               RFLATTENPHFIG(3)