addrdsins.3alc man page

addrdsins — adds an instance to a figure

Synopsis

#include "rdsnnn.h"
rdsins_list ∗addrdsins( Figure, Model, Name, Sym, X, Y )
     rdsfig_list ∗Figure;
     char        ∗Model;
     char        ∗Name;
     char         Sym;
     long         X;
     long         Y;

Parameter

Figure

figure which contains the instance.

Model

Name of the model of the instance.

Name

Name of the instance in the figure at which it belongs.

Sym

Symmetry applied to the instance.

possible values :
RDS_NOSYM

no symmetry.

RDS_ROT_P

90 degrees rotation counter clockwise.

RDS_SYMXY

symmetry with regard to a horizontal and vertical axis.

RDS_ROT_M

90 degrees rotation clockwise.

RDS_SYM_X

symmetry with regard to a vertical axis.

RDS_SY_RM

symmetry with regard to a vertical axis and 90 degrees clockwise.

RDS_SYM_Y

symmetry with regard to a horizontal axis.

RDS_SY_RP

symmetry with regard to a horizontal axis and 90 degrees rotation counter clockwise.

X,Y

position of the lower left corner of the instance in the figure after symmetry.

Description

The addrdsins function adds an instance to the head of instances's list in the figure described in function parameter. Some fields of rdsins_list structure are modified as follows :
The field FIGNAME is set to Model
The field INSNAME is set to Name
The field X is set to X
The field Y is set to Y
The field TRANSF is set to Sym
The field SIZE is set to Figure->SIZE

Return Value

addrdsins returns a pointer to the newly created instance which is head of instances's list of the figure.

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"
        typedef struct UserStruct
         {
           char ∗STRING;
           void ∗USER1;
         } UserStruct;
         main()
          {
            rdsfig_list ∗RdsFigure;
            rdsins_list ∗Instance;
            mbkenv();
            rdsenv();
            loadrdsparam();
            RdsFigure = addrdsfig ("core",sizeof ( UserStruct ) );
            Instance = addrdsins (RdsFigure,"na2_y","and2",RDS_NOSYM,8,6); 
            printf("(RdsFigure->INSTANCE)->NAME = %s\n",
                    (RdsFigure->INSTANCE)->NAME);
            /∗ Instance is head of instance list of the figure ∗/
            printf("Instance->NAME = %s\n", Instance->NAME);
          }

See Also

librds, delrdsins, viewrdsins

Info

October 1, 1997 ASIM/LIP6 RDS PHYSICAL FUNCTIONS