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

FreeBSD Manual Pages


home | help

       ptype - mbk list	of typed pointers

       The  ptype  is  used to save typed pointers in a	list.  The use of this
       structure is strongly recommanded, when such a need occurs.  It is  the
       case  in	 the  USER  field of all mbk layout and	netlist	objects, where
       data specific to	different proccessing may  be  accessed	 through  this
       unique  field. It is the	charge of the user to give its pointers	a type
       that will not collide with existing types.

       The declarations	needed to work on ptype	are available  in  the	header
       file "/labo/include/mut315.h", where '315' is the actual	mbk version.

       The following C structure describes the list of typed pointers :
	      typedef struct ptype {
		 struct	ptype	  *NEXT;
		 void		  *DATA;
		 long		  TYPE;
	      }	ptype_list;

       NEXT		   Pointer to the next ptype of	the list.

       DATA		   Generic pointer that	may point where	the user wants

       TYPE		   Identifier of the user of  the  pointed  data.  One
			   shall  not  access  someone	else  ptype  since  it
			   doesn't know	what's in it. This means also  that  a
			   ptype user should free the space taken by its datas
			   since it is the only	one to know how	to do it.

       Remark 1:	   a specialized memory	allocator has  been  built  in
			   order  to create and	free ptype_lists, so absolutly
			   avoid to create or free  them  an  other  way  than
			   through the access functions.

       Remark 2:	   Now	a  day,	 three tools are known to use the USER
			   field of some mbk structures	:

			   VTIPARSER	       the parser of vti physical for-
					       mat  '.cp'  files  uses the ph-
					       con(3) USER field.

			   LOFIGCHAIN	       the  lofigchain	function  con-
					       structs	a  dual	representation
					       of  the	netlist	 in  the  USER
					       field  of  the  losig(3)	struc-

			   PLACEABOX	       Genlib's	  physical   placement
					       functions,  in  order  to  have
					       model sizes in  instances.   It
					       uses the	phins(3) USER field.

       mbk(1), addptype(3), freeptype(3), getptype(3), delptype(3).

ASIM/LIP6			October	1, 1997			      PTYPE(3)


Want to link to this manual page? Use this URL:

home | help