Provided by: alliance_5.1.1-1.1build1_amd64 bug

NAME

       GENLIB_PLACE_SEG_REF - put a segment on a reference belonging an instance in the current figure

SYNOPSYS

       #include <genlib.h>
       void GENLIB_PLACE_SEG_REF(insname, refname, layer, width, face)
       char  ∗insname, ∗refname;
       char layer, face;
       long width;

PARAMETERS

       insname             Name of the instance in the which the reference is to be searched for

       refname             Name of the reference to be used for the segment placement

       layer               Physical layer of the segment

       width               Width of the segment

       face                Face of the figure on which the segment is to be placed

DESCRIPTION

       PLACE_SEG_REF  places  a segment regarding the position of the reference, refname, in the instance called
       insname.  The segment coordinates are computed from the reference  coordinates  and  the  face  given  as
       argument.
       Two behaviours are expected, regarding the reference coordinates:

       the reference is on the given face of the abutment box
                           the segment is not added, since it would have zero as length

       the reference is anywhere else
                           A  segment  is  drawn between the reference and the abutment box,  and is given layer
                           and width as attributs.  One of its endpoint is given by the  reference  coordinates,
                           the  other  one  comes  from  the  face.   The  face  argument is meant in the placed
                           instance, and can take any of the following values:

       NORTH               the other endpoint has, for absissa, the x coordinate of the top of the abutment  box
                           of the cell, and for ordinate, the y coordinate of the reference.

       SOUTH               the  other  endpoint has, for absissa, the x coordinate of the bottom of the abutment
                           box of the cell, and for ordinate, the y coordinate of the reference.

       EAST                the other endpoint has, for absissa, the  x  coordinate  of  the  reference  and  for
                           ordinate, the y coordinate of the right of the abutment box of the cell.

       WEST                the  other  endpoint  has,  for  absissa,  the  x coordinate of the reference and for
                           ordinate, the y coordinate of the left of the abutment box of the cell.

ERRORS

       "GENLIB_PLACE_SEG_REF impossible : missing GENLIB_DEF_PHFIG"
              No figure has been yet specified by a call to DEF_PHFIG. So it isn't possible to place a reference
              inside it.  you must call DEF_PHFIG before any other layout action.
       "GENLIB_PLACE_SEG_REF impossible : missing GENLIB_DEF_PHFIG"
              No figure has been yet specified by a call to DEF_PHFIG. So it isn't possible to place a reference
              inside it.  you must call DEF_PHFIG before any other layout action.
       "GENLIB_PLACE_SEG_REF impossible : no abutment box"
              The current figure does not have an abutment box. Use DEF_AB(3) before this function.
       "illegal GENLIB_PLACE_SEG_REF : orientation is XX"
              The face parameter does not have a legal value, but XX.
       "illegal getphins : instance called insname does not exist"
              No instance called insname exists in the current figure
       "illegal getphref : references called refname does not exist"
              No reference called refname exists in the model of the instance insname.

EXAMPLE

       #include <genlib.h>
       main()
       {
            /∗ Create a figure to work on  ∗/
            GENLIB_DEF_PHFIG("cell");
            GENLIB_PLACE("gaci0_b", "r1", NOSYM, 23L, 54L);
            /∗ Put a reference ∗/
            GENLIB_PLACE_SEG_REF("r1", "a_0", ALU2, 2, NORTH);
            /∗ Save that on disk ∗/
            GENLIB_SAVE_PHFIG();
       }

SEE ALSO

       genlib(1),     GENLIB_DEF_PHFIG(3),     GENLIB_SAVE_PHFIG(3),      GENLIB_PHREF(3),      GENLIB_PHSEG(3),
       GENLIB_COPY_UP_REF(3),   GENLIB_COPY_UP_ALL_REF(3),   GENLIB_PLACE_SEG_REF(3),   GENLIB_PLACE_SEG_REF(3),
       GENLIB_PLACE_SEG_REF(3).