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

  
 
  

home | help
ALLOCRDSREC(3)		     RDS PHYSICAL FUNCTIONS		  ALLOCRDSREC(3)

NAME
      allocrdsrec - allocates memory for a rectangle

SYNOPSIS
     #include"rdsnnn.h"
     rdsrec_list *allocrdsrec( Size )
       unsigned int Size;

PARAMETER
     Size		 Size  of  the added structure to the rdsrec_list struc-
			 ture.

DESCRIPTION
     Allocates a memory block for rdsrec_list structure and an	added  structure
     defined by the user. Fields contained in the two structures are set to NULL
     for pointers and 0L for numbers.

     NOTE: Allocation by heap ( see rdsalloc function ).

RETURN VALUE
     The pointer to the rectangle structure allocated.

ERRORS
     "Rds202: rdsalloc error, can't continue !"
	    it's impossible to allocate the memory size desired.

EXAMPLE
	     # include "mutnnn.h"
	     # include "rdsnnn.h"
	     # include "rtlnnn.h"
	 /* Name and fields of UserStruct are defined by the user */
	 typedef struct UserStruct
	  {
	    char *STRING;
	    void *USER1;
	  } UserStruct;
	# define POINTER_STRING(R)				  \
								       \
	  (((UserStruct *)((char *)(R)+sizeof(rdsrec_list)))->STRING )
	# define POINTER_USER1(R)				  \
								       \
	  (((UserStruct *)((char *)(R)+sizeof(rdsrec_list)))->USER1  )
	    main()
	     {
	       rdsfig_list *Figure;
	       rdsrec_list *Rectangle;
		    mbkenv();
		    rdsenv();
		    loadrdsparam();
	       Rectangle = allocrdsrec ( sizeof ( UserStruct ) );
	       Rectangle->X		  = 20;
	       Rectangle->Y		  = 20;
	       Rectangle->DX		  = 48;
	       Rectangle->DY		  = 8;
	       POINTER_STRING (Rectangle) = (char *) malloc (strlen ("Alu1")+1);
	       strcpy(POINTER_STRING(Rectangle),"Alu1");
	       POINTER_USER1  (Rectangle) = (void *) Figure;
	       ...
	     }

SEE ALSO
     librds, freerdsrec, rdsalloc, rdsfree

ASIM/LIP6			 October 1, 1997		  ALLOCRDSREC(3)

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

home | help