insrefmbkrds(3) adds in RDS instance all the references of MBK instance.

SYNOPSYS

#include "rfmnnn.h"
rdsrec_list *insrefmbkrds( InstanceMbk, ModelMbk, InstanceRds )
   phins_list  *InstanceMbk;
   phfig_list  *ModelMbk;
   rdsins_list *InstanceRds;

PARAMETER

InstanceMbk
MBK instance which contains references to treat.
ModelMbk
Pointer to the model of the MBK instance.
InstanceRds
RDS Instance which has to receive converted references from MBK to RDS format.

DESCRIPTION

The insrefmbkrds function adds in the RDS instance all references of the MBK instance converted to RDS format. All newly created references are chained each other (circulary list) using the USER field of the rdsrec_list structure.

RETURN VALUE

Pointer to the head of list of the added rectangles to the RDS instance.

ERRORS

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

EXAMPLE

        #include "mphnnn.h"
        #include "mutnnn.h"
        #include "rdsnnn.h"
        #include "rfmnnn.h"
        #include "rtlnnn.h"
        typedef struct UserStruct
         {
           char *STRING;
           void *USER1;
         } UserStruct;
        main()
          {
            phfig_list  *MbkFigure;
            phins_list  *MbkInstance;
            phfig_list  *MbkModelInstance;
            rdsfig_list *RdsFigure;
            rdsins_list *RdsInstance;
            rdsrec_list *RdsReferenceList;
            mbkenv();
            rdsenv();
            loadrdsparam();
            /* creates MbkFigure Named "core" */
            MbkFigure        = addphfig("core"); 
            /* creates RdsFigure named "core_2" */
            RdsFigure        = addrdsfig("core_2",sizeof(UserStruct));
            /* adds Mbk instance "n1_y" to MbkFigure named "core" */
            MbkInstance      = addphins(MbkFigure,"n1_y","inv_1",NOSYM,4,9);
            /* Gets Model of instance n1_y */ 
            MbkModelInstance = getphfig("n1_y",'A');
            /* creates Rds instance named "block_1" added to RdsFigure */
            RdsInstance =
                addrdsins(RdsFigure,"block","block_1",RDS_NOSYM,8,6);
            /*
                adds reference of "inv_1" instance Mbk in Rds instance
                named "block_1"
            */ 
            RdsReferenceList = insrefmbkrds ( MbkInstance,
                                              MbkModelInstance,
                                              RdsInstance );
            viewrfmrec ( RdsReferenceList );
          }