/*
 * File: COMR_LowVoltDiag.h
 *
 * Code generated for Simulink model 'COMR_LowVoltDiag'.
 *
 * Model version                  : A1.0_0
 * Simulink Coder version         : 8.11 (R2016b) 25-Aug-2016
 * C/C++ source code generated on : Fri Sep 11 17:26:07 2020
 *
 * Target selection: ert.tlc
 * Embedded hardware selection: Infineon->TriCore
 * Code generation objectives:
 *    1. MISRA C:2012 guidelines
 *    2. Execution efficiency
 * Validation result: Not run
 */

#ifndef RTW_HEADER_COMR_LowVoltDiag_h_
#define RTW_HEADER_COMR_LowVoltDiag_h_
#include <stddef.h>
#ifndef COMR_LowVoltDiag_COMMON_INCLUDES_
# define COMR_LowVoltDiag_COMMON_INCLUDES_
#include "rtwtypes.h"
#endif                                 /* COMR_LowVoltDiag_COMMON_INCLUDES_ */

#include "COMR_LowVoltDiag_types.h"

/* Includes for objects with custom storage classes. */
#include "COMR_LowVoltDiag_parameter.h"

/* Macros for accessing real-time model data structure */

/* user code (top of header file) */
#include "ASW_Interface.h"

/* Block states (auto storage) for system '<Root>' */
typedef struct {
  real32_T Delay_DSTATE;               /* '<S54>/Delay' */
  real32_T Delay_DSTATE_o;             /* '<S53>/Delay' */
  real32_T Delay_DSTATE_f;             /* '<S31>/Delay' */
  real32_T Delay_DSTATE_n;             /* '<S30>/Delay' */
  real32_T Delay_DSTATE_m;             /* '<S29>/Delay' */
  real32_T Delay_DSTATE_p;             /* '<S28>/Delay' */
  real32_T Delay_DSTATE_ox;            /* '<S27>/Delay' */
  real32_T Delay_DSTATE_j;             /* '<S26>/Delay' */
  real32_T Delay_DSTATE_i;             /* '<S9>/Delay' */
  real32_T Delay_DSTATE_l;             /* '<S8>/Delay' */
  real32_T Delay_DSTATE_jv;            /* '<S7>/Delay' */
  real32_T Delay_DSTATE_id;            /* '<S6>/Delay' */
  real32_T counter;                    /* '<S25>/ComDiagEn' */
  uint8_T Delay3_DSTATE;               /* '<S52>/Delay3' */
  uint8_T Delay3_DSTATE_h;             /* '<S24>/Delay3' */
  uint8_T Delay3_DSTATE_o;             /* '<S23>/Delay3' */
  uint8_T Delay3_DSTATE_f;             /* '<S22>/Delay3' */
  uint8_T Delay3_DSTATE_n;             /* '<S5>/Delay3' */
  uint8_T Delay3_DSTATE_g;             /* '<S4>/Delay3' */
  boolean_T Delay2_DSTATE;             /* '<S52>/Delay2' */
  boolean_T Delay2_DSTATE_n;           /* '<S24>/Delay2' */
  boolean_T Delay2_DSTATE_g;           /* '<S23>/Delay2' */
  boolean_T Delay2_DSTATE_d;           /* '<S22>/Delay2' */
  boolean_T Delay2_DSTATE_f;           /* '<S5>/Delay2' */
  boolean_T Delay2_DSTATE_k;           /* '<S4>/Delay2' */
  uint8_T is_active_c4_COMR_LowVoltDiag;/* '<S25>/ComDiagEn' */
  uint8_T is_c4_COMR_LowVoltDiag;      /* '<S25>/ComDiagEn' */
} DW_COMR_LowVoltDiag_T;

/* Block states (auto storage) */
extern DW_COMR_LowVoltDiag_T COMR_LowVoltDiag_DW;

/* Model entry point functions */
extern void COMR_LowVoltDiag_initialize(void);
extern void COMR_LowVoltDiag_step(void);

/* Exported data declaration */

/* Volatile memory section */
/* Declaration for custom storage class: Volatile */
extern volatile uint8_T DFC_CSCPwrSpyHiErr_ASW;
extern volatile uint8_T DFC_CSCPwrSpyLoErr_ASW;
extern volatile uint8_T DFC_Kl30OutRngErr_ASW;
extern volatile uint8_T DFC_Kl30VoltHiErr_ASW;
extern volatile uint8_T DFC_Kl30VoltLoErr_ASW;
extern volatile uint8_T DFC_Kl30cVoltLoErr_ASW;

