table of contents
ALLOCRDSREC(3) | RDS PHYSICAL FUNCTIONS | ALLOCRDSREC(3) |
NAME¶
allocrdsrec - allocates memory for a rectangle
ORIGIN¶
This software belongs to the ALLIANCE CAD SYSTEM developed by the ASIM team at LIP6 laboratory of Université Pierre et Marie CURIE, in Paris, France.
Web : http://asim.lip6.fr/recherche/alliance/
E-mail : alliance-users@asim.lip6.fr
SYNOPSYS¶
#include"rdsnnn.h" rdsrec_list ∗allocrdsrec( Size )
unsigned int Size;
PARAMETER¶
- Size
- Size of the added structure to the rdsrec_list structure.
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 !"
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
BUG REPORT¶
This tool is under development at the ASIM department of
the LIP6 laboratory.
We need your feedback to improve documentation and tools.
October 1, 1997 | ASIM/LIP6 |