static void set_sim_state_c8_WorkstationModel
  (SFc8_WorkstationModelInstanceStruct *chartInstance, const mxArray *c8_st)
{
  const mxArray *c8_u;
  real_T *c8_QueueRoute;
  c8_QueueRoute = (real_T *)ssGetOutputPortSignal(chartInstance->S, 1);
  chartInstance->c8_doneDoubleBufferReInit = TRUE;
  c8_u = sf_mex_dup(c8_st);
  *c8_QueueRoute = c8_emlrt_marshallIn(chartInstance, sf_mex_dup(sf_mex_getcell
    (c8_u, 0)), "QueueRoute");
  chartInstance->c8_is_active_c8_WorkstationModel = c8_e_emlrt_marshallIn
    (chartInstance, sf_mex_dup(sf_mex_getcell(c8_u, 1)),
     "is_active_c8_WorkstationModel");
  sf_mex_destroy(&c8_u);
  c8_update_debugger_state_c8_WorkstationModel(chartInstance);
  sf_mex_destroy(&c8_st);
}
static void set_sim_state_c8_AtomicGloveBradImitateSmile
  (SFc8_AtomicGloveBradImitateSmileInstanceStruct *chartInstance, const mxArray *
   c8_st)
{
  const mxArray *c8_u;
  real_T *c8_y;
  c8_y = (real_T *)ssGetOutputPortSignal(chartInstance->S, 1);
  chartInstance->c8_doneDoubleBufferReInit = true;
  c8_u = sf_mex_dup(c8_st);
  *c8_y = c8_emlrt_marshallIn(chartInstance, sf_mex_dup(sf_mex_getcell(c8_u, 0)),
    "y");
  chartInstance->c8_is_active_c8_AtomicGloveBradImitateSmile =
    c8_d_emlrt_marshallIn(chartInstance, sf_mex_dup(sf_mex_getcell(c8_u, 1)),
    "is_active_c8_AtomicGloveBradImitateSmile");
  sf_mex_destroy(&c8_u);
  c8_update_debugger_state_c8_AtomicGloveBradImitateSmile(chartInstance);
  sf_mex_destroy(&c8_st);
}
static void set_sim_state_c8_AllPurposeModel_TyreRelaxation
  (SFc8_AllPurposeModel_TyreRelaxationInstanceStruct *chartInstance, const
   mxArray *c8_st)
{
  const mxArray *c8_u;
  c8_irp_vec3 c8_r0;
  chartInstance->c8_doneDoubleBufferReInit = true;
  c8_u = sf_mex_dup(c8_st);
  c8_r0 = c8_emlrt_marshallIn(chartInstance, sf_mex_dup(sf_mex_getcell(c8_u, 0)),
    "derpos_irp3");
  *(real_T *)&((char_T *)chartInstance->c8_derpos_irp3)[0] = c8_r0.x;
  *(real_T *)&((char_T *)chartInstance->c8_derpos_irp3)[8] = c8_r0.y;
  *(real_T *)&((char_T *)chartInstance->c8_derpos_irp3)[16] = c8_r0.rotz;
  chartInstance->c8_is_active_c8_AllPurposeModel_TyreRelaxation =
    c8_e_emlrt_marshallIn(chartInstance, sf_mex_dup(sf_mex_getcell(c8_u, 1)),
    "is_active_c8_AllPurposeModel_TyreRelaxation");
  sf_mex_destroy(&c8_u);
  c8_update_debugger_state_c8_AllPurposeModel_TyreRelaxation(chartInstance);
  sf_mex_destroy(&c8_st);
}
static void set_sim_state_c8_NavigationObserver_2
  (SFc8_NavigationObserver_2InstanceStruct *chartInstance, const mxArray *c8_st)
{
  const mxArray *c8_b_u;
  real_T c8_dv0[36];
  int32_T c8_i1;
  chartInstance->c8_doneDoubleBufferReInit = true;
  c8_b_u = sf_mex_dup(c8_st);
  c8_emlrt_marshallIn(chartInstance, sf_mex_dup(sf_mex_getcell(c8_b_u, 0)),
                      "FT_k_1", c8_dv0);
  for (c8_i1 = 0; c8_i1 < 36; c8_i1++) {
    (*chartInstance->c8_FT_k_1)[c8_i1] = c8_dv0[c8_i1];
  }

  chartInstance->c8_is_active_c8_NavigationObserver_2 = c8_e_emlrt_marshallIn
    (chartInstance, sf_mex_dup(sf_mex_getcell(c8_b_u, 1)),
     "is_active_c8_NavigationObserver_2");
  sf_mex_destroy(&c8_b_u);
  c8_update_debugger_state_c8_NavigationObserver_2(chartInstance);
  sf_mex_destroy(&c8_st);
}