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 |