static uint8_T c23_d_emlrt_marshallIn(SFc23_ArregloSeisPorSeisInstanceStruct
  *chartInstance, const mxArray *c23_b_is_active_c23_ArregloSeisPorSeis, const
  char_T *c23_identifier)
{
  uint8_T c23_y;
  emlrtMsgIdentifier c23_thisId;
  c23_thisId.fIdentifier = c23_identifier;
  c23_thisId.fParent = NULL;
  c23_y = c23_e_emlrt_marshallIn(chartInstance, sf_mex_dup
    (c23_b_is_active_c23_ArregloSeisPorSeis), &c23_thisId);
  sf_mex_destroy(&c23_b_is_active_c23_ArregloSeisPorSeis);
  return c23_y;
}
static void set_sim_state_c23_CSE1_DP(SFc23_CSE1_DPInstanceStruct *chartInstance,
  const mxArray *c23_st)
{
  const mxArray *c23_u;
  real_T c23_dv0[9];
  int32_T c23_i1;
  real_T (*c23_K_i)[9];
  c23_K_i = (real_T (*)[9])ssGetOutputPortSignal(chartInstance->S, 1);
  chartInstance->c23_doneDoubleBufferReInit = true;
  c23_u = sf_mex_dup(c23_st);
  c23_emlrt_marshallIn(chartInstance, sf_mex_dup(sf_mex_getcell(c23_u, 0)),
                       "K_i", c23_dv0);
  for (c23_i1 = 0; c23_i1 < 9; c23_i1++) {
    (*c23_K_i)[c23_i1] = c23_dv0[c23_i1];
  }

  chartInstance->c23_is_active_c23_CSE1_DP = c23_e_emlrt_marshallIn
    (chartInstance, sf_mex_dup(sf_mex_getcell(c23_u, 1)),
     "is_active_c23_CSE1_DP");
  sf_mex_destroy(&c23_u);
  c23_update_debugger_state_c23_CSE1_DP(chartInstance);
  sf_mex_destroy(&c23_st);
}