File: GPCA_SW_Logical_Architecture.c

    1   /*
    2    * Code generation for system model 'GPCA_SW_Logical_Architecture'
    3    *
    4    * Model                      : GPCA_SW_Logical_Architecture
    5    * Model version              : 1.1265
    6    * Simulink Coder version : 8.4 (R2013a) 13-Feb-2013
    7    * C source code generated on : Thu Sep 12 09:50:47 2013
    8    *
    9    * Note that the functions contained in this file are part of a Simulink
   10    * model, and are not self-contained algorithms.
   11    */
   12   
   13   #include "GPCA_SW_Logical_Architecture.h"
   14   #include "GPCA_SW_Logical_Architecture_private.h"
   15   
   16   /* Initial conditions for referenced model: 'GPCA_SW_Logical_Architecture' */
   17   void GPCA_SW_Logical_Architecture_Init(DW_GPCA_SW_Logical_Architecture_f_T
   18     *localDW)
   19   {
   20     /* InitializeConditions for UnitDelay: '<Root>/Unit Delay' */
   21     localDW->UnitDelay_1_DSTATE = 0U;
   22   
   23     /* InitializeConditions for UnitDelay: '<Root>/Unit Delay' */
   24     localDW->UnitDelay_2_DSTATE = 0U;
   25   
   26     /* InitializeConditions for UnitDelay: '<Root>/Unit Delay' */
   27     localDW->UnitDelay_3_DSTATE = FALSE;
   28   
   29     /* InitializeConditions for UnitDelay: '<Root>/Unit Delay' */
   30     localDW->UnitDelay_4_DSTATE = 0U;
   31   
   32     /* InitializeConditions for UnitDelay: '<Root>/Unit Delay' */
   33     localDW->UnitDelay_5_DSTATE = 0U;
   34   
   35     /* InitializeConditions for ModelReference: '<Root>/TOP_LEVEL_MODE' */
   36     Top_Level_Mode_Functional_Init(&(localDW->TOP_LEVEL_MODE_DWORK1.rtb),
   37       &(localDW->TOP_LEVEL_MODE_DWORK1.rtdw));
   38   
   39     /* InitializeConditions for UnitDelay: '<Root>/Unit Delay2' */
   40     localDW->UnitDelay2_1_DSTATE = FALSE;
   41   
   42     /* InitializeConditions for UnitDelay: '<Root>/Unit Delay3' */
   43     localDW->UnitDelay3_1_DSTATE = 0U;
   44   
   45     /* InitializeConditions for UnitDelay: '<Root>/Unit Delay3' */
   46     localDW->UnitDelay3_2_DSTATE = FALSE;
   47   
   48     /* InitializeConditions for UnitDelay: '<Root>/Unit Delay1' */
   49     localDW->UnitDelay1_1_DSTATE = 0U;
   50   
   51     /* InitializeConditions for UnitDelay: '<Root>/Unit Delay1' */
   52     localDW->UnitDelay1_2_DSTATE = 0U;
   53   
   54     /* InitializeConditions for UnitDelay: '<Root>/Unit Delay1' */
   55     localDW->UnitDelay1_3_DSTATE = 0U;
   56   
   57     /* InitializeConditions for UnitDelay: '<Root>/Unit Delay1' */
   58     localDW->UnitDelay1_4_DSTATE = 0U;
   59   
   60     /* InitializeConditions for UnitDelay: '<Root>/Unit Delay1' */
   61     localDW->UnitDelay1_5_DSTATE = 0U;
   62   
   63     /* InitializeConditions for UnitDelay: '<Root>/Unit Delay1' */
   64     localDW->UnitDelay1_6_DSTATE = 0U;
   65   
   66     /* InitializeConditions for UnitDelay: '<Root>/Unit Delay1' */
   67     localDW->UnitDelay1_7_DSTATE = 0U;
   68   
   69     /* InitializeConditions for UnitDelay: '<Root>/Unit Delay1' */
   70     localDW->UnitDelay1_8_DSTATE = 0U;
   71   
   72     /* InitializeConditions for UnitDelay: '<Root>/Unit Delay1' */
   73     localDW->UnitDelay1_9_DSTATE = 0U;
   74   
   75     /* InitializeConditions for UnitDelay: '<Root>/Unit Delay1' */
   76     localDW->UnitDelay1_10_DSTATE = 0U;
   77   
   78     /* InitializeConditions for UnitDelay: '<Root>/Unit Delay1' */
   79     localDW->UnitDelay1_11_DSTATE = 0U;
   80   
   81     /* InitializeConditions for UnitDelay: '<Root>/Unit Delay1' */
   82     localDW->UnitDelay1_12_DSTATE = 0U;
   83   
   84     /* InitializeConditions for UnitDelay: '<Root>/Unit Delay1' */
   85     localDW->UnitDelay1_13_DSTATE = 0U;
   86   
   87     /* InitializeConditions for UnitDelay: '<Root>/Unit Delay1' */
   88     localDW->UnitDelay1_14_DSTATE = 0U;
   89   
   90     /* InitializeConditions for UnitDelay: '<Root>/Unit Delay1' */
   91     localDW->UnitDelay1_15_DSTATE = 0U;
   92   
   93     /* InitializeConditions for UnitDelay: '<Root>/Unit Delay1' */
   94     localDW->UnitDelay1_16_DSTATE = 0U;
   95   
   96     /* InitializeConditions for UnitDelay: '<Root>/Unit Delay1' */
   97     localDW->UnitDelay1_17_DSTATE = 0U;
   98   
   99     /* InitializeConditions for UnitDelay: '<Root>/Unit Delay1' */
  100     localDW->UnitDelay1_18_DSTATE = 0U;
  101   
  102     /* InitializeConditions for UnitDelay: '<Root>/Unit Delay1' */
  103     localDW->UnitDelay1_19_DSTATE = FALSE;
  104   
  105     /* InitializeConditions for UnitDelay: '<Root>/Unit Delay1' */
  106     localDW->UnitDelay1_20_DSTATE = FALSE;
  107   
  108     /* InitializeConditions for UnitDelay: '<Root>/Unit Delay1' */
  109     localDW->UnitDelay1_21_DSTATE = FALSE;
  110   
  111     /* InitializeConditions for UnitDelay: '<Root>/Unit Delay1' */
  112     localDW->UnitDelay1_22_DSTATE = FALSE;
  113   
  114     /* InitializeConditions for UnitDelay: '<Root>/Unit Delay1' */
  115     localDW->UnitDelay1_23_DSTATE = 0U;
  116   
  117     /* InitializeConditions for UnitDelay: '<Root>/Unit Delay1' */
  118     localDW->UnitDelay1_24_DSTATE = 0U;
  119   
  120     /* InitializeConditions for UnitDelay: '<Root>/Unit Delay1' */
  121     localDW->UnitDelay1_25_DSTATE = 0U;
  122   
  123     /* InitializeConditions for ModelReference: '<Root>/SYSTEM_STATUS' */
  124     SYS_STATS_Functional_Init(&(localDW->SYSTEM_STATUS_DWORK1.rtdw));
  125   
  126     /* InitializeConditions for ModelReference: '<Root>/ALARM' */
  127     ALARM_Functional_Init(&(localDW->ALARM_DWORK1.rtb),
  128                           &(localDW->ALARM_DWORK1.rtdw));
  129   
  130     /* InitializeConditions for ModelReference: '<Root>/CONFIGURATION' */
  131     CONFIG_Functional_Init(&(localDW->CONFIGURATION_DWORK1.rtb),
  132       &(localDW->CONFIGURATION_DWORK1.rtdw));
  133   
  134     /* InitializeConditions for ModelReference: '<Root>/INFUSION_MANAGER' */
  135     INFUSION_MGR_Functional_Init(&(localDW->INFUSION_MANAGER_DWORK1.rtb),
  136       &(localDW->INFUSION_MANAGER_DWORK1.rtdw));
  137   
  138     /* InitializeConditions for ModelReference: '<Root>/LOGGING' */
  139     Logging_Functional_Init(&(localDW->LOGGING_DWORK1.rtb),
  140       &(localDW->LOGGING_DWORK1.rtdw));
  141   
  142     /* InitializeConditions for ModelReference: '<Root>/SYSTEM_MONITOR' */
  143     System_Monitor_Functional_Init(&(localDW->SYSTEM_MONITOR_DWORK1.rtb),
  144       &(localDW->SYSTEM_MONITOR_DWORK1.rtdw));
  145   }
  146   
  147   /* Outputs for referenced model: 'GPCA_SW_Logical_Architecture' */
  148   void GPCA_SW_Logical_Architecture(const Device_Sensor_Inputs *rtu_SENSOR_IN,
  149     const Device_Configuration_Inputs *rtu_CONST_IN, const Operator_Commands
  150     *rtu_OP_CMD_IN, const Drug_Database_Inputs *rtu_DB_IN, const
  151     Prescription_Inputs *rtu_PRES_IN, const Patient_Inputs *rtu_PATIENT_IN,
  152     GPCA_SW_Outputs *rty_GPCA_SW_OUT, B_GPCA_SW_Logical_Architecture_c_T *localB,
  153     DW_GPCA_SW_Logical_Architecture_f_T *localDW)
  154   {
  155     /* local block i/o variables */
  156     Config_Outputs rtb_BusConversion_InsertedFor_INFUSION_MANAGER_at_;
  157     Config_Outputs rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_;
  158     Device_Sensor_Inputs rtb_BusConversion_InsertedFor_ALARM_at_inport_6_Bu;
  159     Device_Configuration_Inputs rtb_BusConversion_InsertedFor_CONFIGURATION_at_inp;
  160     Operator_Commands rtb_BusConversion_InsertedFor_INFUSION_MANAGER_a_l;
  161     Drug_Database_Inputs rtb_BusConversion_InsertedFor_CONFIGURATION_at_i_n;
  162     Prescription_Inputs rtb_BusConversion_InsertedFor_CONFIGURATION_at_i_g;
  163     Patient_Inputs rtb_BusConversion_InsertedFor_INFUSION_MANAGER_a_i;
  164     Infusion_Manager_Outputs rtb_BusConversion_InsertedFor_LOGGING_at_inport_4_;
  165     Top_Level_Mode_Outputs rtb_BusConversion_InsertedFor_SYSTEM_MONITOR_at_in;
  166     Top_Level_Mode_Outputs rtb_BusConversion_InsertedFor_LOGGING_at_inport_0_;
  167     System_Monitor_Output rtb_BusConversion_InsertedFor_ALARM_at_inport_2_Bu;
  168     Log_Output rtb_BusConversion_InsertedFor_ALARM_at_inport_3_Bu;
  169     System_Status_Outputs rtb_SYSTEM_STATUS;
  170     System_Status_Outputs rtb_BusConversion_InsertedFor_INFUSION_MANAGER_a_d;
  171     System_Status_Outputs rtb_BusConversion_InsertedFor_LOGGING_at_inport_3_;
  172     Alarm_Outputs rtb_BusConversion_InsertedFor_LOGGING_at_inport_2_;
  173     Alarm_Outputs rtb_BusConversion_InsertedFor_INFUSION_MANAGER_a_k;
  174     uint8_T rtb_Commanded_Flow_Rate;
  175     uint8_T rtb_Current_System_Mode;
  176     boolean_T rtb_New_Infusion;
  177     uint8_T rtb_Log_Message_ID;
  178     uint8_T rtb_Actual_Infusion_Duration;
  179     uint8_T rtb_VTBI_Total;
  180     uint8_T rtb_Flow_Rate_Basal;
  181     uint8_T rtb_Flow_Rate_Intermittent_Bolus;
  182     uint8_T rtb_Duration_Intermittent_Bolus;
  183     uint8_T rtb_Interval_Intermittent_Bolus;
  184     uint8_T rtb_Flow_Rate_Patient_Bolus;
  185     uint8_T rtb_Duration_Patient_Bolus;
  186     uint8_T rtb_Lockout_Period_Patient_Bolus;
  187     uint8_T rtb_Max_Number_of_Patient_Bolus;
  188     uint8_T rtb_Flow_Rate_KVO_n;
  189     uint8_T rtb_Entered_Reservoir_Volume;
  190     uint8_T rtb_Reservoir_Volume;
  191     uint8_T rtb_Configured;
  192     uint8_T rtb_Error_Message_ID;
  193     boolean_T rtb_Request_Confirm_Infusion_Initiate;
  194     boolean_T rtb_Request_Patient_Drug_Info;
  195     boolean_T rtb_Request_Infusion_Info;
  196     uint8_T rtb_Log_Message_ID_e;
  197     uint8_T rtb_Config_Timer;
  198     uint8_T rtb_Config_Mode;
  199   
  200     /* UnitDelay: '<Root>/Unit Delay' */
  201     rtb_Commanded_Flow_Rate = localDW->UnitDelay_1_DSTATE;
  202   
  203     /* UnitDelay: '<Root>/Unit Delay' */
  204     rtb_Current_System_Mode = localDW->UnitDelay_2_DSTATE;
  205   
  206     /* UnitDelay: '<Root>/Unit Delay' */
  207     rtb_New_Infusion = localDW->UnitDelay_3_DSTATE;
  208   
  209     /* UnitDelay: '<Root>/Unit Delay' */
  210     rtb_Log_Message_ID = localDW->UnitDelay_4_DSTATE;
  211   
  212     /* UnitDelay: '<Root>/Unit Delay' */
  213     rtb_Actual_Infusion_Duration = localDW->UnitDelay_5_DSTATE;
  214   
  215     /* BusCreator: '<Root>/BusConversion_InsertedFor_ALARM_at_inport_0' incorporates:
  216      *  UnitDelay: '<Root>/Unit Delay'
  217      */
  218     rtb_BusConversion_InsertedFor_LOGGING_at_inport_4_.Commanded_Flow_Rate =
  219       localDW->UnitDelay_1_DSTATE;
  220     rtb_BusConversion_InsertedFor_LOGGING_at_inport_4_.Current_System_Mode =
  221       localDW->UnitDelay_2_DSTATE;
  222     rtb_BusConversion_InsertedFor_LOGGING_at_inport_4_.New_Infusion =
  223       localDW->UnitDelay_3_DSTATE;
  224     rtb_BusConversion_InsertedFor_LOGGING_at_inport_4_.Log_Message_ID =
  225       localDW->UnitDelay_4_DSTATE;
  226     rtb_BusConversion_InsertedFor_LOGGING_at_inport_4_.Actual_Infusion_Duration =
  227       localDW->UnitDelay_5_DSTATE;
  228   
  229     /* BusCreator: '<Root>/BusConversion_InsertedFor_TOP_LEVEL_MODE_at_inport_0' */
  230     rtb_BusConversion_InsertedFor_INFUSION_MANAGER_a_l = *rtu_OP_CMD_IN;
  231   
  232     /* BusCreator: '<Root>/BusConversion_InsertedFor_TOP_LEVEL_MODE_at_inport_1' */
  233     rtb_BusConversion_InsertedFor_CONFIGURATION_at_inp = *rtu_CONST_IN;
  234   
  235     /* ModelReference: '<Root>/TOP_LEVEL_MODE' */
  236     Top_Level_Mode_Functional(&rtb_BusConversion_InsertedFor_INFUSION_MANAGER_a_l,
  237       &rtb_BusConversion_InsertedFor_CONFIGURATION_at_inp, &localB->TOP_LEVEL_MODE,
  238       &(localDW->TOP_LEVEL_MODE_DWORK1.rtb), &(localDW->TOP_LEVEL_MODE_DWORK1.rtdw));
  239   
  240     /* BusCreator: '<Root>/BusConversion_InsertedFor_ALARM_at_inport_1' */
  241     rtb_BusConversion_InsertedFor_LOGGING_at_inport_0_ = localB->TOP_LEVEL_MODE;
  242   
  243     /* BusCreator: '<Root>/BusConversion_InsertedFor_ALARM_at_inport_2' incorporates:
  244      *  UnitDelay: '<Root>/Unit Delay2'
  245      */
  246     rtb_BusConversion_InsertedFor_ALARM_at_inport_2_Bu.System_Monitor_Failed =
  247       localDW->UnitDelay2_1_DSTATE;
  248   
  249     /* BusCreator: '<Root>/BusConversion_InsertedFor_ALARM_at_inport_3' incorporates:
  250      *  UnitDelay: '<Root>/Unit Delay3'
  251      */
  252     rtb_BusConversion_InsertedFor_ALARM_at_inport_3_Bu.Log =
  253       localDW->UnitDelay3_1_DSTATE;
  254     rtb_BusConversion_InsertedFor_ALARM_at_inport_3_Bu.Logging_Failed =
  255       localDW->UnitDelay3_2_DSTATE;
  256   
  257     /* BusCreator: '<Root>/BusConversion_InsertedFor_ALARM_at_inport_4' */
  258     rtb_BusConversion_InsertedFor_INFUSION_MANAGER_a_l = *rtu_OP_CMD_IN;
  259   
  260     /* BusCreator: '<Root>/BusConversion_InsertedFor_ALARM_at_inport_5' */
  261     rtb_BusConversion_InsertedFor_CONFIGURATION_at_i_n = *rtu_DB_IN;
  262   
  263     /* BusCreator: '<Root>/BusConversion_InsertedFor_ALARM_at_inport_6' */
  264     rtb_BusConversion_InsertedFor_ALARM_at_inport_6_Bu = *rtu_SENSOR_IN;
  265   
  266     /* BusCreator: '<Root>/BusConversion_InsertedFor_ALARM_at_inport_7' */
  267     rtb_BusConversion_InsertedFor_CONFIGURATION_at_inp = *rtu_CONST_IN;
  268   
  269     /* BusCreator: '<Root>/BusConversion_InsertedFor_SYSTEM_STATUS_at_inport_0' */
  270     localB->BusConversion_InsertedFor_SYSTEM_STATUS_at_inpor_i.Commanded_Flow_Rate
  271       = rtb_Commanded_Flow_Rate;
  272     localB->BusConversion_InsertedFor_SYSTEM_STATUS_at_inpor_i.Current_System_Mode
  273       = rtb_Current_System_Mode;
  274     localB->BusConversion_InsertedFor_SYSTEM_STATUS_at_inpor_i.New_Infusion =
  275       rtb_New_Infusion;
  276     localB->BusConversion_InsertedFor_SYSTEM_STATUS_at_inpor_i.Log_Message_ID =
  277       rtb_Log_Message_ID;
  278     localB->BusConversion_InsertedFor_SYSTEM_STATUS_at_inpor_i.Actual_Infusion_Duration
  279       = rtb_Actual_Infusion_Duration;
  280   
  281     /* BusCreator: '<Root>/BusConversion_InsertedFor_SYSTEM_STATUS_at_inport_1' */
  282     localB->BusConversion_InsertedFor_SYSTEM_STATUS_at_inpor_d =
  283       localB->TOP_LEVEL_MODE;
  284   
  285     /* BusCreator: '<Root>/BusConversion_InsertedFor_SYSTEM_STATUS_at_inport_2' */
  286     localB->BusConversion_InsertedFor_SYSTEM_STATUS_at_inpor_a = *rtu_SENSOR_IN;
  287   
  288     /* BusCreator: '<Root>/BusConversion_InsertedFor_SYSTEM_STATUS_at_inport_3' */
  289     localB->BusConversion_InsertedFor_SYSTEM_STATUS_at_inpor_l = *rtu_CONST_IN;
  290   
  291     /* UnitDelay: '<Root>/Unit Delay1' */
  292     rtb_Commanded_Flow_Rate = localDW->UnitDelay1_1_DSTATE;
  293   
  294     /* UnitDelay: '<Root>/Unit Delay1' */
  295     rtb_Current_System_Mode = localDW->UnitDelay1_2_DSTATE;
  296   
  297     /* UnitDelay: '<Root>/Unit Delay1' */
  298     rtb_Log_Message_ID = localDW->UnitDelay1_3_DSTATE;
  299   
  300     /* UnitDelay: '<Root>/Unit Delay1' */
  301     rtb_Actual_Infusion_Duration = localDW->UnitDelay1_4_DSTATE;
  302   
  303     /* UnitDelay: '<Root>/Unit Delay1' */
  304     rtb_VTBI_Total = localDW->UnitDelay1_5_DSTATE;
  305   
  306     /* UnitDelay: '<Root>/Unit Delay1' */
  307     rtb_Flow_Rate_Basal = localDW->UnitDelay1_6_DSTATE;
  308   
  309     /* UnitDelay: '<Root>/Unit Delay1' */
  310     rtb_Flow_Rate_Intermittent_Bolus = localDW->UnitDelay1_7_DSTATE;
  311   
  312     /* UnitDelay: '<Root>/Unit Delay1' */
  313     rtb_Duration_Intermittent_Bolus = localDW->UnitDelay1_8_DSTATE;
  314   
  315     /* UnitDelay: '<Root>/Unit Delay1' */
  316     rtb_Interval_Intermittent_Bolus = localDW->UnitDelay1_9_DSTATE;
  317   
  318     /* UnitDelay: '<Root>/Unit Delay1' */
  319     rtb_Flow_Rate_Patient_Bolus = localDW->UnitDelay1_10_DSTATE;
  320   
  321     /* UnitDelay: '<Root>/Unit Delay1' */
  322     rtb_Duration_Patient_Bolus = localDW->UnitDelay1_11_DSTATE;
  323   
  324     /* UnitDelay: '<Root>/Unit Delay1' */
  325     rtb_Lockout_Period_Patient_Bolus = localDW->UnitDelay1_12_DSTATE;
  326   
  327     /* UnitDelay: '<Root>/Unit Delay1' */
  328     rtb_Max_Number_of_Patient_Bolus = localDW->UnitDelay1_13_DSTATE;
  329   
  330     /* UnitDelay: '<Root>/Unit Delay1' */
  331     rtb_Flow_Rate_KVO_n = localDW->UnitDelay1_14_DSTATE;
  332   
  333     /* UnitDelay: '<Root>/Unit Delay1' */
  334     rtb_Entered_Reservoir_Volume = localDW->UnitDelay1_15_DSTATE;
  335   
  336     /* UnitDelay: '<Root>/Unit Delay1' */
  337     rtb_Reservoir_Volume = localDW->UnitDelay1_16_DSTATE;
  338   
  339     /* UnitDelay: '<Root>/Unit Delay1' */
  340     rtb_Configured = localDW->UnitDelay1_17_DSTATE;
  341   
  342     /* UnitDelay: '<Root>/Unit Delay1' */
  343     rtb_Error_Message_ID = localDW->UnitDelay1_18_DSTATE;
  344   
  345     /* UnitDelay: '<Root>/Unit Delay1' */
  346     rtb_New_Infusion = localDW->UnitDelay1_19_DSTATE;
  347   
  348     /* UnitDelay: '<Root>/Unit Delay1' */
  349     rtb_Request_Confirm_Infusion_Initiate = localDW->UnitDelay1_20_DSTATE;
  350   
  351     /* UnitDelay: '<Root>/Unit Delay1' */
  352     rtb_Request_Patient_Drug_Info = localDW->UnitDelay1_21_DSTATE;
  353   
  354     /* UnitDelay: '<Root>/Unit Delay1' */
  355     rtb_Request_Infusion_Info = localDW->UnitDelay1_22_DSTATE;
  356   
  357     /* UnitDelay: '<Root>/Unit Delay1' */
  358     rtb_Log_Message_ID_e = localDW->UnitDelay1_23_DSTATE;
  359   
  360     /* UnitDelay: '<Root>/Unit Delay1' */
  361     rtb_Config_Timer = localDW->UnitDelay1_24_DSTATE;
  362   
  363     /* UnitDelay: '<Root>/Unit Delay1' */
  364     rtb_Config_Mode = localDW->UnitDelay1_25_DSTATE;
  365   
  366     /* BusCreator: '<Root>/BusConversion_InsertedFor_SYSTEM_STATUS_at_inport_4' incorporates:
  367      *  UnitDelay: '<Root>/Unit Delay1'
  368      */
  369     localB->BusConversion_InsertedFor_SYSTEM_STATUS_at_inport_.Patient_ID =
  370       localDW->UnitDelay1_1_DSTATE;
  371     localB->BusConversion_InsertedFor_SYSTEM_STATUS_at_inport_.Drug_Name =
  372       localDW->UnitDelay1_2_DSTATE;
  373     localB->BusConversion_InsertedFor_SYSTEM_STATUS_at_inport_.Drug_Concentration =
  374       localDW->UnitDelay1_3_DSTATE;
  375     localB->BusConversion_InsertedFor_SYSTEM_STATUS_at_inport_.Infusion_Total_Duration
  376       = localDW->UnitDelay1_4_DSTATE;
  377     localB->BusConversion_InsertedFor_SYSTEM_STATUS_at_inport_.VTBI_Total =
  378       localDW->UnitDelay1_5_DSTATE;
  379     localB->BusConversion_InsertedFor_SYSTEM_STATUS_at_inport_.Flow_Rate_Basal =
  380       localDW->UnitDelay1_6_DSTATE;
  381     localB->BusConversion_InsertedFor_SYSTEM_STATUS_at_inport_.Flow_Rate_Intermittent_Bolus
  382       = localDW->UnitDelay1_7_DSTATE;
  383     localB->BusConversion_InsertedFor_SYSTEM_STATUS_at_inport_.Duration_Intermittent_Bolus
  384       = localDW->UnitDelay1_8_DSTATE;
  385     localB->BusConversion_InsertedFor_SYSTEM_STATUS_at_inport_.Interval_Intermittent_Bolus
  386       = localDW->UnitDelay1_9_DSTATE;
  387     localB->BusConversion_InsertedFor_SYSTEM_STATUS_at_inport_.Flow_Rate_Patient_Bolus
  388       = localDW->UnitDelay1_10_DSTATE;
  389     localB->BusConversion_InsertedFor_SYSTEM_STATUS_at_inport_.Duration_Patient_Bolus
  390       = localDW->UnitDelay1_11_DSTATE;
  391     localB->BusConversion_InsertedFor_SYSTEM_STATUS_at_inport_.Lockout_Period_Patient_Bolus
  392       = localDW->UnitDelay1_12_DSTATE;
  393     localB->BusConversion_InsertedFor_SYSTEM_STATUS_at_inport_.Max_Number_of_Patient_Bolus
  394       = localDW->UnitDelay1_13_DSTATE;
  395     localB->BusConversion_InsertedFor_SYSTEM_STATUS_at_inport_.Flow_Rate_KVO =
  396       localDW->UnitDelay1_14_DSTATE;
  397     localB->BusConversion_InsertedFor_SYSTEM_STATUS_at_inport_.Entered_Reservoir_Volume
  398       = localDW->UnitDelay1_15_DSTATE;
  399     localB->BusConversion_InsertedFor_SYSTEM_STATUS_at_inport_.Reservoir_Volume =
  400       localDW->UnitDelay1_16_DSTATE;
  401     localB->BusConversion_InsertedFor_SYSTEM_STATUS_at_inport_.Configured =
  402       localDW->UnitDelay1_17_DSTATE;
  403     localB->BusConversion_InsertedFor_SYSTEM_STATUS_at_inport_.Error_Message_ID =
  404       localDW->UnitDelay1_18_DSTATE;
  405     localB->BusConversion_InsertedFor_SYSTEM_STATUS_at_inport_.Request_Config_Type
  406       = localDW->UnitDelay1_19_DSTATE;
  407     localB->BusConversion_InsertedFor_SYSTEM_STATUS_at_inport_.Request_Confirm_Infusion_Initiate
  408       = localDW->UnitDelay1_20_DSTATE;
  409     localB->BusConversion_InsertedFor_SYSTEM_STATUS_at_inport_.Request_Patient_Drug_Info
  410       = localDW->UnitDelay1_21_DSTATE;
  411     localB->BusConversion_InsertedFor_SYSTEM_STATUS_at_inport_.Request_Infusion_Info
  412       = localDW->UnitDelay1_22_DSTATE;
  413     localB->BusConversion_InsertedFor_SYSTEM_STATUS_at_inport_.Log_Message_ID =
  414       localDW->UnitDelay1_23_DSTATE;
  415     localB->BusConversion_InsertedFor_SYSTEM_STATUS_at_inport_.Config_Timer =
  416       localDW->UnitDelay1_24_DSTATE;
  417     localB->BusConversion_InsertedFor_SYSTEM_STATUS_at_inport_.Config_Mode =
  418       localDW->UnitDelay1_25_DSTATE;
  419   
  420     /* ModelReference: '<Root>/SYSTEM_STATUS' */
  421     SYS_STATS_Functional
  422       (&localB->BusConversion_InsertedFor_SYSTEM_STATUS_at_inpor_i,
  423        &localB->BusConversion_InsertedFor_SYSTEM_STATUS_at_inpor_d,
  424        &localB->BusConversion_InsertedFor_SYSTEM_STATUS_at_inpor_a,
  425        &localB->BusConversion_InsertedFor_SYSTEM_STATUS_at_inpor_l,
  426        &localB->BusConversion_InsertedFor_SYSTEM_STATUS_at_inport_,
  427        &rtb_SYSTEM_STATUS, &(localDW->SYSTEM_STATUS_DWORK1.rtb),
  428        &(localDW->SYSTEM_STATUS_DWORK1.rtdw));
  429   
  430     /* BusCreator: '<Root>/BusConversion_InsertedFor_ALARM_at_inport_8' */
  431     rtb_BusConversion_InsertedFor_LOGGING_at_inport_3_ = rtb_SYSTEM_STATUS;
  432   
  433     /* BusCreator: '<Root>/BusConversion_InsertedFor_ALARM_at_inport_9' */
  434     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Patient_ID =
  435       rtb_Commanded_Flow_Rate;
  436     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Drug_Name =
  437       rtb_Current_System_Mode;
  438     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Drug_Concentration =
  439       rtb_Log_Message_ID;
  440     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Infusion_Total_Duration =
  441       rtb_Actual_Infusion_Duration;
  442     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.VTBI_Total = rtb_VTBI_Total;
  443     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Flow_Rate_Basal =
  444       rtb_Flow_Rate_Basal;
  445     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Flow_Rate_Intermittent_Bolus
  446       = rtb_Flow_Rate_Intermittent_Bolus;
  447     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Duration_Intermittent_Bolus
  448       = rtb_Duration_Intermittent_Bolus;
  449     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Interval_Intermittent_Bolus
  450       = rtb_Interval_Intermittent_Bolus;
  451     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Flow_Rate_Patient_Bolus =
  452       rtb_Flow_Rate_Patient_Bolus;
  453     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Duration_Patient_Bolus =
  454       rtb_Duration_Patient_Bolus;
  455     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Lockout_Period_Patient_Bolus
  456       = rtb_Lockout_Period_Patient_Bolus;
  457     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Max_Number_of_Patient_Bolus
  458       = rtb_Max_Number_of_Patient_Bolus;
  459     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Flow_Rate_KVO =
  460       rtb_Flow_Rate_KVO_n;
  461     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Entered_Reservoir_Volume =
  462       rtb_Entered_Reservoir_Volume;
  463     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Reservoir_Volume =
  464       rtb_Reservoir_Volume;
  465     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Configured = rtb_Configured;
  466     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Error_Message_ID =
  467       rtb_Error_Message_ID;
  468     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Request_Config_Type =
  469       rtb_New_Infusion;
  470     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Request_Confirm_Infusion_Initiate
  471       = rtb_Request_Confirm_Infusion_Initiate;
  472     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Request_Patient_Drug_Info =
  473       rtb_Request_Patient_Drug_Info;
  474     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Request_Infusion_Info =
  475       rtb_Request_Infusion_Info;
  476     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Log_Message_ID =
  477       rtb_Log_Message_ID_e;
  478     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Config_Timer =
  479       rtb_Config_Timer;
  480     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Config_Mode =
  481       rtb_Config_Mode;
  482   
  483     /* ModelReference: '<Root>/ALARM' */
  484     ALARM_Functional(&rtb_BusConversion_InsertedFor_LOGGING_at_inport_4_,
  485                      &rtb_BusConversion_InsertedFor_LOGGING_at_inport_0_,
  486                      &rtb_BusConversion_InsertedFor_ALARM_at_inport_2_Bu,
  487                      &rtb_BusConversion_InsertedFor_ALARM_at_inport_3_Bu,
  488                      &rtb_BusConversion_InsertedFor_INFUSION_MANAGER_a_l,
  489                      &rtb_BusConversion_InsertedFor_CONFIGURATION_at_i_n,
  490                      &rtb_BusConversion_InsertedFor_ALARM_at_inport_6_Bu,
  491                      &rtb_BusConversion_InsertedFor_CONFIGURATION_at_inp,
  492                      &rtb_BusConversion_InsertedFor_LOGGING_at_inport_3_,
  493                      &rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_,
  494                      &localB->ALARM, &(localDW->ALARM_DWORK1.rtb),
  495                      &(localDW->ALARM_DWORK1.rtdw));
  496   
  497     /* BusCreator: '<Root>/BusConversion_InsertedFor_CONFIGURATION_at_inport_0' */
  498     rtb_BusConversion_InsertedFor_LOGGING_at_inport_0_ = localB->TOP_LEVEL_MODE;
  499   
  500     /* BusCreator: '<Root>/BusConversion_InsertedFor_CONFIGURATION_at_inport_1' */
  501     rtb_BusConversion_InsertedFor_CONFIGURATION_at_i_g = *rtu_PRES_IN;
  502   
  503     /* BusCreator: '<Root>/BusConversion_InsertedFor_CONFIGURATION_at_inport_2' */
  504     rtb_BusConversion_InsertedFor_INFUSION_MANAGER_a_l = *rtu_OP_CMD_IN;
  505   
  506     /* BusCreator: '<Root>/BusConversion_InsertedFor_CONFIGURATION_at_inport_3' */
  507     rtb_BusConversion_InsertedFor_CONFIGURATION_at_i_n = *rtu_DB_IN;
  508   
  509     /* BusCreator: '<Root>/BusConversion_InsertedFor_CONFIGURATION_at_inport_4' */
  510     rtb_BusConversion_InsertedFor_CONFIGURATION_at_inp = *rtu_CONST_IN;
  511   
  512     /* BusCreator: '<Root>/BusConversion_InsertedFor_CONFIGURATION_at_inport_5' */
  513     rtb_BusConversion_InsertedFor_LOGGING_at_inport_3_ = rtb_SYSTEM_STATUS;
  514   
  515     /* ModelReference: '<Root>/CONFIGURATION' */
  516     CONFIG_Functional(&rtb_BusConversion_InsertedFor_LOGGING_at_inport_0_,
  517                       &rtb_BusConversion_InsertedFor_CONFIGURATION_at_i_g,
  518                       &rtb_BusConversion_InsertedFor_INFUSION_MANAGER_a_l,
  519                       &rtb_BusConversion_InsertedFor_CONFIGURATION_at_i_n,
  520                       &rtb_BusConversion_InsertedFor_CONFIGURATION_at_inp,
  521                       &rtb_BusConversion_InsertedFor_LOGGING_at_inport_3_,
  522                       &localB->CONFIGURATION, &(localDW->CONFIGURATION_DWORK1.rtb),
  523                       &(localDW->CONFIGURATION_DWORK1.rtdw));
  524   
  525     /* BusSelector: '<Root>/BusConversion_InsertedFor_CONFIGURATION_at_outport_0' */
  526     localB->Patient_ID = localB->CONFIGURATION.Patient_ID;
  527     localB->Drug_Name = localB->CONFIGURATION.Drug_Name;
  528     localB->Drug_Concentration = localB->CONFIGURATION.Drug_Concentration;
  529     localB->Infusion_Total_Duration =
  530       localB->CONFIGURATION.Infusion_Total_Duration;
  531     localB->VTBI_Total = localB->CONFIGURATION.VTBI_Total;
  532     localB->Flow_Rate_Basal = localB->CONFIGURATION.Flow_Rate_Basal;
  533     localB->Flow_Rate_Intermittent_Bolus =
  534       localB->CONFIGURATION.Flow_Rate_Intermittent_Bolus;
  535     localB->Duration_Intermittent_Bolus =
  536       localB->CONFIGURATION.Duration_Intermittent_Bolus;
  537     localB->Interval_Intermittent_Bolus =
  538       localB->CONFIGURATION.Interval_Intermittent_Bolus;
  539     localB->Flow_Rate_Patient_Bolus =
  540       localB->CONFIGURATION.Flow_Rate_Patient_Bolus;
  541     localB->Duration_Patient_Bolus = localB->CONFIGURATION.Duration_Patient_Bolus;
  542     localB->Lockout_Period_Patient_Bolus =
  543       localB->CONFIGURATION.Lockout_Period_Patient_Bolus;
  544     localB->Max_Number_of_Patient_Bolus =
  545       localB->CONFIGURATION.Max_Number_of_Patient_Bolus;
  546     localB->Flow_Rate_KVO = localB->CONFIGURATION.Flow_Rate_KVO;
  547     localB->Entered_Reservoir_Volume =
  548       localB->CONFIGURATION.Entered_Reservoir_Volume;
  549     localB->Reservoir_Volume = localB->CONFIGURATION.Reservoir_Volume;
  550     localB->Configured = localB->CONFIGURATION.Configured;
  551     localB->Error_Message_ID = localB->CONFIGURATION.Error_Message_ID;
  552     localB->Request_Config_Type = localB->CONFIGURATION.Request_Config_Type;
  553     localB->Request_Confirm_Infusion_Initiate =
  554       localB->CONFIGURATION.Request_Confirm_Infusion_Initiate;
  555     localB->Request_Patient_Drug_Info =
  556       localB->CONFIGURATION.Request_Patient_Drug_Info;
  557     localB->Request_Infusion_Info = localB->CONFIGURATION.Request_Infusion_Info;
  558     localB->Log_Message_ID = localB->CONFIGURATION.Log_Message_ID;
  559     localB->Config_Timer = localB->CONFIGURATION.Config_Timer;
  560     localB->Config_Mode = localB->CONFIGURATION.Config_Mode;
  561   
  562     /* BusCreator: '<Root>/BusConversion_InsertedFor_LOGGING_at_inport_0' */
  563     rtb_BusConversion_InsertedFor_LOGGING_at_inport_0_ = localB->TOP_LEVEL_MODE;
  564   
  565     /* BusCreator: '<Root>/BusConversion_InsertedFor_LOGGING_at_inport_1' */
  566     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Patient_ID =
  567       localB->Patient_ID;
  568     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Drug_Name =
  569       localB->Drug_Name;
  570     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Drug_Concentration =
  571       localB->Drug_Concentration;
  572     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Infusion_Total_Duration =
  573       localB->Infusion_Total_Duration;
  574     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.VTBI_Total =
  575       localB->VTBI_Total;
  576     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Flow_Rate_Basal =
  577       localB->Flow_Rate_Basal;
  578     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Flow_Rate_Intermittent_Bolus
  579       = localB->Flow_Rate_Intermittent_Bolus;
  580     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Duration_Intermittent_Bolus
  581       = localB->Duration_Intermittent_Bolus;
  582     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Interval_Intermittent_Bolus
  583       = localB->Interval_Intermittent_Bolus;
  584     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Flow_Rate_Patient_Bolus =
  585       localB->Flow_Rate_Patient_Bolus;
  586     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Duration_Patient_Bolus =
  587       localB->Duration_Patient_Bolus;
  588     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Lockout_Period_Patient_Bolus
  589       = localB->Lockout_Period_Patient_Bolus;
  590     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Max_Number_of_Patient_Bolus
  591       = localB->Max_Number_of_Patient_Bolus;
  592     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Flow_Rate_KVO =
  593       localB->Flow_Rate_KVO;
  594     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Entered_Reservoir_Volume =
  595       localB->Entered_Reservoir_Volume;
  596     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Reservoir_Volume =
  597       localB->Reservoir_Volume;
  598     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Configured =
  599       localB->Configured;
  600     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Error_Message_ID =
  601       localB->Error_Message_ID;
  602     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Request_Config_Type =
  603       localB->Request_Config_Type;
  604     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Request_Confirm_Infusion_Initiate
  605       = localB->Request_Confirm_Infusion_Initiate;
  606     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Request_Patient_Drug_Info =
  607       localB->Request_Patient_Drug_Info;
  608     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Request_Infusion_Info =
  609       localB->Request_Infusion_Info;
  610     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Log_Message_ID =
  611       localB->Log_Message_ID;
  612     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Config_Timer =
  613       localB->Config_Timer;
  614     rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_.Config_Mode =
  615       localB->Config_Mode;
  616   
  617     /* BusCreator: '<Root>/BusConversion_InsertedFor_LOGGING_at_inport_2' */
  618     rtb_BusConversion_InsertedFor_LOGGING_at_inport_2_ = localB->ALARM;
  619   
  620     /* BusCreator: '<Root>/BusConversion_InsertedFor_LOGGING_at_inport_3' */
  621     rtb_BusConversion_InsertedFor_LOGGING_at_inport_3_ = rtb_SYSTEM_STATUS;
  622   
  623     /* BusCreator: '<Root>/BusConversion_InsertedFor_INFUSION_MANAGER_at_inport_0' */
  624     rtb_BusConversion_InsertedFor_SYSTEM_MONITOR_at_in = localB->TOP_LEVEL_MODE;
  625   
  626     /* BusCreator: '<Root>/BusConversion_InsertedFor_INFUSION_MANAGER_at_inport_1' */
  627     rtb_BusConversion_InsertedFor_INFUSION_MANAGER_a_l = *rtu_OP_CMD_IN;
  628   
  629     /* BusCreator: '<Root>/BusConversion_InsertedFor_INFUSION_MANAGER_at_inport_2' */
  630     rtb_BusConversion_InsertedFor_INFUSION_MANAGER_a_i = *rtu_PATIENT_IN;
  631   
  632     /* BusCreator: '<Root>/BusConversion_InsertedFor_INFUSION_MANAGER_at_inport_3' */
  633     rtb_BusConversion_InsertedFor_INFUSION_MANAGER_at_.Patient_ID =
  634       localB->Patient_ID;
  635     rtb_BusConversion_InsertedFor_INFUSION_MANAGER_at_.Drug_Name =
  636       localB->Drug_Name;
  637     rtb_BusConversion_InsertedFor_INFUSION_MANAGER_at_.Drug_Concentration =
  638       localB->Drug_Concentration;
  639     rtb_BusConversion_InsertedFor_INFUSION_MANAGER_at_.Infusion_Total_Duration =
  640       localB->Infusion_Total_Duration;
  641     rtb_BusConversion_InsertedFor_INFUSION_MANAGER_at_.VTBI_Total =
  642       localB->VTBI_Total;
  643     rtb_BusConversion_InsertedFor_INFUSION_MANAGER_at_.Flow_Rate_Basal =
  644       localB->Flow_Rate_Basal;
  645     rtb_BusConversion_InsertedFor_INFUSION_MANAGER_at_.Flow_Rate_Intermittent_Bolus
  646       = localB->Flow_Rate_Intermittent_Bolus;
  647     rtb_BusConversion_InsertedFor_INFUSION_MANAGER_at_.Duration_Intermittent_Bolus
  648       = localB->Duration_Intermittent_Bolus;
  649     rtb_BusConversion_InsertedFor_INFUSION_MANAGER_at_.Interval_Intermittent_Bolus
  650       = localB->Interval_Intermittent_Bolus;
  651     rtb_BusConversion_InsertedFor_INFUSION_MANAGER_at_.Flow_Rate_Patient_Bolus =
  652       localB->Flow_Rate_Patient_Bolus;
  653     rtb_BusConversion_InsertedFor_INFUSION_MANAGER_at_.Duration_Patient_Bolus =
  654       localB->Duration_Patient_Bolus;
  655     rtb_BusConversion_InsertedFor_INFUSION_MANAGER_at_.Lockout_Period_Patient_Bolus
  656       = localB->Lockout_Period_Patient_Bolus;
  657     rtb_BusConversion_InsertedFor_INFUSION_MANAGER_at_.Max_Number_of_Patient_Bolus
  658       = localB->Max_Number_of_Patient_Bolus;
  659     rtb_BusConversion_InsertedFor_INFUSION_MANAGER_at_.Flow_Rate_KVO =
  660       localB->Flow_Rate_KVO;
  661     rtb_BusConversion_InsertedFor_INFUSION_MANAGER_at_.Entered_Reservoir_Volume =
  662       localB->Entered_Reservoir_Volume;
  663     rtb_BusConversion_InsertedFor_INFUSION_MANAGER_at_.Reservoir_Volume =
  664       localB->Reservoir_Volume;
  665     rtb_BusConversion_InsertedFor_INFUSION_MANAGER_at_.Configured =
  666       localB->Configured;
  667     rtb_BusConversion_InsertedFor_INFUSION_MANAGER_at_.Error_Message_ID =
  668       localB->Error_Message_ID;
  669     rtb_BusConversion_InsertedFor_INFUSION_MANAGER_at_.Request_Config_Type =
  670       localB->Request_Config_Type;
  671     rtb_BusConversion_InsertedFor_INFUSION_MANAGER_at_.Request_Confirm_Infusion_Initiate
  672       = localB->Request_Confirm_Infusion_Initiate;
  673     rtb_BusConversion_InsertedFor_INFUSION_MANAGER_at_.Request_Patient_Drug_Info =
  674       localB->Request_Patient_Drug_Info;
  675     rtb_BusConversion_InsertedFor_INFUSION_MANAGER_at_.Request_Infusion_Info =
  676       localB->Request_Infusion_Info;
  677     rtb_BusConversion_InsertedFor_INFUSION_MANAGER_at_.Log_Message_ID =
  678       localB->Log_Message_ID;
  679     rtb_BusConversion_InsertedFor_INFUSION_MANAGER_at_.Config_Timer =
  680       localB->Config_Timer;
  681     rtb_BusConversion_InsertedFor_INFUSION_MANAGER_at_.Config_Mode =
  682       localB->Config_Mode;
  683   
  684     /* BusCreator: '<Root>/BusConversion_InsertedFor_INFUSION_MANAGER_at_inport_4' */
  685     rtb_BusConversion_InsertedFor_INFUSION_MANAGER_a_k = localB->ALARM;
  686   
  687     /* BusCreator: '<Root>/BusConversion_InsertedFor_INFUSION_MANAGER_at_inport_5' */
  688     rtb_BusConversion_InsertedFor_INFUSION_MANAGER_a_d = rtb_SYSTEM_STATUS;
  689   
  690     /* ModelReference: '<Root>/INFUSION_MANAGER' */
  691     INFUSION_MGR_Functional(&rtb_BusConversion_InsertedFor_SYSTEM_MONITOR_at_in,
  692       &rtb_BusConversion_InsertedFor_INFUSION_MANAGER_a_l,
  693       &rtb_BusConversion_InsertedFor_INFUSION_MANAGER_a_i,
  694       &rtb_BusConversion_InsertedFor_INFUSION_MANAGER_at_,
  695       &rtb_BusConversion_InsertedFor_INFUSION_MANAGER_a_k,
  696       &rtb_BusConversion_InsertedFor_INFUSION_MANAGER_a_d,
  697       &localB->INFUSION_MANAGER, &(localDW->INFUSION_MANAGER_DWORK1.rtb),
  698       &(localDW->INFUSION_MANAGER_DWORK1.rtdw));
  699   
  700     /* BusSelector: '<Root>/BusConversion_InsertedFor_INFUSION_MANAGER_at_outport_0' */
  701     localB->Commanded_Flow_Rate = localB->INFUSION_MANAGER.Commanded_Flow_Rate;
  702     localB->Current_System_Mode = localB->INFUSION_MANAGER.Current_System_Mode;
  703     localB->New_Infusion = localB->INFUSION_MANAGER.New_Infusion;
  704     localB->Log_Message_ID_e = localB->INFUSION_MANAGER.Log_Message_ID;
  705     localB->Actual_Infusion_Duration =
  706       localB->INFUSION_MANAGER.Actual_Infusion_Duration;
  707   
  708     /* BusCreator: '<Root>/BusConversion_InsertedFor_LOGGING_at_inport_4' */
  709     rtb_BusConversion_InsertedFor_LOGGING_at_inport_4_.Commanded_Flow_Rate =
  710       localB->Commanded_Flow_Rate;
  711     rtb_BusConversion_InsertedFor_LOGGING_at_inport_4_.Current_System_Mode =
  712       localB->Current_System_Mode;
  713     rtb_BusConversion_InsertedFor_LOGGING_at_inport_4_.New_Infusion =
  714       localB->New_Infusion;
  715     rtb_BusConversion_InsertedFor_LOGGING_at_inport_4_.Log_Message_ID =
  716       localB->Log_Message_ID_e;
  717     rtb_BusConversion_InsertedFor_LOGGING_at_inport_4_.Actual_Infusion_Duration =
  718       localB->Actual_Infusion_Duration;
  719   
  720     /* ModelReference: '<Root>/LOGGING' */
  721     Logging_Functional(&rtb_BusConversion_InsertedFor_LOGGING_at_inport_0_,
  722                        &rtb_BusConversion_InsertedFor_LOGGING_at_inport_1_,
  723                        &rtb_BusConversion_InsertedFor_LOGGING_at_inport_2_,
  724                        &rtb_BusConversion_InsertedFor_LOGGING_at_inport_3_,
  725                        &rtb_BusConversion_InsertedFor_LOGGING_at_inport_4_,
  726                        &localB->LOGGING, &(localDW->LOGGING_DWORK1.rtb),
  727                        &(localDW->LOGGING_DWORK1.rtdw));
  728   
  729     /* BusSelector: '<Root>/BusConversion_InsertedFor_LOGGING_at_outport_0' */
  730     localB->Log = localB->LOGGING.Log;
  731     localB->Logging_Failed = localB->LOGGING.Logging_Failed;
  732   
  733     /* BusCreator: '<Root>/BusConversion_InsertedFor_GPCA_SW_OUT_at_inport_0' */
  734     rty_GPCA_SW_OUT->Request_Confirm_Stop =
  735       localB->TOP_LEVEL_MODE.Request_Confirm_Stop;
  736     rty_GPCA_SW_OUT->Log = localB->Log;
  737     rty_GPCA_SW_OUT->Current_System_Mode = localB->Current_System_Mode;
  738     rty_GPCA_SW_OUT->Actual_Infusion_Duration = localB->Actual_Infusion_Duration;
  739     rty_GPCA_SW_OUT->Commanded_Flow_Rate = localB->Commanded_Flow_Rate;
  740     rty_GPCA_SW_OUT->Volume_Infused = rtb_SYSTEM_STATUS.Volume_Infused;
  741     rty_GPCA_SW_OUT->Reservoir_Volume = rtb_SYSTEM_STATUS.Reservoir_Volume;
  742     rty_GPCA_SW_OUT->Is_Audio_Disabled = localB->ALARM.Is_Audio_Disabled;
  743     rty_GPCA_SW_OUT->Notification_Message = localB->ALARM.Notification_Message;
  744     rty_GPCA_SW_OUT->Audio_Notification_Command =
  745       localB->ALARM.Audio_Notification_Command;
  746     rty_GPCA_SW_OUT->Patient_ID = localB->Patient_ID;
  747     rty_GPCA_SW_OUT->Drug_Name = localB->Drug_Name;
  748     rty_GPCA_SW_OUT->Drug_Concentration = localB->Drug_Concentration;
  749     rty_GPCA_SW_OUT->Infusion_Total_Duration = localB->Infusion_Total_Duration;
  750     rty_GPCA_SW_OUT->VTBI_Total = localB->VTBI_Total;
  751     rty_GPCA_SW_OUT->Flow_Rate_Basal = localB->Flow_Rate_Basal;
  752     rty_GPCA_SW_OUT->Flow_Rate_Intermittent_Bolus =
  753       localB->Flow_Rate_Intermittent_Bolus;
  754     rty_GPCA_SW_OUT->Duration_Intermittent_Bolus =
  755       localB->Duration_Intermittent_Bolus;
  756     rty_GPCA_SW_OUT->Interval_Intermittent_Bolus =
  757       localB->Interval_Intermittent_Bolus;
  758     rty_GPCA_SW_OUT->Flow_Rate_Patient_Bolus = localB->Flow_Rate_Patient_Bolus;
  759     rty_GPCA_SW_OUT->Duration_Patient_Bolus = localB->Duration_Patient_Bolus;
  760     rty_GPCA_SW_OUT->Lockout_Period_Patient_Bolus =
  761       localB->Lockout_Period_Patient_Bolus;
  762     rty_GPCA_SW_OUT->Max_Number_of_Patient_Bolus =
  763       localB->Max_Number_of_Patient_Bolus;
  764     rty_GPCA_SW_OUT->Flow_Rate_KVO = localB->Flow_Rate_KVO;
  765     rty_GPCA_SW_OUT->Entered_Reservoir_Volume = localB->Entered_Reservoir_Volume;
  766     rty_GPCA_SW_OUT->Configured = localB->Configured;
  767     rty_GPCA_SW_OUT->Error_Message_ID = localB->Error_Message_ID;
  768     rty_GPCA_SW_OUT->Request_Config_Type = localB->Request_Config_Type;
  769     rty_GPCA_SW_OUT->Request_Confirm_Infusion_Initiate =
  770       localB->Request_Confirm_Infusion_Initiate;
  771     rty_GPCA_SW_OUT->Request_Patient_Drug_Info = localB->Request_Patient_Drug_Info;
  772     rty_GPCA_SW_OUT->Request_Infusion_Info = localB->Request_Infusion_Info;
  773   
  774     /* BusCreator: '<Root>/BusConversion_InsertedFor_SYSTEM_MONITOR_at_inport_0' */
  775     rtb_BusConversion_InsertedFor_SYSTEM_MONITOR_at_in = localB->TOP_LEVEL_MODE;
  776   
  777     /* ModelReference: '<Root>/SYSTEM_MONITOR' */
  778     System_Monitor_Functional(&rtb_BusConversion_InsertedFor_SYSTEM_MONITOR_at_in,
  779       &localB->SYSTEM_MONITOR, &(localDW->SYSTEM_MONITOR_DWORK1.rtb),
  780       &(localDW->SYSTEM_MONITOR_DWORK1.rtdw));
  781   
  782     /* BusSelector: '<Root>/BusConversion_InsertedFor_SYSTEM_MONITOR_at_outport_0' */
  783     localB->System_Monitor_Failed = localB->SYSTEM_MONITOR.System_Monitor_Failed;
  784   }
  785   
  786   /* Update for referenced model: 'GPCA_SW_Logical_Architecture' */
  787   void GPCA_SW_Logical_Architecture_Update(B_GPCA_SW_Logical_Architecture_c_T
  788     *localB, DW_GPCA_SW_Logical_Architecture_f_T *localDW)
  789   {
  790     /* Update for UnitDelay: '<Root>/Unit Delay' */
  791     localDW->UnitDelay_1_DSTATE = localB->Commanded_Flow_Rate;
  792   
  793     /* Update for UnitDelay: '<Root>/Unit Delay' */
  794     localDW->UnitDelay_2_DSTATE = localB->Current_System_Mode;
  795   
  796     /* Update for UnitDelay: '<Root>/Unit Delay' */
  797     localDW->UnitDelay_3_DSTATE = localB->New_Infusion;
  798   
  799     /* Update for UnitDelay: '<Root>/Unit Delay' */
  800     localDW->UnitDelay_4_DSTATE = localB->Log_Message_ID_e;
  801   
  802     /* Update for UnitDelay: '<Root>/Unit Delay' */
  803     localDW->UnitDelay_5_DSTATE = localB->Actual_Infusion_Duration;
  804   
  805     /* Update for UnitDelay: '<Root>/Unit Delay2' */
  806     localDW->UnitDelay2_1_DSTATE = localB->System_Monitor_Failed;
  807   
  808     /* Update for UnitDelay: '<Root>/Unit Delay3' */
  809     localDW->UnitDelay3_1_DSTATE = localB->Log;
  810   
  811     /* Update for UnitDelay: '<Root>/Unit Delay3' */
  812     localDW->UnitDelay3_2_DSTATE = localB->Logging_Failed;
  813   
  814     /* Update for UnitDelay: '<Root>/Unit Delay1' */
  815     localDW->UnitDelay1_1_DSTATE = localB->Patient_ID;
  816   
  817     /* Update for UnitDelay: '<Root>/Unit Delay1' */
  818     localDW->UnitDelay1_2_DSTATE = localB->Drug_Name;
  819   
  820     /* Update for UnitDelay: '<Root>/Unit Delay1' */
  821     localDW->UnitDelay1_3_DSTATE = localB->Drug_Concentration;
  822   
  823     /* Update for UnitDelay: '<Root>/Unit Delay1' */
  824     localDW->UnitDelay1_4_DSTATE = localB->Infusion_Total_Duration;
  825   
  826     /* Update for UnitDelay: '<Root>/Unit Delay1' */
  827     localDW->UnitDelay1_5_DSTATE = localB->VTBI_Total;
  828   
  829     /* Update for UnitDelay: '<Root>/Unit Delay1' */
  830     localDW->UnitDelay1_6_DSTATE = localB->Flow_Rate_Basal;
  831   
  832     /* Update for UnitDelay: '<Root>/Unit Delay1' */
  833     localDW->UnitDelay1_7_DSTATE = localB->Flow_Rate_Intermittent_Bolus;
  834   
  835     /* Update for UnitDelay: '<Root>/Unit Delay1' */
  836     localDW->UnitDelay1_8_DSTATE = localB->Duration_Intermittent_Bolus;
  837   
  838     /* Update for UnitDelay: '<Root>/Unit Delay1' */
  839     localDW->UnitDelay1_9_DSTATE = localB->Interval_Intermittent_Bolus;
  840   
  841     /* Update for UnitDelay: '<Root>/Unit Delay1' */
  842     localDW->UnitDelay1_10_DSTATE = localB->Flow_Rate_Patient_Bolus;
  843   
  844     /* Update for UnitDelay: '<Root>/Unit Delay1' */
  845     localDW->UnitDelay1_11_DSTATE = localB->Duration_Patient_Bolus;
  846   
  847     /* Update for UnitDelay: '<Root>/Unit Delay1' */
  848     localDW->UnitDelay1_12_DSTATE = localB->Lockout_Period_Patient_Bolus;
  849   
  850     /* Update for UnitDelay: '<Root>/Unit Delay1' */
  851     localDW->UnitDelay1_13_DSTATE = localB->Max_Number_of_Patient_Bolus;
  852   
  853     /* Update for UnitDelay: '<Root>/Unit Delay1' */
  854     localDW->UnitDelay1_14_DSTATE = localB->Flow_Rate_KVO;
  855   
  856     /* Update for UnitDelay: '<Root>/Unit Delay1' */
  857     localDW->UnitDelay1_15_DSTATE = localB->Entered_Reservoir_Volume;
  858   
  859     /* Update for UnitDelay: '<Root>/Unit Delay1' */
  860     localDW->UnitDelay1_16_DSTATE = localB->Reservoir_Volume;
  861   
  862     /* Update for UnitDelay: '<Root>/Unit Delay1' */
  863     localDW->UnitDelay1_17_DSTATE = localB->Configured;
  864   
  865     /* Update for UnitDelay: '<Root>/Unit Delay1' */
  866     localDW->UnitDelay1_18_DSTATE = localB->Error_Message_ID;
  867   
  868     /* Update for UnitDelay: '<Root>/Unit Delay1' */
  869     localDW->UnitDelay1_19_DSTATE = localB->Request_Config_Type;
  870   
  871     /* Update for UnitDelay: '<Root>/Unit Delay1' */
  872     localDW->UnitDelay1_20_DSTATE = localB->Request_Confirm_Infusion_Initiate;
  873   
  874     /* Update for UnitDelay: '<Root>/Unit Delay1' */
  875     localDW->UnitDelay1_21_DSTATE = localB->Request_Patient_Drug_Info;
  876   
  877     /* Update for UnitDelay: '<Root>/Unit Delay1' */
  878     localDW->UnitDelay1_22_DSTATE = localB->Request_Infusion_Info;
  879   
  880     /* Update for UnitDelay: '<Root>/Unit Delay1' */
  881     localDW->UnitDelay1_23_DSTATE = localB->Log_Message_ID;
  882   
  883     /* Update for UnitDelay: '<Root>/Unit Delay1' */
  884     localDW->UnitDelay1_24_DSTATE = localB->Config_Timer;
  885   
  886     /* Update for UnitDelay: '<Root>/Unit Delay1' */
  887     localDW->UnitDelay1_25_DSTATE = localB->Config_Mode;
  888   
  889     /* Update for ModelReference: '<Root>/SYSTEM_STATUS' */
  890     SYS_STATS_Functional_Update(&(localDW->SYSTEM_STATUS_DWORK1.rtb),
  891       &(localDW->SYSTEM_STATUS_DWORK1.rtdw));
  892   }
  893   
  894   /* Model initialize function */
  895   void GPCA_SW_Logical_Architecture_initialize(const char_T **rt_errorStatus,
  896     RT_MODEL_GPCA_SW_Logical_Architecture_T *const GPCA_SW_Logical_Architecture_M,
  897     B_GPCA_SW_Logical_Architecture_c_T *localB,
  898     DW_GPCA_SW_Logical_Architecture_f_T *localDW)
  899   {
  900     /* Registration code */
  901   
  902     /* initialize error status */
  903     rtmSetErrorStatusPointer(GPCA_SW_Logical_Architecture_M, rt_errorStatus);
  904   
  905     /* block I/O */
  906     (void) memset(((void *) localB), 0,
  907                   sizeof(B_GPCA_SW_Logical_Architecture_c_T));
  908   
  909     /* states (dwork) */
  910     (void) memset((void *)localDW, 0,
  911                   sizeof(DW_GPCA_SW_Logical_Architecture_f_T));
  912   
  913     /* Model Initialize fcn for ModelReference Block: '<Root>/ALARM' */
  914     ALARM_Functional_initialize(rtmGetErrorStatusPointer
  915       (GPCA_SW_Logical_Architecture_M), &(localDW->ALARM_DWORK1.rtm),
  916       &(localDW->ALARM_DWORK1.rtb), &(localDW->ALARM_DWORK1.rtdw));
  917   
  918     /* Model Initialize fcn for ModelReference Block: '<Root>/CONFIGURATION' */
  919     CONFIG_Functional_initialize(rtmGetErrorStatusPointer
  920       (GPCA_SW_Logical_Architecture_M), &(localDW->CONFIGURATION_DWORK1.rtm),
  921       &(localDW->CONFIGURATION_DWORK1.rtb), &(localDW->CONFIGURATION_DWORK1.rtdw));
  922   
  923     /* Model Initialize fcn for ModelReference Block: '<Root>/INFUSION_MANAGER' */
  924     INFUSION_MGR_Functional_initialize(rtmGetErrorStatusPointer
  925       (GPCA_SW_Logical_Architecture_M), &(localDW->INFUSION_MANAGER_DWORK1.rtm),
  926                                        &(localDW->INFUSION_MANAGER_DWORK1.rtb),
  927       &(localDW->INFUSION_MANAGER_DWORK1.rtdw));
  928   
  929     /* Model Initialize fcn for ModelReference Block: '<Root>/LOGGING' */
  930     Logging_Functional_initialize(rtmGetErrorStatusPointer
  931       (GPCA_SW_Logical_Architecture_M), &(localDW->LOGGING_DWORK1.rtm),
  932       &(localDW->LOGGING_DWORK1.rtb), &(localDW->LOGGING_DWORK1.rtdw));
  933   
  934     /* Model Initialize fcn for ModelReference Block: '<Root>/SYSTEM_MONITOR' */
  935     System_Monitor_Functional_initialize(rtmGetErrorStatusPointer
  936       (GPCA_SW_Logical_Architecture_M), &(localDW->SYSTEM_MONITOR_DWORK1.rtm),
  937       &(localDW->SYSTEM_MONITOR_DWORK1.rtb), &(localDW->SYSTEM_MONITOR_DWORK1.rtdw));
  938   
  939     /* Model Initialize fcn for ModelReference Block: '<Root>/SYSTEM_STATUS' */
  940     SYS_STATS_Functional_initialize(rtmGetErrorStatusPointer
  941       (GPCA_SW_Logical_Architecture_M), &(localDW->SYSTEM_STATUS_DWORK1.rtm),
  942       &(localDW->SYSTEM_STATUS_DWORK1.rtb), &(localDW->SYSTEM_STATUS_DWORK1.rtdw));
  943   
  944     /* Model Initialize fcn for ModelReference Block: '<Root>/TOP_LEVEL_MODE' */
  945     Top_Level_Mode_Functional_initialize(rtmGetErrorStatusPointer
  946       (GPCA_SW_Logical_Architecture_M), &(localDW->TOP_LEVEL_MODE_DWORK1.rtm),
  947       &(localDW->TOP_LEVEL_MODE_DWORK1.rtb), &(localDW->TOP_LEVEL_MODE_DWORK1.rtdw));
  948   }
  949