table of contents
other versions
- buster 5.1.1-3
ALLOCRDSREC(3) | RDS PHYSICAL FUNCTIONS | ALLOCRDSREC(3) |
NAME¶
allocrdsrec - allocates memory for a rectangleORIGIN¶
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 !"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, rdsfreeBUG 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 |