/* TargetManagement_pkg::internalOperators::extractTargetsFromMRSP */ void extractTargetsFromMRSP_TargetManagement_pkg_internalOperators( /* TargetManagement_pkg::internalOperators::extractTargetsFromMRSP::MRSP */ MRSP_internal_T_TargetManagement_types *MRSP, /* TargetManagement_pkg::internalOperators::extractTargetsFromMRSP::TargetsOfMRSP */ extractTargetsMRSPACC_TargetManagement_pkg *TargetsOfMRSP) { kcg_int i; extractTargetsMRSPACC_TargetManagement_pkg tmp1; kcg_bool tmp; /* TargetManagement_pkg::internalOperators::extractTargetsFromMRSP::_L24 */ Target_list_MRSP_real_T_TargetManagement_types _L24; (*TargetsOfMRSP).lastInsertedTargetIndex = - 1; for (i = 0; i < 200; i++) { kcg_copy_Target_real_T_TargetManagement_types( &_L24[i], (Target_real_T_TargetManagement_types *) &emptyTargetMRSP_TargetManagement_pkg); } kcg_copy_Target_list_MRSP_real_T_TargetManagement_types( &(*TargetsOfMRSP).targetList, &_L24); if ((*MRSP)[0].valid) { for (i = 0; i < 200; i++) { kcg_copy_extractTargetsMRSPACC_TargetManagement_pkg(&tmp1, TargetsOfMRSP); /* 1 */ extractTargetsFromMRSPInt_TargetManagement_pkg_internalOperators( i, &tmp1, MRSP, &tmp, TargetsOfMRSP); if (!tmp) { break; } } } }
/* TargetManagement_pkg::internalOperators::extractTargetsFromMRSP */ void extractTargetsFromMRSP_TargetManagement_pkg_internalOperators( /* TargetManagement_pkg::internalOperators::extractTargetsFromMRSP::MRSP */ MRSP_internal_T_TargetManagement_types *MRSP, /* TargetManagement_pkg::internalOperators::extractTargetsFromMRSP::TargetsOfMRSP */ extractTargetsMRSPACC_TargetManagement_pkg *TargetsOfMRSP) { /* TargetManagement_pkg::internalOperators::extractTargetsFromMRSP */ static extractTargetsMRSPACC_TargetManagement_pkg acc; /* TargetManagement_pkg::internalOperators::extractTargetsFromMRSP */ static kcg_bool cond_iterw; static kcg_int i; (*TargetsOfMRSP).lastInsertedTargetIndex = - 1; for (i = 0; i < 200; i++) { kcg_copy_Target_real_T_TargetManagement_types( &(*TargetsOfMRSP).targetList[i], (Target_real_T_TargetManagement_types *) &emptyTarget_TargetManagement_pkg); } if ((*MRSP)[0].valid) { for (i = 0; i < 200; i++) { kcg_copy_extractTargetsMRSPACC_TargetManagement_pkg(&acc, TargetsOfMRSP); /* 1 */ extractTargetsFromMRSPInt_TargetManagement_pkg_internalOperators( i, &acc, MRSP, &cond_iterw, TargetsOfMRSP); if (!cond_iterw) { break; } } } }
/* TargetManagement_pkg::internalOperators::extractLOATargetsFromMAint */ void extractLOATargetsFromMAint_TargetManagement_pkg_internalOperators( /* TargetManagement_pkg::internalOperators::extractLOATargetsFromMAint::ACC */ extractTargetsLOAACC_TargetManagement_pkg *ACC, /* TargetManagement_pkg::internalOperators::extractLOATargetsFromMAint::MA */ MA_section_real_T_TargetManagement_types *MA, /* TargetManagement_pkg::internalOperators::extractLOATargetsFromMAint::Cond */ kcg_bool *Cond, /* TargetManagement_pkg::internalOperators::extractLOATargetsFromMAint::ACC_out */ extractTargetsLOAACC_TargetManagement_pkg *ACC_out) { Target_real_T_TargetManagement_types tmp; /* TargetManagement_pkg::internalOperators::extractLOATargetsFromMAint::_L89 */ kcg_int _L89; *Cond = (*MA).valid; _L89 = 1 + (*ACC).lastInsertedTargetIndex; if (*Cond & !(*MA).EndSection) { (*ACC_out).lastInsertedTargetIndex = _L89; kcg_copy_Target_list_LOA_real_T_TargetManagement_types( &(*ACC_out).targetList, &(*ACC).targetList); /* 7 */ GetLOAFromSection_TargetManagement_pkg_internalOperators(MA, &tmp); if ((0 <= _L89) & (_L89 < 10)) { kcg_copy_Target_real_T_TargetManagement_types( &(*ACC_out).targetList[_L89], &tmp); } } else { kcg_copy_extractTargetsLOAACC_TargetManagement_pkg(ACC_out, ACC); } }
/* TargetManagement_pkg::internalOperators::calcMATargets */ void calcMATargets_TargetManagement_pkg_internalOperators( /* TargetManagement_pkg::internalOperators::calcMATargets::MA_section */ MA_section_real_T_TargetManagement_types *MA_section, /* TargetManagement_pkg::internalOperators::calcMATargets::EOA_Target */ Target_real_T_TargetManagement_types *EOA_Target, /* TargetManagement_pkg::internalOperators::calcMATargets::SvL_LoA_Target */ Target_real_T_TargetManagement_types *SvL_LoA_Target) { /* TargetManagement_pkg::internalOperators::calcMATargets */ static L_internal_real_Type_SDM_Types_Pkg tmp; /* TargetManagement_pkg::internalOperators::calcMATargets::_L62 */ static kcg_bool _L62; _L62 = (*MA_section).EOA.TargetSpeed > 0.0; /* 5 */ if (_L62) { (*SvL_LoA_Target).distance = (*MA_section).EOA.Location; (*SvL_LoA_Target).speed = (*MA_section).EOA.TargetSpeed; /* 8 */ if ((*MA_section).valid) { (*SvL_LoA_Target).targetType = LoA_TargetManagement_types; } else { (*SvL_LoA_Target).targetType = invalid_TargetManagement_types; } kcg_copy_Target_real_T_TargetManagement_types( EOA_Target, (Target_real_T_TargetManagement_types *) &emptyTarget_TargetManagement_pkg); } else { (*EOA_Target).distance = (*MA_section).EOA.Location; (*EOA_Target).speed = (*MA_section).EOA.TargetSpeed; (*SvL_LoA_Target).speed = (*MA_section).EOA.TargetSpeed; /* 7 */ if ((*MA_section).OL_valid) { tmp = (*MA_section).Overlap; } else /* 6 */ if ((*MA_section).DP_valid) { tmp = (*MA_section).DangerPoint; } else { tmp = 0.0; } /* 9 */ if ((*MA_section).valid) { (*SvL_LoA_Target).targetType = SvL_TargetManagement_types; (*EOA_Target).targetType = EoA_TargetManagement_types; } else { (*SvL_LoA_Target).targetType = invalid_TargetManagement_types; (*EOA_Target).targetType = invalid_TargetManagement_types; } (*SvL_LoA_Target).distance = (*MA_section).EOA.Location + tmp; } }
/* TargetManagement_pkg::internalOperators::removeOverpassedMRSPint */ void removeOverpassedMRSPint_TargetManagement_pkg_internalOperators( /* TargetManagement_pkg::internalOperators::removeOverpassedMRSPint::Targets */ Target_list_MRSP_real_T_TargetManagement_types *Targets, /* TargetManagement_pkg::internalOperators::removeOverpassedMRSPint::d_safe_max_front */ L_internal_real_Type_SDM_Types_Pkg d_safe_max_front, /* TargetManagement_pkg::internalOperators::removeOverpassedMRSPint::Cond */ kcg_bool *Cond, /* TargetManagement_pkg::internalOperators::removeOverpassedMRSPint::TargetsReduced */ Target_list_MRSP_real_T_TargetManagement_types *TargetsReduced) { *Cond = (MRSP_TargetManagement_types == (*Targets)[0].targetType) & ((*Targets)[0].distance <= d_safe_max_front); /* 1 */ if (*Cond) { kcg_copy_array_97070(&(*TargetsReduced)[0], (array_97070 *) &(*Targets)[1]); kcg_copy_Target_real_T_TargetManagement_types( &(&(*TargetsReduced)[199])[0], (Target_real_T_TargetManagement_types *) &emptyTarget_TargetManagement_pkg); } else { kcg_copy_Target_list_MRSP_real_T_TargetManagement_types( TargetsReduced, Targets); } }
/* TargetManagement_pkg::TargetManagement */ void TargetManagement_TargetManagement_pkg( /* TargetManagement_pkg::TargetManagement::MRSP */ MRSP_internal_T_TargetManagement_types *MRSP, /* TargetManagement_pkg::TargetManagement::MRSP_updated */ kcg_bool MRSP_updated, /* TargetManagement_pkg::TargetManagement::MA */ MA_section_real_T_TargetManagement_types *MA, /* TargetManagement_pkg::TargetManagement::MA_updated */ kcg_bool MA_updated, /* TargetManagement_pkg::TargetManagement::trainLocations */ TrainLocations_real_T_SDM_Types_Pkg *trainLocations, outC_TargetManagement_TargetManagement_pkg *outC) { /* TargetManagement_pkg::TargetManagement */ Target_list_MRSP_real_T_TargetManagement_types tmp1; /* TargetManagement_pkg::TargetManagement */ extractTargetsMRSPACC_TargetManagement_pkg tmp; /* TargetManagement_pkg::TargetManagement::_L88 */ kcg_bool _L88; kcg_int i; /* ck_MA_updated */ if (MA_updated) { /* 1 */ calcMATargets_TargetManagement_pkg_internalOperators( MA, &outC->_L12, &outC->_L93); } else if (outC->init) { kcg_copy_Target_real_T_TargetManagement_types( &outC->_L93, (Target_real_T_TargetManagement_types *) &emptyTarget_TargetManagement_pkg); kcg_copy_Target_real_T_TargetManagement_types( &outC->_L12, (Target_real_T_TargetManagement_types *) &emptyTarget_TargetManagement_pkg); } kcg_copy_Target_real_T_TargetManagement_types( &outC->targetCollection.EOA_target, &outC->_L12); kcg_copy_Target_real_T_TargetManagement_types( &outC->targetCollection.SvL_LoA_target, &outC->_L93); /* ck_MRSP_updated */ if (MRSP_updated) { /* 1 */ extractTargetsFromMRSP_TargetManagement_pkg_internalOperators(MRSP, &tmp); kcg_copy_Target_list_MRSP_real_T_TargetManagement_types( &tmp1, &tmp.targetList); } else /* last_init_ck_MRSPTargetList */ if (outC->init) { for (i = 0; i < 110; i++) { kcg_copy_Target_real_T_TargetManagement_types( &tmp1[i], (Target_real_T_TargetManagement_types *) &emptyTarget_TargetManagement_pkg); } } else { kcg_copy_Target_list_MRSP_real_T_TargetManagement_types( &tmp1, &outC->rem_MRSPTargetList); } outC->init = kcg_false; /* 1 */ removeOverpassedMRSP_TargetManagement_pkg_internalOperators( &tmp1, (*trainLocations).d_maxSafeFrontEndPos, &outC->rem_MRSPTargetList, &_L88); outC->targetCollection.updatedTargetList = MRSP_updated | MA_updated | _L88; kcg_copy_Target_list_MRSP_real_T_TargetManagement_types( &outC->targetCollection.MRSP_targetList, &outC->rem_MRSPTargetList); }
/* TargetLimits_Pkg::TargetSelector */ void TargetSelector_TargetLimits_Pkg( /* TargetLimits_Pkg::TargetSelector::Targets */ TargetCollection_T_TargetManagement_types *Targets, /* TargetLimits_Pkg::TargetSelector::Curves */ CurveCollection_T_CalcBrakingCurves_types *Curves, /* TargetLimits_Pkg::TargetSelector::odometry */ odometry_T_Obu_BasicTypes_Pkg *odometry, /* TargetLimits_Pkg::TargetSelector::trainData_int */ trainData_internal_t_SDM_Types_Pkg *trainData_int, /* TargetLimits_Pkg::TargetSelector::T_b */ t_Brake_t_SDMModelPkg *T_b, /* TargetLimits_Pkg::TargetSelector::NationalValues */ P3_NationalValues_T_Packet_Types_Pkg *NationalValues, /* TargetLimits_Pkg::TargetSelector::trainLocations */ TrainLocations_real_T_SDM_Types_Pkg *trainLocations, /* TargetLimits_Pkg::TargetSelector::MostRestrictiveDisplayedTarget */ Target_T_TargetManagement_types *MostRestrictiveDisplayedTarget, /* TargetLimits_Pkg::TargetSelector::MostRestrictiveEBDCurve */ ParabolaCurve_T_CalcBrakingCurves_types *MostRestrictiveEBDCurve, /* TargetLimits_Pkg::TargetSelector::SBDcurve */ ParabolaCurve_T_CalcBrakingCurves_types *SBDcurve, /* TargetLimits_Pkg::TargetSelector::GUIcurve */ ParabolaCurve_T_CalcBrakingCurves_types *GUIcurve, /* TargetLimits_Pkg::TargetSelector::GUICurveEnabled */ kcg_bool *GUICurveEnabled, /* TargetLimits_Pkg::TargetSelector::V_Target */ V_internal_real_Type_SDM_Types_Pkg *V_Target, /* TargetLimits_Pkg::TargetSelector::V_P_MRDT */ V_internal_real_Type_SDM_Types_Pkg *V_P_MRDT, /* TargetLimits_Pkg::TargetSelector::D_EOA */ L_internal_real_Type_SDM_Types_Pkg *D_EOA, /* TargetLimits_Pkg::TargetSelector::D_SvL */ L_internal_real_Type_SDM_Types_Pkg *D_SvL, /* TargetLimits_Pkg::TargetSelector::v_est */ V_internal_real_Type_SDM_Types_Pkg *v_est, /* TargetLimits_Pkg::TargetSelector::T */ T_trac_t_TargetLimits_Pkg *T, /* TargetLimits_Pkg::TargetSelector::V_ura */ V_internal_real_Type_SDM_Types_Pkg *V_ura, /* TargetLimits_Pkg::TargetSelector::bec */ bec_t_TargetLimits_Pkg *bec, /* TargetLimits_Pkg::TargetSelector::D_SBI2 */ L_internal_real_Type_SDM_Types_Pkg *D_SBI2, /* TargetLimits_Pkg::TargetSelector::valid_D_SBI2 */ kcg_bool *valid_D_SBI2, /* TargetLimits_Pkg::TargetSelector::D_estfront */ L_internal_real_Type_SDM_Types_Pkg *D_estfront, /* TargetLimits_Pkg::TargetSelector::D_maxsafefront */ L_internal_real_Type_SDM_Types_Pkg *D_maxsafefront) { /* TargetLimits_Pkg::TargetSelector */ static TargetIteratorAkku_TargetLimits_Pkg acc; static kcg_int i; /* TargetLimits_Pkg::TargetSelector */ static V_internal_real_Type_SDM_Types_Pkg tmp; /* TargetLimits_Pkg::TargetSelector::_L29 */ static TargetIteratorAkku_TargetLimits_Pkg _L29; /* TargetLimits_Pkg::TargetSelector::_L59 */ static kcg_bool _L59; /* TargetLimits_Pkg::TargetSelector::_L60 */ static TargetIteratorAkku_TargetLimits_Pkg _L60; /* TargetLimits_Pkg::TargetSelector::_L55 */ static kcg_int _L55; /* TargetLimits_Pkg::TargetSelector::_L157 */ static Target_real_T_TargetManagement_types _L157; /* TargetLimits_Pkg::TargetSelector::_L261 */ static kcg_bool _L261; /* TargetLimits_Pkg::TargetSelector::_L262 */ static kcg_bool _L262; /* TargetLimits_Pkg::TargetSelector::_L282 */ static Target_real_T_TargetManagement_types _L282; _L29.ttype = invalid_TargetManagement_types; _L29.bec.v = 0.0; _L29.bec.d = 0.0; _L29.V_est = 0.0; _L29.V_ura = 0.0; _L29.V_P_MRDT_ebd = 0.0; _L262 = (*Targets).EOA_target.targetType == EoA_TargetManagement_types; kcg_copy_ParabolaCurve_T_CalcBrakingCurves_types( SBDcurve, &(*Curves).EOA_SBD_curve); _L55 = - 1; _L29.index = _L55; _L29.V_P_MRDT_index = _L29.index; _L29.SBI2 = 0.0; _L29.T.Traction = 0.0; _L29.T.berem = 0.0; _L29.T.bs = 0.0; _L29.T.bs1 = 0.0; _L29.T.bs2 = 0.0; _L29.T.indication = 0.0; *D_maxsafefront = (*trainLocations).d_maxSafeFrontEndPos; kcg_copy_ParabolaCurve_T_CalcBrakingCurves_types( GUIcurve, &(*Curves).GUI_curve); *GUICurveEnabled = (*Curves).GUI_curve_enabled; switch ((*NationalValues).q_nvinhsmicperm) { case Q_NVINHSMICPERM_Yes : _L29.T.inhComp = kcg_true; break; default : _L29.T.inhComp = kcg_false; } for (i = 0; i < 200; i++) { kcg_copy_TargetIteratorAkku_TargetLimits_Pkg(&acc, &_L29); /* 2 */ TargetIterator_TargetLimits_Pkg( i, &acc, &(*Targets).MRSP_targetList[i], &(*Curves).MRSP_EBD_curves[i], trainData_int, odometry, T_b, *D_maxsafefront, GUIcurve, *GUICurveEnabled, &_L59, &_L29); if (!_L59) { break; } } /* 4 */ TargetIterator_TargetLimits_Pkg( _L55, &_L29, &(*Targets).SvL_LoA_target, &(*Curves).SvL_LoA_EBD_curve, trainData_int, odometry, T_b, *D_maxsafefront, GUIcurve, *GUICurveEnabled, &_L59, &_L60); *v_est = _L60.V_est; *D_estfront = (*trainLocations).d_est_frontendPos; *D_EOA = (*Targets).EOA_target.distance; kcg_copy_T_trac_t_TargetLimits_Pkg(T, &_L60.T); *D_SvL = (*Targets).SvL_LoA_target.distance; if ((0 <= _L60.V_P_MRDT_index) & (_L60.V_P_MRDT_index < 200)) { kcg_copy_Target_real_T_TargetManagement_types( &_L157, &(*Targets).MRSP_targetList[_L60.V_P_MRDT_index]); } else { kcg_copy_Target_real_T_TargetManagement_types( &_L157, &(*Targets).SvL_LoA_target); } if ((0 <= _L60.index) & (_L60.index < 200)) { kcg_copy_ParabolaCurve_T_CalcBrakingCurves_types( MostRestrictiveEBDCurve, &(*Curves).MRSP_EBD_curves[_L60.index]); } else { kcg_copy_ParabolaCurve_T_CalcBrakingCurves_types( MostRestrictiveEBDCurve, &(*Curves).SvL_LoA_EBD_curve); } kcg_copy_bec_t_TargetLimits_Pkg(bec, &_L60.bec); *D_SBI2 = _L60.SBI2; *V_ura = _L60.V_ura; *valid_D_SBI2 = _L60.ttype != invalid_TargetManagement_types; /* ck__L275 */ if (_L262) { /* 2 */ v_SBI1_TargetLimits_Pkg( SBDcurve, *v_est, *D_estfront, *D_EOA, T_driver_SDM_Types_Pkg, *GUICurveEnabled, GUIcurve, T, &_L59, &tmp); } else { _L59 = kcg_false; tmp = 0.0; } /* 1 */ selectLEValid_TargetLimits_Pkg( (kcg_bool) (_L157.targetType != invalid_TargetManagement_types), _L60.V_P_MRDT_ebd, _L59, tmp, &_L261, &_L262, V_P_MRDT); /* 1 */ if (_L261) { kcg_copy_Target_real_T_TargetManagement_types(&_L282, &_L157); } else { kcg_copy_Target_real_T_TargetManagement_types( &_L282, &(*Targets).EOA_target); } (*MostRestrictiveDisplayedTarget).targetType = _L282.targetType; (*MostRestrictiveDisplayedTarget).valid = invalid_TargetManagement_types != _L282.targetType; *V_Target = _L282.speed; (*MostRestrictiveDisplayedTarget).distance = /* 1 */ TransformL_realToL_int_SDM_Types_Pkg(_L282.distance); (*MostRestrictiveDisplayedTarget).speed = /* 1 */ TransformV_realToV_int_SDM_Types_Pkg(*V_Target); }
/* TargetManagement_pkg::TargetManagement */ void TargetManagement_TargetManagement_pkg( /* TargetManagement_pkg::TargetManagement::MRSP */MRSP_internal_T_TargetManagement_types *MRSP, /* TargetManagement_pkg::TargetManagement::MRSP_updated */kcg_bool MRSP_updated, /* TargetManagement_pkg::TargetManagement::MA */MA_section_real_T_TargetManagement_types *MA, /* TargetManagement_pkg::TargetManagement::MA_updated */kcg_bool MA_updated, /* TargetManagement_pkg::TargetManagement::trainLocations */TrainLocations_real_T_SDM_Types_Pkg *trainLocations, outC_TargetManagement_TargetManagement_pkg *outC) { static struct__130782 tmp; static kcg_int i; static Target_list_MRSP_real_T_TargetManagement_types tmp3; static extractTargetsMRSPACC_TargetManagement_pkg tmp2; static array__130570 tmp1; static array__130570 tmp4; /* TargetManagement_pkg::TargetManagement::_L88 */ static kcg_bool _L88; if (MA_updated) { /* 1 */ calcMATargets_TargetManagement_pkg_internalOperators( MA, &outC->_L12, &outC->_L93); } else if (outC->init) { kcg_copy_Target_real_T_TargetManagement_types( &outC->_L93, (Target_real_T_TargetManagement_types *) &emptyTarget_TargetManagement_pkg); kcg_copy_Target_real_T_TargetManagement_types( &outC->_L12, (Target_real_T_TargetManagement_types *) &emptyTarget_TargetManagement_pkg); } kcg_copy_Target_real_T_TargetManagement_types( &outC->targetCollection.SvL_LoA_target, &outC->_L93); for (i = 0; i < 110; i++) { kcg_copy_Target_real_T_TargetManagement_types( &tmp4[i], (Target_real_T_TargetManagement_types *) &emptyTarget_TargetManagement_pkg); } if (MRSP_updated) { /* 1 */ extractTargetsFromMRSP_TargetManagement_pkg_internalOperators(MRSP, &tmp2); kcg_copy_Target_list_MRSP_real_T_TargetManagement_types( &tmp3, &tmp2.targetList); } else { if (outC->init) { kcg_copy_array__130570(&tmp1, &tmp4); } else { kcg_copy_Target_list_MRSP_real_T_TargetManagement_types( &tmp1, &outC->rem_MRSPTargetList); } kcg_copy_array__130570(&tmp.targetList, &tmp1); tmp.lastInsertedTargetIndex = - 1; kcg_copy_Target_list_MRSP_real_T_TargetManagement_types( &tmp3, &tmp.targetList); } /* 1 */ removeOverpassedMRSP_TargetManagement_pkg_internalOperators( &tmp3, (*trainLocations).d_maxSafeFrontEndPos, &outC->rem_MRSPTargetList, &_L88); outC->targetCollection.updatedTargetList = MRSP_updated | MA_updated | _L88; kcg_copy_Target_list_MRSP_real_T_TargetManagement_types( &outC->targetCollection.MRSP_targetList, &outC->rem_MRSPTargetList); outC->init = kcg_false; kcg_copy_Target_real_T_TargetManagement_types( &outC->targetCollection.EOA_target, &outC->_L12); }
/* TargetManagement_pkg::TargetManagement */ void TargetManagement_TargetManagement_pkg( /* TargetManagement_pkg::TargetManagement::MRSP */ MRSP_internal_T_TargetManagement_types *MRSP, /* TargetManagement_pkg::TargetManagement::MRSP_updated */ kcg_bool MRSP_updated, /* TargetManagement_pkg::TargetManagement::MA */ MAs_real_T_TargetManagement_types *MA, /* TargetManagement_pkg::TargetManagement::MA_updated */ kcg_bool MA_updated, /* TargetManagement_pkg::TargetManagement::trainLocations */ TrainLocations_real_T_SDM_Types_Pkg *trainLocations, outC_TargetManagement_TargetManagement_pkg *outC) { kcg_int i; Target_list_LOA_real_T_TargetManagement_types tmp6; extractTargetsLOAACC_TargetManagement_pkg tmp5; Target_list_LOA_real_T_TargetManagement_types tmp4; Target_list_MRSP_real_T_TargetManagement_types tmp3; extractTargetsMRSPACC_TargetManagement_pkg tmp2; Target_list_MRSP_real_T_TargetManagement_types tmp1; kcg_real tmp; /* TargetManagement_pkg::TargetManagement::_L88 */ kcg_bool _L88; /* TargetManagement_pkg::TargetManagement::_L92 */ kcg_bool _L92; if (MA_updated) { /* 1 */ extractLOATargetsFromMA_TargetManagement_pkg_internalOperators(MA, &tmp5); kcg_copy_Target_list_LOA_real_T_TargetManagement_types( &tmp6, &tmp5.targetList); /* 1 */ extractEOASvLTargetFromMA_TargetManagement_pkg_internalOperators( MA, &outC->_L12, &outC->_L93, &outC->V_releaseFromMA, &outC->V_releaseFromMAValid); } else { if (outC->init) { for (i = 0; i < 10; i++) { kcg_copy_Target_real_T_TargetManagement_types( &tmp4[i], (Target_real_T_TargetManagement_types *) &emptyTargetLOA_TargetManagement_pkg); } kcg_copy_Target_real_T_TargetManagement_types( &outC->_L12, (Target_real_T_TargetManagement_types *) &emptyTargetEOA_TargetManagement_pkg); kcg_copy_Target_real_T_TargetManagement_types( &outC->_L93, (Target_real_T_TargetManagement_types *) &emptyTargetSvL_TargetManagement_pkg); tmp = 0.0; outC->V_releaseFromMAValid = kcg_false; } else { kcg_copy_Target_list_LOA_real_T_TargetManagement_types( &tmp4, &outC->rem_LOATargetList); tmp = outC->V_releaseFromMA; } kcg_copy_Target_list_LOA_real_T_TargetManagement_types(&tmp6, &tmp4); outC->V_releaseFromMA = tmp; } /* 1 */ removeOverpassedLOA_TargetManagement_pkg_internalOperators( &tmp6, (*trainLocations).d_maxSafeFrontEndPos, &outC->rem_LOATargetList, &_L92); kcg_copy_Target_list_LOA_real_T_TargetManagement_types( &outC->targetCollection.LOA_targetList, &outC->rem_LOATargetList); if (MRSP_updated) { /* 1 */ extractTargetsFromMRSP_TargetManagement_pkg_internalOperators(MRSP, &tmp2); kcg_copy_Target_list_MRSP_real_T_TargetManagement_types( &tmp3, &tmp2.targetList); } else { if (outC->init) { for (i = 0; i < 200; i++) { kcg_copy_Target_real_T_TargetManagement_types( &tmp1[i], (Target_real_T_TargetManagement_types *) &emptyTargetMRSP_TargetManagement_pkg); } } else { kcg_copy_Target_list_MRSP_real_T_TargetManagement_types( &tmp1, &outC->rem_MRSPTargetList); } kcg_copy_Target_list_MRSP_real_T_TargetManagement_types(&tmp3, &tmp1); } /* 1 */ removeOverpassedMRSP_TargetManagement_pkg_internalOperators( &tmp3, (*trainLocations).d_maxSafeFrontEndPos, &outC->rem_MRSPTargetList, &_L88); outC->targetCollection.updatedTargetList = _L92 | MRSP_updated | MA_updated | _L88; kcg_copy_Target_list_MRSP_real_T_TargetManagement_types( &outC->targetCollection.MRSP_targetList, &outC->rem_MRSPTargetList); kcg_copy_Target_real_T_TargetManagement_types( &outC->targetCollection.EOA_target, &outC->_L12); kcg_copy_Target_real_T_TargetManagement_types( &outC->targetCollection.SvL_target, &outC->_L93); outC->init = kcg_false; }