#ifndef __c8_diffserv_model_h__
#define __c8_diffserv_model_h__

/* Include files */
#include "sfc_sf.h"
#include "sfc_mex.h"
#include "rtwtypes.h"

/* Type Definitions */
#ifndef typedef_SFc8_diffserv_modelInstanceStruct
#define typedef_SFc8_diffserv_modelInstanceStruct

typedef struct {
  SimStruct *S;
  ChartInfoStruct chartInfo;
  uint32_T chartNumber;
  uint32_T instanceNumber;
  int32_T c8_sfEvent;
  boolean_T c8_isStable;
  boolean_T c8_doneDoubleBufferReInit;
  uint8_T c8_is_active_c8_diffserv_model;
  real_T c8_prioritization;
  real_T c8_weighting;
  real_T c8_Q1_weight;
  real_T c8_Q2_weight;
  real_T c8_Q3_weight;
  real_T c8_preemption;
  real_T c8_workConservation;
  real_T *c8_Q_before_expediting_address;
  int32_T c8_Q_before_expediting_index;
  boolean_T *c8_current_Q_finished_address;
  int32_T c8_current_Q_finished_index;
  real_T *c8_last_Q_served_address;
  int32_T c8_last_Q_served_index;
  boolean_T *c8_last_was_expedited_address;
  int32_T c8_last_was_expedited_index;
  real_T *c8_packets_served_address;
  int32_T c8_packets_served_index;
} SFc8_diffserv_modelInstanceStruct;

#endif                                 /*typedef_SFc8_diffserv_modelInstanceStruct*/

/* Named Constants */

/* Variable Declarations */

/* Variable Definitions */

/* Function Declarations */
extern const mxArray *sf_c8_diffserv_model_get_eml_resolved_functions_info(void);

/* Function Definitions */
extern void sf_c8_diffserv_model_get_check_sum(mxArray *plhs[]);
extern void c8_diffserv_model_method_dispatcher(SimStruct *S, int_T method, void
  *data);

#endif
