Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
GENLIB_PL...SEG_REF.3(October 1, 1997)	GENLIB_PL...SEG_REF.3(October 1, 1997)

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

SYNOPSIS
       #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  at-
			   tributs.   One of its endpoint is given by the ref-
			   erence coordinates, the other one  comes  from  the
			   face.  The face argument is meant in	the placed in-
			   stance, and can take	any of the following values:

       NORTH		   the	other endpoint has, for	absissa, the x coordi-
			   nate	of the top of the abutment box	of  the	 cell,
			   and	for  ordinate,	the y coordinate of the	refer-
			   ence.

       SOUTH		   the other endpoint has, for absissa,	the x  coordi-
			   nate	of the bottom of the abutment box of the cell,
			   and	for  ordinate,	the y coordinate of the	refer-
			   ence.

       EAST		   the other endpoint has, for absissa,	the x  coordi-
			   nate	of the reference and for ordinate, the y coor-
			   dinate  of  the  right  of  the abutment box	of the
			   cell.

       WEST		   the other endpoint has, for absissa,	the x  coordi-
			   nate	of the reference and for ordinate, the y coor-
			   dinate 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), GEN-
       LIB_PLACE_SEG_REF(3), GENLIB_PLACE_SEG_REF(3), GENLIB_PLACE_SEG_REF(3).

PROCEDURAL GENERATION LANGUAGE	   ASIM/GENLIB_PL...SEG_REF.3(October 1, 1997)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=GENLIB_PLACE_SEG_REF&sektion=3&manpath=FreeBSD+Ports+15.0>

home | help