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

FreeBSD Manual Pages

  
 
  

home | help
ADDPTYPE(3)		     MBK UTILITY FUNCTIONS		   ADDPTYPE(3)

NAME
       addptype	- create a ptype and add it to a ptype_list

SYNOPSYS
       #include	"mut.h"
       ptype_list *addptype(pthead,type,ptdata)
       ptype_list *pthead;
       void *ptdata;
       long type;

PARAMETERS
       pthead		   Pointer to a	ptype list

       type		   Flag	indicating the pointer owner

       ptdata		   Generic pointer to any kind of information

DESCRIPTION
       addptype	 creates  a  new ptype element and adds	it to the front	of the
       list pointed to by pthead, and becomes itself the list head.
       The ptype_lists are mosty used to create	lists of homogeneous  elements
       in mbk, but also	for trees, graphs, and so on.
       The  type  argument  indicates the pointer type,	at the C type meaning,
       for its owner.
       The types allow to access the pointers with adequat cast, and for exam-
       ple to share informations in the	USER fields of mbk structures.
       The  ptdata  points  to	any  kind of list or may itself	be a value, if
       proper cast is performed	at compilation time, and fills the DATA	 field
       of the ptype structure.	For details on the structure, see ptype(3).

RETURN VALUE
       addptype	returns	a pointer to the new head of list.

EXAMPLE
       #include	"mut.h"
       #include	"mph.h"
       void corner(ptfig, name)
       phfig_list *ptfig;
       char *name;
       {
       phins_list *i = getphins(ptfig, name);
       num_list	*ptnum;
       phfig_list *model;
	  model	= getphfig(i->FIGNAME);
	  ptnum	= addnum((num_list *)NULL, model->X2 - model->X1);
	  ptnum	= addnum(ptnum,	model->Y2 - model->Y1);
	  i->USER = addptype(i->USER, (long)PLACEABOX, (void *)ptnum);
       }

SEE ALSO
       mbk(1), ptype(3), freeptype(3), getptype(3), delptype(3).

ASIM/LIP6			October	1, 1997			   ADDPTYPE(3)

NAME | SYNOPSYS | PARAMETERS | DESCRIPTION | RETURN VALUE | EXAMPLE | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=addptype&sektion=3&manpath=FreeBSD+12.0-RELEASE+and+Ports>

home | help