/* Declaration for custom storage class: OutputSignal */
extern volatile boolean_T COMR_bCscPwrSpyHiDet;
extern volatile boolean_T COMR_bCscPwrSpyHiHeal;
extern volatile boolean_T COMR_bCscPwrSpyLoDet;
extern volatile boolean_T COMR_bCscPwrSpyLoHeal;
extern volatile boolean_T COMR_bKl30HiDet;
extern volatile boolean_T COMR_bKl30HiHeal;
extern volatile boolean_T COMR_bKl30LoDet;
extern volatile boolean_T COMR_bKl30LoHeal;
extern volatile boolean_T COMR_bKl30OutRngDet;
extern volatile boolean_T COMR_bKl30OutRngHeal;
extern volatile boolean_T COMR_bKl30cLowDet;
extern volatile boolean_T COMR_bKl30cLowHeal;
extern volatile boolean_T COMR_bLvComDiagEn;

/*-
 * The generated code includes comments that allow you to trace directly
 * back to the appropriate location in the model.  The basic format
 * is <system>/block_name, where system is the system number (uniquely
 * assigned by Simulink) and block_name is the name of the block.
 *
 * Use the MATLAB hilite_system command to trace the generated code back
 * to the model.  For example,
 *
 * hilite_system('<S3>')    - opens system 3
 * hilite_system('<S3>/Kp') - opens and selects block Kp which resides in S3
 *
 * Here is the system hierarchy for this model
 *
 * '<Root>' : 'COMR_LowVoltDiag'
 * '<S1>'   : 'COMR_LowVoltDiag/CSC_PwrSpy'
 * '<S2>'   : 'COMR_LowVoltDiag/KL30'
 * '<S3>'   : 'COMR_LowVoltDiag/KL30C'
 * '<S4>'   : 'COMR_LowVoltDiag/CSC_PwrSpy/DSM_ReportCheck'
 * '<S5>'   : 'COMR_LowVoltDiag/CSC_PwrSpy/DSM_ReportCheck3'
 * '<S6>'   : 'COMR_LowVoltDiag/CSC_PwrSpy/TONV_10msTimeDebounce1'
 * '<S7>'   : 'COMR_LowVoltDiag/CSC_PwrSpy/TONV_10msTimeDebounce2'
 * '<S8>'   : 'COMR_LowVoltDiag/CSC_PwrSpy/TONV_10msTimeDebounce3'
 * '<S9>'   : 'COMR_LowVoltDiag/CSC_PwrSpy/TONV_10msTimeDebounce4'
 * '<S10>'  : 'COMR_LowVoltDiag/CSC_PwrSpy/DSM_ReportCheck/Bit Clear1'
 * '<S11>'  : 'COMR_LowVoltDiag/CSC_PwrSpy/DSM_ReportCheck/Bit Clear2'
 * '<S12>'  : 'COMR_LowVoltDiag/CSC_PwrSpy/DSM_ReportCheck/Bit Set'
 * '<S13>'  : 'COMR_LowVoltDiag/CSC_PwrSpy/DSM_ReportCheck/Bit Set1'
 * '<S14>'  : 'COMR_LowVoltDiag/CSC_PwrSpy/DSM_ReportCheck/Bit Set2'
 * '<S15>'  : 'COMR_LowVoltDiag/CSC_PwrSpy/DSM_ReportCheck/Bit Set4'
 * '<S16>'  : 'COMR_LowVoltDiag/CSC_PwrSpy/DSM_ReportCheck3/Bit Clear1'
 * '<S17>'  : 'COMR_LowVoltDiag/CSC_PwrSpy/DSM_ReportCheck3/Bit Clear2'
 * '<S18>'  : 'COMR_LowVoltDiag/CSC_PwrSpy/DSM_ReportCheck3/Bit Set'
 * '<S19>'  : 'COMR_LowVoltDiag/CSC_PwrSpy/DSM_ReportCheck3/Bit Set1'
 * '<S20>'  : 'COMR_LowVoltDiag/CSC_PwrSpy/DSM_ReportCheck3/Bit Set2'
 * '<S21>'  : 'COMR_LowVoltDiag/CSC_PwrSpy/DSM_ReportCheck3/Bit Set4'
 * '<S22>'  : 'COMR_LowVoltDiag/KL30/DSM_ReportCheck1'
 * '<S23>'  : 'COMR_LowVoltDiag/KL30/DSM_ReportCheck2'
 * '<S24>'  : 'COMR_LowVoltDiag/KL30/DSM_ReportCheck4'
 * '<S25>'  : 'COMR_LowVoltDiag/KL30/Subsystem'
 * '<S26>'  : 'COMR_LowVoltDiag/KL30/TONV_10msTimeDebounce1'
 * '<S27>'  : 'COMR_LowVoltDiag/KL30/TONV_10msTimeDebounce2'
 * '<S28>'  : 'COMR_LowVoltDiag/KL30/TONV_10msTimeDebounce3'
 * '<S29>'  : 'COMR_LowVoltDiag/KL30/TONV_10msTimeDebounce4'
 * '<S30>'  : 'COMR_LowVoltDiag/KL30/TONV_10msTimeDebounce5'
 * '<S31>'  : 'COMR_LowVoltDiag/KL30/TONV_10msTimeDebounce6'
 * '<S32>'  : 'COMR_LowVoltDiag/KL30/DSM_ReportCheck1/Bit Clear1'
 * '<S33>'  : 'COMR_LowVoltDiag/KL30/DSM_ReportCheck1/Bit Clear2'
 * '<S34>'  : 'COMR_LowVoltDiag/KL30/DSM_ReportCheck1/Bit Set'
 * '<S35>'  : 'COMR_LowVoltDiag/KL30/DSM_ReportCheck1/Bit Set1'
 * '<S36>'  : 'COMR_LowVoltDiag/KL30/DSM_ReportCheck1/Bit Set2'
 * '<S37>'  : 'COMR_LowVoltDiag/KL30/DSM_ReportCheck1/Bit Set4'
 * '<S38>'  : 'COMR_LowVoltDiag/KL30/DSM_ReportCheck2/Bit Clear1'
 * '<S39>'  : 'COMR_LowVoltDiag/KL30/DSM_ReportCheck2/Bit Clear2'
 * '<S40>'  : 'COMR_LowVoltDiag/KL30/DSM_ReportCheck2/Bit Set'
 * '<S41>'  : 'COMR_LowVoltDiag/KL30/DSM_ReportCheck2/Bit Set1'
 * '<S42>'  : 'COMR_LowVoltDiag/KL30/DSM_ReportCheck2/Bit Set2'
 * '<S43>'  : 'COMR_LowVoltDiag/KL30/DSM_ReportCheck2/Bit Set4'
 * '<S44>'  : 'COMR_LowVoltDiag/KL30/DSM_ReportCheck4/Bit Clear1'
 * '<S45>'  : 'COMR_LowVoltDiag/KL30/DSM_ReportCheck4/Bit Clear2'
 * '<S46>'  : 'COMR_LowVoltDiag/KL30/DSM_ReportCheck4/Bit Set'
 * '<S47>'  : 'COMR_LowVoltDiag/KL30/DSM_ReportCheck4/Bit Set1'
 * '<S48>'  : 'COMR_LowVoltDiag/KL30/DSM_ReportCheck4/Bit Set2'
 * '<S49>'  : 'COMR_LowVoltDiag/KL30/DSM_ReportCheck4/Bit Set4'
 * '<S50>'  : 'COMR_LowVoltDiag/KL30/Subsystem/ComDiagEn'
 * '<S51>'  : 'COMR_LowVoltDiag/KL30C/Compare To Constant8'
 * '<S52>'  : 'COMR_LowVoltDiag/KL30C/DSM_ReportCheck2'
 * '<S53>'  : 'COMR_LowVoltDiag/KL30C/TONV_10msTimeDebounce1'
 * '<S54>'  : 'COMR_LowVoltDiag/KL30C/TONV_10msTimeDebounce2'
 * '<S55>'  : 'COMR_LowVoltDiag/KL30C/DSM_ReportCheck2/Bit Clear1'
 * '<S56>'  : 'COMR_LowVoltDiag/KL30C/DSM_ReportCheck2/Bit Clear2'
 * '<S57>'  : 'COMR_LowVoltDiag/KL30C/DSM_ReportCheck2/Bit Set'
 * '<S58>'  : 'COMR_LowVoltDiag/KL30C/DSM_ReportCheck2/Bit Set1'
 * '<S59>'  : 'COMR_LowVoltDiag/KL30C/DSM_ReportCheck2/Bit Set2'
 * '<S60>'  : 'COMR_LowVoltDiag/KL30C/DSM_ReportCheck2/Bit Set4'
 */
#endif                                 /* RTW_HEADER_COMR_LowVoltDiag_h_ */

/*
 * File trailer for generated code.
 *
 * [EOF]
 */
