Provided by: alliance_5.0-20110203-4_amd64 bug

NAME

       GENLIB_PLACE_ON - place a physical instance in the current figure matching connectors

SYNOPSYS

       #include <genlib.h>
       void GENLIB_PLACE_ON(figname,ins1,con1,index1,symetry,ins2,con2,index2)
       char ∗figname, ∗ins1, ∗con1, ∗ins2, ∗con2;
       char symetry;
       long index1, index2;

PARAMETERS

       figname             Name of the layout figure to be instanciated

       ins1                Name to be given to the instance in the model

       con1                Name of the connector of the instance to be used for placement

       index1              Index of the connector, or reference, con1 of the model to be used for
                           placement

       symetry             Geometrical operation to be performed on the  instance  before  beeing
                           placed

       ins2                Name of the instance to be used for relative placement

       con2                Name of the connector of the instance ins2 on which the placement will
                           take place

       index2              Index of the connector con2 of the instance to be  used  for  relative
                           placement

DESCRIPTION

       PLACE_ON  add  an  instance  in  the  current  layout  cell. The bottom left corner of the
       instance of the model modelname is placed, after beeing symetrized and/or rotated, at  (x,
       y)  coordinates.   The  placed  instance becomes the new "reference instance", used in the
       relative placement functions.
       The insname is the name given to the instance and must be  unique  at  a  given  hierarchy
       level.
       The symetry argument can take eight legal values :

       NOSYM               no geometrical operation is performed

       SYM_Y               Y becomes -Y, that means toward X axe symetry

       SYM_X               X becomes -X, that means toward Y axe symetry

       SYMXY               X becomes -X, Y becomes -Y

       ROT_P               a positive 90 degrees rotation take place

       ROT_M               a negative 90 degrees rotation take place

       SY_RP               Y becomes -Y, and then a positive 90 degrees rotation take place

       SY_RM               Y becomes -Y, and then a negative 90 degrees rotation take place

       The model of the figure to be placed must be available, on disk or in memory.  The path to
       the library is  specified  in  the  MBK_CATA_LIB  (1)  and  MBK_WORK_LIB  (1)  environment
       variables, and its format is given by the MBK_IN_PH (1) environment variable.

ERRORS

       "GENLIB_PLACE_ON impossible : missing GENLIB_DEF_PHFIG"
              No  figure  has  been yet specified by a call to DEF_PHFIG. So it isn't possible to
              place an instance inside it.  you must  call  DEF_PHFIG  before  any  other  layout
              action.
       "illegal addphins : transformation is x in insname"
              The symetry parameter is not one of the define given, but has the integer value x.

EXAMPLE

       #include <genlib.h>
       main()
       {
            /∗ Create a figure to work on  ∗/
            GENLIB_DEF_PHFIG("cell");
            /∗ Place two instances ∗/
            GENLIB_PLACE_ON("gapg0_b","ins1", NOSYM, 0L, 0L);
            GENLIB_PLACE_ON("gapg8_b","ins2", SYM_X, 80L, 100L);
            /∗ Save all that on disk ∗/
            GENLIB_SAVE_PHFIG();
       }

SEE ALSO

       genlib(1),       GENLIB_DEF_PHFIG(3),      GENLIB_SAVE_PHFIG(3),      GENLIB_PLACE_TOP(3),
       GENLIB_PLACE_BOTTOM(3),  GENLIB_PLACE_LEFT(3),   GENLIB_PLACE_RIGHT(3),   MBK_CATA_LIB(1),
       MBK_WORK_LIB(1), MBK_IN_PH(1).