File: ALARM_Functional.h

    1   /*
    2    * Code generation for system model 'ALARM_Functional'
    3    * For more details, see corresponding source file ALARM_Functional.c
    4    *
    5    */
    6   #ifndef RTW_HEADER_ALARM_Functional_h_
    7   #define RTW_HEADER_ALARM_Functional_h_
    8   #ifndef ALARM_Functional_COMMON_INCLUDES_
    9   # define ALARM_Functional_COMMON_INCLUDES_
   10   #include <string.h>
   11   #include "rtwtypes.h"
   12   #include "rtw_continuous.h"
   13   #include "rtw_solver.h"
   14   #include "rtw_shared_utils.h"
   15   #endif                                 /* ALARM_Functional_COMMON_INCLUDES_ */
   16   
   17   #include "ALARM_Functional_types.h"
   18   
   19   /* Block signals for model 'ALARM_Functional' */
   20   typedef struct {
   21     uint8_T Commanded_Flow_Rate;
   22     uint8_T Current_System_Mode;
   23     uint8_T Disable_Audio;
   24     uint8_T VTBI_High;
   25     uint8_T Flow_Rate_High;
   26     uint8_T Flow_Rate_Low;
   27     uint8_T Flow_Rate;
   28     uint8_T Audio_Enable_Duration;
   29     uint8_T Audio_Level;
   30     uint8_T Config_Warning_Duration;
   31     uint8_T Low_Reservoir;
   32     uint8_T Max_Duration_Over_Infusion;
   33     uint8_T Max_Duration_Under_Infusion;
   34     uint8_T Max_Paused_Duration;
   35     uint8_T Max_Idle_Duration;
   36     uint8_T Tolerance_Max;
   37     uint8_T Tolerance_Min;
   38     uint8_T Reservoir_Volume;
   39     uint8_T Volume_Infused;
   40     uint8_T Config_Timer;
   41     uint8_T ALARM_OUT_Display_Audio_Disabled_Indicator;/* '<Root>/Alarm  Sub-System' */
   42     uint8_T ALARM_OUT_Display_Notification_Command;/* '<Root>/Alarm  Sub-System' */
   43     uint8_T ALARM_OUT_Audio_Notification_Command;/* '<Root>/Alarm  Sub-System' */
   44     uint8_T ALARM_OUT_Highest_Level_Alarm;/* '<Root>/Alarm  Sub-System' */
   45     uint8_T ALARM_OUT_Log_Message_ID;    /* '<Root>/Alarm  Sub-System' */
   46     boolean_T System_On;
   47     boolean_T System_Monitor_Failed;
   48     boolean_T Logging_Failed;
   49     boolean_T Infusion_Initiate;
   50     boolean_T Notification_Cancel;
   51     boolean_T Flow_Rate_Not_Stable;
   52     boolean_T Air_In_Line;
   53     boolean_T Occlusion;
   54     boolean_T Door_Open;
   55     boolean_T Temp;
   56     boolean_T Air_Pressure;
   57     boolean_T Humidity;
   58     boolean_T Battery_Depleted;
   59     boolean_T Battery_Low;
   60     boolean_T Battery_Unable_To_Charge;
   61     boolean_T Supply_Voltage;
   62     boolean_T CPU_In_Error;
   63     boolean_T RTC_In_Error;
   64     boolean_T Watchdog_Interrupted;
   65     boolean_T Memory_Corrupted;
   66     boolean_T Pump_Too_Hot;
   67     boolean_T Pump_Overheated;
   68     boolean_T Reservoir_Empty;
   69     boolean_T In_Therapy;
   70   } B_ALARM_Functional_c_T;
   71   
   72   /* Block states (auto storage) for model 'ALARM_Functional' */
   73   typedef struct {
   74     uint8_T is_active_c2_ALARM_Functional;/* '<Root>/Alarm  Sub-System' */
   75     uint8_T is_c2_ALARM_Functional;      /* '<Root>/Alarm  Sub-System' */
   76     uint8_T is_active_Notification;      /* '<Root>/Alarm  Sub-System' */
   77     uint8_T is_Visual;                   /* '<Root>/Alarm  Sub-System' */
   78     uint8_T is_active_Visual;            /* '<Root>/Alarm  Sub-System' */
   79     uint8_T is_Audio;                    /* '<Root>/Alarm  Sub-System' */
   80     uint8_T is_active_Audio;             /* '<Root>/Alarm  Sub-System' */
   81     uint8_T is_active_CheckAlarm;        /* '<Root>/Alarm  Sub-System' */
   82     uint8_T is_CancelAlarm;              /* '<Root>/Alarm  Sub-System' */
   83     uint8_T is_active_CancelAlarm;       /* '<Root>/Alarm  Sub-System' */
   84     uint8_T is_active_SetAlarmStatus;    /* '<Root>/Alarm  Sub-System' */
   85     uint8_T is_active_Level4;            /* '<Root>/Alarm  Sub-System' */
   86     uint8_T is_IsEmptyReservoir;         /* '<Root>/Alarm  Sub-System' */
   87     uint8_T is_active_IsEmptyReservoir;  /* '<Root>/Alarm  Sub-System' */
   88     uint8_T is_IsSystemMonitorFailed;    /* '<Root>/Alarm  Sub-System' */
   89     uint8_T is_active_IsSystemMonitorFailed;/* '<Root>/Alarm  Sub-System' */
   90     uint8_T is_IsEnviromentalError;      /* '<Root>/Alarm  Sub-System' */
   91     uint8_T is_active_IsEnviromentalError;/* '<Root>/Alarm  Sub-System' */
   92     uint8_T is_active_Level3;            /* '<Root>/Alarm  Sub-System' */
   93     uint8_T is_IsOverInfusionFlowRate;   /* '<Root>/Alarm  Sub-System' */
   94     uint8_T is_active_IsOverInfusionFlowRate;/* '<Root>/Alarm  Sub-System' */
   95     uint8_T is_InfusionNotStartedWarning;/* '<Root>/Alarm  Sub-System' */
   96     uint8_T is_active_InfusionNotStartedWarning;/* '<Root>/Alarm  Sub-System' */
   97     uint8_T is_IsOverInfusionVTBI;       /* '<Root>/Alarm  Sub-System' */
   98     uint8_T is_active_IsOverInfusionVTBI;/* '<Root>/Alarm  Sub-System' */
   99     uint8_T is_IsAirInLine;              /* '<Root>/Alarm  Sub-System' */
  100     uint8_T is_active_IsAirInLine;       /* '<Root>/Alarm  Sub-System' */
  101     uint8_T is_IsOcclusion;              /* '<Root>/Alarm  Sub-System' */
  102     uint8_T is_active_IsOcclusion;       /* '<Root>/Alarm  Sub-System' */
  103     uint8_T is_IsDoorOpen;               /* '<Root>/Alarm  Sub-System' */
  104     uint8_T is_active_IsDoorOpen;        /* '<Root>/Alarm  Sub-System' */
  105     uint8_T is_active_Level2;            /* '<Root>/Alarm  Sub-System' */
  106     uint8_T is_IsLowReservoir;           /* '<Root>/Alarm  Sub-System' */
  107     uint8_T is_active_IsLowReservoir;    /* '<Root>/Alarm  Sub-System' */
  108     uint8_T is_active_Level1;            /* '<Root>/Alarm  Sub-System' */
  109     uint8_T is_IsUnderInfusion;          /* '<Root>/Alarm  Sub-System' */
  110     uint8_T is_active_IsUnderInfusion;   /* '<Root>/Alarm  Sub-System' */
  111     uint8_T is_IsFlowRateNotStable;      /* '<Root>/Alarm  Sub-System' */
  112     uint8_T is_active_IsFlowRateNotStable;/* '<Root>/Alarm  Sub-System' */
  113     uint8_T is_IsIdleTimeExceeded;       /* '<Root>/Alarm  Sub-System' */
  114     uint8_T is_active_IsIdleTimeExceeded;/* '<Root>/Alarm  Sub-System' */
  115     uint8_T is_IsPausedTimeExceeded;     /* '<Root>/Alarm  Sub-System' */
  116     uint8_T is_active_IsPausedTimeExceeded;/* '<Root>/Alarm  Sub-System' */
  117     uint8_T is_IsConfigTimeWarning;      /* '<Root>/Alarm  Sub-System' */
  118     uint8_T is_active_IsConfigTimeWarning;/* '<Root>/Alarm  Sub-System' */
  119     uint8_T is_IsBatteryError;           /* '<Root>/Alarm  Sub-System' */
  120     uint8_T is_active_IsBatteryError;    /* '<Root>/Alarm  Sub-System' */
  121     uint8_T is_IsPumpHot;                /* '<Root>/Alarm  Sub-System' */
  122     uint8_T is_active_IsPumpHot;         /* '<Root>/Alarm  Sub-System' */
  123     uint8_T is_IsLoggingFailed;          /* '<Root>/Alarm  Sub-System' */
  124     uint8_T is_active_IsLoggingFailed;   /* '<Root>/Alarm  Sub-System' */
  125     uint8_T is_IsHardwareError;          /* '<Root>/Alarm  Sub-System' */
  126     uint8_T is_active_IsHardwareError;   /* '<Root>/Alarm  Sub-System' */
  127     uint8_T overInfusionTimer;           /* '<Root>/Alarm  Sub-System' */
  128     uint8_T underInfusionTimer;          /* '<Root>/Alarm  Sub-System' */
  129     uint8_T currentAlarm;                /* '<Root>/Alarm  Sub-System' */
  130     uint8_T audioTimer;                  /* '<Root>/Alarm  Sub-System' */
  131     uint8_T cancelAlarm;                 /* '<Root>/Alarm  Sub-System' */
  132     uint8_T Max_Alarm_Level;             /* '<Root>/Alarm  Sub-System' */
  133     uint8_T idletimer;                   /* '<Root>/Alarm  Sub-System' */
  134     uint8_T pausedtimer;                 /* '<Root>/Alarm  Sub-System' */
  135   } DW_ALARM_Functional_f_T;
  136   
  137   /* Real-time Model Data Structure */
  138   struct tag_RTM_ALARM_Functional_T {
  139     const char_T **errorStatus;
  140   };
  141   
  142   typedef struct {
  143     B_ALARM_Functional_c_T rtb;
  144     DW_ALARM_Functional_f_T rtdw;
  145     RT_MODEL_ALARM_Functional_T rtm;
  146   } MdlrefDW_ALARM_Functional_T;
  147   
  148   /* Model reference registration function */
  149   extern void ALARM_Functional_initialize(const char_T **rt_errorStatus,
  150     RT_MODEL_ALARM_Functional_T *const ALARM_Functional_M, B_ALARM_Functional_c_T *
  151     localB, DW_ALARM_Functional_f_T *localDW);
  152   extern void ALARM_Functional_Init(B_ALARM_Functional_c_T *localB,
  153     DW_ALARM_Functional_f_T *localDW);
  154   extern void ALARM_Functional(const Infusion_Manager_Outputs *rtu_IM_IN, const
  155     Top_Level_Mode_Outputs *rtu_TLM_MODE_IN, const System_Monitor_Output
  156     *rtu_SYS_MON_IN, const Log_Output *rtu_LOGGING_IN, const Operator_Commands
  157     *rtu_OP_CMD_IN, const Drug_Database_Inputs *rtu_DB_IN, const
  158     Device_Sensor_Inputs *rtu_SENSOR_IN, const Device_Configuration_Inputs
  159     *rtu_CONST_IN, const System_Status_Outputs *rtu_SYS_STAT_IN, const
  160     Config_Outputs *rtu_CONFIG_IN, Alarm_Outputs *rty_ALARM_OUT,
  161     B_ALARM_Functional_c_T *localB, DW_ALARM_Functional_f_T *localDW);
  162   
  163   /*-
  164    * The generated code includes comments that allow you to trace directly
  165    * back to the appropriate location in the model.  The basic format
  166    * is <system>/block_name, where system is the system number (uniquely
  167    * assigned by Simulink) and block_name is the name of the block.
  168    *
  169    * Use the MATLAB hilite_system command to trace the generated code back
  170    * to the model.  For example,
  171    *
  172    * hilite_system('<S3>')    - opens system 3
  173    * hilite_system('<S3>/Kp') - opens and selects block Kp which resides in S3
  174    *
  175    * Here is the system hierarchy for this model
  176    *
  177    * '<Root>' : 'ALARM_Functional'
  178    * '<S1>'   : 'ALARM_Functional/Alarm  Sub-System'
  179    */
  180   #endif                                 /* RTW_HEADER_ALARM_Functional_h_ */
  181