/* Receive_TrackSide_Msg_Pkg::checkInit */ void checkInit_Receive_TrackSide_Msg_Pkg( /* Receive_TrackSide_Msg_Pkg::checkInit::newTelegram */ Telegram_T_BG_Types_Pkg *newTelegram, /* Receive_TrackSide_Msg_Pkg::checkInit::inCollector */ BGCollector_T_Receive_TrackSide_Msg_Pkg *inCollector, /* Receive_TrackSide_Msg_Pkg::checkInit::outCollector */ BGCollector_T_Receive_TrackSide_Msg_Pkg *outCollector) { /* Receive_TrackSide_Msg_Pkg::checkInit::isDefined */ kcg_bool isDefined; isDefined = (*inCollector).totalTelegrams > 0; if (isDefined) { kcg_copy_BGCollector_T_Receive_TrackSide_Msg_Pkg(outCollector, inCollector); } else { /* 1 */ initCollector_Receive_TrackSide_Msg_Pkg_BaliseSupport( newTelegram, outCollector); } }
/* Receive_TrackSide_Msg_Pkg::checkTelegram */ void checkTelegram_Receive_TrackSide_Msg_Pkg( /* Receive_TrackSide_Msg_Pkg::checkTelegram::newTelegram */ Telegram_T_BG_Types_Pkg *newTelegram, /* Receive_TrackSide_Msg_Pkg::checkTelegram::inTelegramArray */ TelegramArray_T_BG_Types_Pkg *inTelegramArray, /* Receive_TrackSide_Msg_Pkg::checkTelegram::BGCollector */ BGCollector_T_Receive_TrackSide_Msg_Pkg *BGCollector, /* Receive_TrackSide_Msg_Pkg::checkTelegram::outCollector */ BGCollector_T_Receive_TrackSide_Msg_Pkg *outCollector, /* Receive_TrackSide_Msg_Pkg::checkTelegram::outTelegramArray */ TelegramArray_T_BG_Types_Pkg *outTelegramArray, /* Receive_TrackSide_Msg_Pkg::checkTelegram::outTelegramNotInGroup */ kcg_bool *outTelegramNotInGroup, /* Receive_TrackSide_Msg_Pkg::checkTelegram::outBGchangedEarly */ kcg_bool *outBGchangedEarly) { /* Receive_TrackSide_Msg_Pkg::checkTelegram */ BGCollector_T_Receive_TrackSide_Msg_Pkg tmp; /* Receive_TrackSide_Msg_Pkg::checkTelegram::newBGInitNeeded */ kcg_bool newBGInitNeeded; /* Receive_TrackSide_Msg_Pkg::checkTelegram::_L36 */ kcg_bool _L36; /* Receive_TrackSide_Msg_Pkg::checkTelegram::_L63 */ kcg_bool _L63; _L36 = (*newTelegram).telegramheader.nid_bg == (*BGCollector).BG_ID; _L63 = !_L36 & ((*BGCollector).totalTelegrams > 0); newBGInitNeeded = _L63 & (*BGCollector).BGMessageSent; /* 2 */ if (newBGInitNeeded) { kcg_copy_TelegramArray_T_BG_Types_Pkg( outTelegramArray, (TelegramArray_T_BG_Types_Pkg *) &cEmptyTelegramArray_BG_Types_Pkg); /* 1 */ initCollector_Receive_TrackSide_Msg_Pkg_BaliseSupport(newTelegram, &tmp); } else { kcg_copy_TelegramArray_T_BG_Types_Pkg(outTelegramArray, inTelegramArray); kcg_copy_BGCollector_T_Receive_TrackSide_Msg_Pkg(&tmp, BGCollector); } *outTelegramNotInGroup = !/* 1 */ findTelegram_Receive_TrackSide_Msg_Pkg_BaliseSupport( (*newTelegram).telegramheader.n_pig, outTelegramArray, (kcg_bool) ((*newTelegram).valid & _L36)); *outBGchangedEarly = _L63 & !(*BGCollector).BGMessageSent; /* 1 */ checkSingleBB_Receive_TrackSide_Msg_Pkg_BaliseSupport( newTelegram, &tmp, outCollector); }
/* Receive_TrackSide_Msg_Pkg::checkInit */ void checkInit_Receive_TrackSide_Msg_Pkg( /* Receive_TrackSide_Msg_Pkg::checkInit::newTelegram */ Telegram_T_BG_Types_Pkg *newTelegram, /* Receive_TrackSide_Msg_Pkg::checkInit::inCollector */ BGCollector_T_Receive_TrackSide_Msg_Pkg *inCollector, outC_checkInit_Receive_TrackSide_Msg_Pkg *outC) { /* Receive_TrackSide_Msg_Pkg::checkInit::outCollector */ BGCollector_T_Receive_TrackSide_Msg_Pkg _1_outCollector; /* Receive_TrackSide_Msg_Pkg::checkInit::outCollector */ BGCollector_T_Receive_TrackSide_Msg_Pkg outCollector; kcg_copy_BGCollector_T_Receive_TrackSide_Msg_Pkg(&outC->_L8, inCollector); outC->_L2 = outC->_L8.totalTelegrams; outC->_L4 = 0; outC->_L6 = outC->_L2 > outC->_L4; outC->isDefined = outC->_L6; outC->IfBlock1_clock = outC->isDefined; /* ck_IfBlock1 */ if (outC->IfBlock1_clock) { kcg_copy_BGCollector_T_Receive_TrackSide_Msg_Pkg( &outC->_L1_IfBlock1, inCollector); kcg_copy_BGCollector_T_Receive_TrackSide_Msg_Pkg( &_1_outCollector, &outC->_L1_IfBlock1); kcg_copy_BGCollector_T_Receive_TrackSide_Msg_Pkg( &outC->outCollector, &_1_outCollector); } else { kcg_copy_Telegram_T_BG_Types_Pkg(&outC->_L19_IfBlock1, newTelegram); /* 1 */ initCollector_Receive_TrackSide_Msg_Pkg_BaliseSupport( &outC->_L19_IfBlock1, &outC->Context_1); kcg_copy_BGCollector_T_Receive_TrackSide_Msg_Pkg( &outC->_L20_IfBlock1, &outC->Context_1.outCollector); kcg_copy_BGCollector_T_Receive_TrackSide_Msg_Pkg( &outCollector, &outC->_L20_IfBlock1); kcg_copy_BGCollector_T_Receive_TrackSide_Msg_Pkg( &outC->outCollector, &outCollector); } }
/* Receive_TrackSide_Msg_Pkg::checkOdometry */ void checkOdometry_Receive_TrackSide_Msg_Pkg( /* Receive_TrackSide_Msg_Pkg::checkOdometry::actualOdometry */ odometry_T_Obu_BasicTypes_Pkg *actualOdometry, /* Receive_TrackSide_Msg_Pkg::checkOdometry::inCollector */ BGCollector_T_Receive_TrackSide_Msg_Pkg *inCollector, /* Receive_TrackSide_Msg_Pkg::checkOdometry::outMessageComplete */ kcg_bool *outMessageComplete, /* Receive_TrackSide_Msg_Pkg::checkOdometry::outBGIsChangedEarly */ kcg_bool *outBGIsChangedEarly, /* Receive_TrackSide_Msg_Pkg::checkOdometry::outCollector */ BGCollector_T_Receive_TrackSide_Msg_Pkg *outCollector) { /* Receive_TrackSide_Msg_Pkg::checkOdometry::IfBlock1::then::_L15 */ static kcg_bool _L15_IfBlock1; /* Receive_TrackSide_Msg_Pkg::checkOdometry::IfBlock1::then::_L3 */ static kcg_bool _L3_IfBlock1; /* Receive_TrackSide_Msg_Pkg::checkOdometry::isValid */ static kcg_bool isValid; isValid = (*actualOdometry).valid & ((*inCollector).totalTelegrams > 0); /* ck_isValid */ if (isValid) { _L3_IfBlock1 = !/* 2 */ checkMaxAbsOdoDistance_BasicLocationFunctions_Pkg( &(*actualOdometry).odo, &(*inCollector).positionFirstContact.odometerOfBaliseDetection.odo, (OdometryLocations_T_Obu_BasicTypes_Pkg *) &cMaxDistanceBalisesInGroup_BG_Types_Pkg); *outMessageComplete = !(*inCollector).BGMessageSent & _L3_IfBlock1; _L15_IfBlock1 = _L3_IfBlock1 & ((*inCollector).collectedTelegrams < (*inCollector).collectedTelegrams); *outBGIsChangedEarly = _L15_IfBlock1; /* 1 */ updateCollectorSingleBB_Receive_TrackSide_Msg_Pkg_BaliseSupport( (kcg_bool) (_L15_IfBlock1 & (*inCollector).badBaliseFlag), inCollector, outCollector); } else { *outBGIsChangedEarly = kcg_false; *outMessageComplete = kcg_false; kcg_copy_BGCollector_T_Receive_TrackSide_Msg_Pkg(outCollector, inCollector); } }
/* Receive_TrackSide_Msg_Pkg::BuildBGMessage */ void BuildBGMessage_Receive_TrackSide_Msg_Pkg( /* Receive_TrackSide_Msg_Pkg::BuildBGMessage::reset */ kcg_bool reset, /* Receive_TrackSide_Msg_Pkg::BuildBGMessage::inTelegramPresent */ kcg_bool inTelegramPresent, /* Receive_TrackSide_Msg_Pkg::BuildBGMessage::inDecodedTelegram */ Telegram_T_BG_Types_Pkg *inDecodedTelegram, /* Receive_TrackSide_Msg_Pkg::BuildBGMessage::incenterOfBalisePosition */ centerOfBalisePosition_T_BG_Types_Pkg *incenterOfBalisePosition, /* Receive_TrackSide_Msg_Pkg::BuildBGMessage::inActualOdometry */ odometry_T_Obu_BasicTypes_Pkg *inActualOdometry, outC_BuildBGMessage_Receive_TrackSide_Msg_Pkg *outC) { /* Receive_TrackSide_Msg_Pkg::BuildBGMessage */ static TelegramStore_T_Receive_TrackSide_Msg_Pkg tmp5; /* Receive_TrackSide_Msg_Pkg::BuildBGMessage */ static Telegram_T_BG_Types_Pkg tmp4; /* Receive_TrackSide_Msg_Pkg::BuildBGMessage */ static centerOfBalisePosition_T_BG_Types_Pkg tmp3; /* Receive_TrackSide_Msg_Pkg::BuildBGMessage */ static kcg_bool tmp2; /* Receive_TrackSide_Msg_Pkg::BuildBGMessage */ static kcg_bool tmp1; /* Receive_TrackSide_Msg_Pkg::BuildBGMessage */ static kcg_bool tmp; /* Receive_TrackSide_Msg_Pkg::BuildBGMessage::IfBlock4::else::_L11 */ static Telegram_T_BG_Types_Pkg _L11_IfBlock4; /* Receive_TrackSide_Msg_Pkg::BuildBGMessage::IfBlock4::else::_L12 */ static centerOfBalisePosition_T_BG_Types_Pkg _L12_IfBlock4; /* Receive_TrackSide_Msg_Pkg::BuildBGMessage::IfBlock1::then::_L22 */ static kcg_bool _L22_IfBlock1; /* Receive_TrackSide_Msg_Pkg::BuildBGMessage::IfBlock1::else::IfBlock3 */ static kcg_bool IfBlock3_clock_IfBlock1; /* Receive_TrackSide_Msg_Pkg::BuildBGMessage::storeBGTelegramArray */ static TelegramArray_T_BG_Types_Pkg last_storeBGTelegramArray; /* Receive_TrackSide_Msg_Pkg::BuildBGMessage::storeCollector */ static BGCollector_T_Receive_TrackSide_Msg_Pkg last_storeCollector; /* Receive_TrackSide_Msg_Pkg::BuildBGMessage::BGisComplete */ static kcg_bool BGisComplete; /* Receive_TrackSide_Msg_Pkg::BuildBGMessage::telegramPresent */ static kcg_bool telegramPresent; /* Receive_TrackSide_Msg_Pkg::BuildBGMessage::tempCollectorStore */ static BGCollector_T_Receive_TrackSide_Msg_Pkg tempCollectorStore; /* Receive_TrackSide_Msg_Pkg::BuildBGMessage::tempBGTelegramArray */ static TelegramArray_T_BG_Types_Pkg tempBGTelegramArray; /* Receive_TrackSide_Msg_Pkg::BuildBGMessage::_L43 */ static kcg_bool _L43; _L43 = !reset; /* ck_reset */ if (reset) { telegramPresent = kcg_false; tmp1 = kcg_false; } else { /* last_init_ck_storeAdditionalTelegram */ if (outC->init) { kcg_copy_TelegramStore_T_Receive_TrackSide_Msg_Pkg( &tmp5, (TelegramStore_T_Receive_TrackSide_Msg_Pkg *) &cEmptyStore_Receive_TrackSide_Msg_Pkg); } else { kcg_copy_TelegramStore_T_Receive_TrackSide_Msg_Pkg( &tmp5, &outC->storeAdditionalTelegram); } /* 3 */ manageAdditionalTelegram_Receive_TrackSide_Msg_Pkg( inDecodedTelegram, incenterOfBalisePosition, &tmp5, inTelegramPresent, &telegramPresent, &_L11_IfBlock4, &_L12_IfBlock4, &tmp1); } /* last_init_ck_storeBGTelegramArray */ if (outC->init) { kcg_copy_BGCollector_T_Receive_TrackSide_Msg_Pkg( &last_storeCollector, (BGCollector_T_Receive_TrackSide_Msg_Pkg *) &cEmptyCollector_Receive_TrackSide_Msg_Pkg); outC->init = kcg_false; kcg_copy_TelegramArray_T_BG_Types_Pkg( &last_storeBGTelegramArray, (TelegramArray_T_BG_Types_Pkg *) &cEmptyTelegramArray_BG_Types_Pkg); } else { kcg_copy_BGCollector_T_Receive_TrackSide_Msg_Pkg( &last_storeCollector, &outC->storeCollector); kcg_copy_TelegramArray_T_BG_Types_Pkg( &last_storeBGTelegramArray, &outC->storeBGTelegramArray); } /* ck_telegramPresent */ if (telegramPresent) { /* ck_reset */ if (reset) { kcg_copy_Telegram_T_BG_Types_Pkg( &tmp4, (Telegram_T_BG_Types_Pkg *) &cEmpty_BaliseTlg_BG_Types_Pkg); kcg_copy_centerOfBalisePosition_T_BG_Types_Pkg( &tmp3, (centerOfBalisePosition_T_BG_Types_Pkg *) &cemptyPosition_BG_Types_Pkg); } else { kcg_copy_Telegram_T_BG_Types_Pkg(&tmp4, &_L11_IfBlock4); kcg_copy_centerOfBalisePosition_T_BG_Types_Pkg(&tmp3, &_L12_IfBlock4); } /* 1 */ manageTelegram_Receive_TrackSide_Msg_Pkg( &tmp4, &tmp3, &last_storeCollector, &last_storeBGTelegramArray, &BGisComplete, &tmp, &tempCollectorStore, &tempBGTelegramArray, &_L22_IfBlock1); } else { IfBlock3_clock_IfBlock1 = _L43; /* ck_IfBlock3 */ if (IfBlock3_clock_IfBlock1) { /* 3 */ checkOdometry_Receive_TrackSide_Msg_Pkg( inActualOdometry, &last_storeCollector, &BGisComplete, &tmp, &tempCollectorStore); kcg_copy_TelegramArray_T_BG_Types_Pkg( &tempBGTelegramArray, &last_storeBGTelegramArray); } else { BGisComplete = kcg_false; kcg_copy_BGCollector_T_Receive_TrackSide_Msg_Pkg( &tempCollectorStore, (BGCollector_T_Receive_TrackSide_Msg_Pkg *) &cEmptyCollector_Receive_TrackSide_Msg_Pkg); kcg_copy_TelegramArray_T_BG_Types_Pkg( &tempBGTelegramArray, (TelegramArray_T_BG_Types_Pkg *) &cEmptyTelegramArray_BG_Types_Pkg); tmp = kcg_false; } } /* ck_BGisComplete */ if (BGisComplete) { outC->outBGMessage.present = kcg_true; kcg_copy_TelegramArray_T_BG_Types_Pkg( &outC->outBGMessage.Telegrams, &tempBGTelegramArray); /* 1 */ updateCollectorSendMessage_Receive_TrackSide_Msg_Pkg_BaliseSupport( &tempCollectorStore, &outC->storeCollector); outC->outBGMessage.numberBalises = outC->storeCollector.collectedTelegrams; kcg_copy_centerOfBalisePosition_T_BG_Types_Pkg( &outC->outBGMessage.centerOfBalisePosition, &outC->storeCollector.balisePosition); kcg_copy_TelegramArray_T_BG_Types_Pkg( &outC->storeBGTelegramArray, &tempBGTelegramArray); } else { outC->outBGMessage.present = kcg_false; kcg_copy_TelegramArray_T_BG_Types_Pkg( &outC->outBGMessage.Telegrams, (TelegramArray_T_BG_Types_Pkg *) &cEmptyTelegramArray_BG_Types_Pkg); outC->outBGMessage.numberBalises = 0; kcg_copy_centerOfBalisePosition_T_BG_Types_Pkg( &outC->outBGMessage.centerOfBalisePosition, (centerOfBalisePosition_T_BG_Types_Pkg *) &cemptyPosition_BG_Types_Pkg); /* ck_telegramPresent */ if (telegramPresent) { tmp2 = _L22_IfBlock1; } else /* ck_IfBlock3 */ if (IfBlock3_clock_IfBlock1) { tmp2 = kcg_false; } else { tmp2 = kcg_true; } /* ck_IfBlock3 */ if (tmp2) { kcg_copy_BGCollector_T_Receive_TrackSide_Msg_Pkg( &outC->storeCollector, &tempCollectorStore); kcg_copy_TelegramArray_T_BG_Types_Pkg( &outC->storeBGTelegramArray, &tempBGTelegramArray); } else { kcg_copy_BGCollector_T_Receive_TrackSide_Msg_Pkg( &outC->storeCollector, &last_storeCollector); kcg_copy_TelegramArray_T_BG_Types_Pkg( &outC->storeBGTelegramArray, &last_storeBGTelegramArray); } } /* 3 */ if (inTelegramPresent & (tmp1 | tmp) & _L43) { outC->storeAdditionalTelegram.valid = kcg_true; kcg_copy_Telegram_T_BG_Types_Pkg( &outC->storeAdditionalTelegram.telegram, inDecodedTelegram); kcg_copy_centerOfBalisePosition_T_BG_Types_Pkg( &outC->storeAdditionalTelegram.position, incenterOfBalisePosition); } else { kcg_copy_TelegramStore_T_Receive_TrackSide_Msg_Pkg( &outC->storeAdditionalTelegram, (TelegramStore_T_Receive_TrackSide_Msg_Pkg *) &cEmptyStore_Receive_TrackSide_Msg_Pkg); } }
/* Receive_TrackSide_Msg_Pkg::addTelegram */ void addTelegram_Receive_TrackSide_Msg_Pkg( /* Receive_TrackSide_Msg_Pkg::addTelegram::newTelegram */ Telegram_T_BG_Types_Pkg *newTelegram, /* Receive_TrackSide_Msg_Pkg::addTelegram::inCollector */ BGCollector_T_Receive_TrackSide_Msg_Pkg *inCollector, /* Receive_TrackSide_Msg_Pkg::addTelegram::inoldTelegramArray */ TelegramArray_T_BG_Types_Pkg *inoldTelegramArray, /* Receive_TrackSide_Msg_Pkg::addTelegram::doUpdate */ kcg_bool doUpdate, /* Receive_TrackSide_Msg_Pkg::addTelegram::inPosition */ centerOfBalisePosition_T_BG_Types_Pkg *inPosition, outC_addTelegram_Receive_TrackSide_Msg_Pkg *outC) { kcg_int i3; kcg_int i2; kcg_int i1; kcg_int i; /* Receive_TrackSide_Msg_Pkg::addTelegram::outIsDuplicate */ kcg_bool _7_outIsDuplicate; /* Receive_TrackSide_Msg_Pkg::addTelegram::outBGisComplete */ kcg_bool _6_outBGisComplete; /* Receive_TrackSide_Msg_Pkg::addTelegram::outTelegramArray */ TelegramArray_T_BG_Types_Pkg _5_outTelegramArray; /* Receive_TrackSide_Msg_Pkg::addTelegram::outCollector */ BGCollector_T_Receive_TrackSide_Msg_Pkg _4_outCollector; kcg_int noname; /* Receive_TrackSide_Msg_Pkg::addTelegram::outIsDuplicate */ kcg_bool outIsDuplicate; /* Receive_TrackSide_Msg_Pkg::addTelegram::outBGisComplete */ kcg_bool outBGisComplete; /* Receive_TrackSide_Msg_Pkg::addTelegram::outTelegramArray */ TelegramArray_T_BG_Types_Pkg outTelegramArray; /* Receive_TrackSide_Msg_Pkg::addTelegram::outCollector */ BGCollector_T_Receive_TrackSide_Msg_Pkg outCollector; outC->IfBlock1_clock = doUpdate; /* ck_IfBlock1 */ if (outC->IfBlock1_clock) { kcg_copy_BGCollector_T_Receive_TrackSide_Msg_Pkg( &outC->_L9_IfBlock1, inCollector); outC->_L3_IfBlock1 = outC->_L9_IfBlock1.badBaliseFlag; outC->_L54_IfBlock1 = outC->_L9_IfBlock1.BGMessageSent; outC->_L53_IfBlock1 = outC->_L9_IfBlock1.C_ID; outC->_L52_IfBlock1 = outC->_L9_IfBlock1.BG_ID; kcg_copy_centerOfBalisePosition_T_BG_Types_Pkg( &outC->_L51_IfBlock1, &outC->_L9_IfBlock1.balisePosition); kcg_copy_Telegram_T_BG_Types_Pkg(&outC->_L45_IfBlock1, newTelegram); kcg_copy_centerOfBalisePosition_T_BG_Types_Pkg( &outC->_L17_IfBlock1, inPosition); /* 1 */ setCoordinateSystemPosition_Receive_TrackSide_Msg_Pkg( &outC->_L51_IfBlock1, &outC->_L45_IfBlock1, &outC->_L17_IfBlock1, &outC->Context_1); kcg_copy_centerOfBalisePosition_T_BG_Types_Pkg( &outC->_L15_IfBlock1, &outC->Context_1.outUpdateBGPosition); kcg_copy_centerOfBalisePosition_T_BG_Types_Pkg( &outC->_L50_IfBlock1, &outC->_L9_IfBlock1.positionFirstContact); kcg_copy_centerOfBalisePosition_T_BG_Types_Pkg( &outC->_L47_IfBlock1, inPosition); /* 1 */ setIntervalBGPosition_Receive_TrackSide_Msg_Pkg( &outC->_L50_IfBlock1, &outC->_L47_IfBlock1, &outC->_1_Context_1); kcg_copy_centerOfBalisePosition_T_BG_Types_Pkg( &outC->_L46_IfBlock1, &outC->_1_Context_1.outUpdateBGPosition); outC->_L49_IfBlock1 = outC->_L9_IfBlock1.collectedTelegrams; outC->_L8_IfBlock1 = 1; outC->_L1_IfBlock1 = outC->_L49_IfBlock1 + outC->_L8_IfBlock1; outC->_L48_IfBlock1 = outC->_L9_IfBlock1.totalTelegrams; outC->_L6_IfBlock1.badBaliseFlag = outC->_L3_IfBlock1; outC->_L6_IfBlock1.BGMessageSent = outC->_L54_IfBlock1; outC->_L6_IfBlock1.C_ID = outC->_L53_IfBlock1; outC->_L6_IfBlock1.BG_ID = outC->_L52_IfBlock1; kcg_copy_centerOfBalisePosition_T_BG_Types_Pkg( &outC->_L6_IfBlock1.balisePosition, &outC->_L15_IfBlock1); kcg_copy_centerOfBalisePosition_T_BG_Types_Pkg( &outC->_L6_IfBlock1.positionFirstContact, &outC->_L46_IfBlock1); outC->_L6_IfBlock1.collectedTelegrams = outC->_L1_IfBlock1; outC->_L6_IfBlock1.totalTelegrams = outC->_L48_IfBlock1; kcg_copy_BGCollector_T_Receive_TrackSide_Msg_Pkg( &_4_outCollector, &outC->_L6_IfBlock1); kcg_copy_BGCollector_T_Receive_TrackSide_Msg_Pkg( &outC->outCollector, &_4_outCollector); kcg_copy_Telegram_T_BG_Types_Pkg(&outC->_L41_IfBlock1, newTelegram); /* pow */ for (i1 = 0; i1 < 8; i1++) { kcg_copy_Telegram_T_BG_Types_Pkg( &outC->_L37_IfBlock1[i1], &outC->_L41_IfBlock1); } kcg_copy_TelegramArray_T_BG_Types_Pkg( &outC->_L39_IfBlock1, inoldTelegramArray); outC->_L40_IfBlock1 = doUpdate; kcg_copy_Telegram_T_BG_Types_Pkg( &outC->_L55_IfBlock1, (Telegram_T_BG_Types_Pkg *) &cEmpty_BaliseTlg_BG_Types_Pkg); if (outC->_L40_IfBlock1) { for (i = 0; i < 8; i++) { /* 3 */ setFirstFree_Receive_TrackSide_Msg_Pkg_BaliseSupport( &outC->_L37_IfBlock1[i], &outC->_L39_IfBlock1[i], &outC->Context_3[i]); kcg_copy_Telegram_T_BG_Types_Pkg( &outC->_L36_IfBlock1[i], &outC->Context_3[i].outTelegrams); outC->_L35_IfBlock1 = i + 1; if (!outC->Context_3[i].cont) { break; } } } else { outC->_L35_IfBlock1 = 0; } #ifdef KCG_MAPW_CPY for (i = outC->_L35_IfBlock1; i < 8; i++) { kcg_copy_Telegram_T_BG_Types_Pkg( &outC->_L36_IfBlock1[i], &outC->_L55_IfBlock1); } #endif /* KCG_MAPW_CPY */ kcg_copy_TelegramArray_T_BG_Types_Pkg( &_5_outTelegramArray, &outC->_L36_IfBlock1); kcg_copy_TelegramArray_T_BG_Types_Pkg( &outC->outTelegramArray, &_5_outTelegramArray); outC->_L21_IfBlock1 = outC->_L1_IfBlock1 >= outC->_L48_IfBlock1; _6_outBGisComplete = outC->_L21_IfBlock1; outC->outBGisComplete = _6_outBGisComplete; _7_outIsDuplicate = kcg_false; outC->outIsDuplicate = _7_outIsDuplicate; noname = outC->_L35_IfBlock1; } else { kcg_copy_BGCollector_T_Receive_TrackSide_Msg_Pkg( &outC->_L19_IfBlock1, inCollector); kcg_copy_BGCollector_T_Receive_TrackSide_Msg_Pkg( &outCollector, &outC->_L19_IfBlock1); kcg_copy_BGCollector_T_Receive_TrackSide_Msg_Pkg( &outC->outCollector, &outCollector); kcg_copy_Telegram_T_BG_Types_Pkg(&outC->_L174_IfBlock1, newTelegram); /* pow */ for (i3 = 0; i3 < 8; i3++) { kcg_copy_Telegram_T_BG_Types_Pkg( &outC->_L16_IfBlock1[i3], &outC->_L174_IfBlock1); } kcg_copy_TelegramArray_T_BG_Types_Pkg( &outC->_L13_IfBlock1, inoldTelegramArray); outC->_L18_IfBlock1 = kcg_true; kcg_copy_Telegram_T_BG_Types_Pkg( &outC->_L20_IfBlock1, (Telegram_T_BG_Types_Pkg *) &cEmpty_BaliseTlg_BG_Types_Pkg); outC->_L22_IfBlock1 = kcg_false; if (outC->_L18_IfBlock1) { for (i2 = 0; i2 < 8; i2++) { /* 1 */ replaceTelegram_Receive_TrackSide_Msg_Pkg_BaliseSupport( &outC->_L16_IfBlock1[i2], &outC->_L13_IfBlock1[i2], &outC->_2_Context_1[i2]); kcg_copy_Telegram_T_BG_Types_Pkg( &outC->_L155_IfBlock1[i2], &outC->_2_Context_1[i2].outTelegrams); outC->_L213_IfBlock1[i2] = outC->_2_Context_1[i2].outIsDuplicate; outC->_L14_IfBlock1 = i2 + 1; if (!outC->_2_Context_1[i2].cont) { break; } } } else { outC->_L14_IfBlock1 = 0; } #ifdef KCG_MAPW_CPY for (i2 = outC->_L14_IfBlock1; i2 < 8; i2++) { kcg_copy_Telegram_T_BG_Types_Pkg( &outC->_L155_IfBlock1[i2], &outC->_L20_IfBlock1); outC->_L213_IfBlock1[i2] = outC->_L22_IfBlock1; } #endif /* KCG_MAPW_CPY */ kcg_copy_TelegramArray_T_BG_Types_Pkg( &outTelegramArray, &outC->_L155_IfBlock1); kcg_copy_TelegramArray_T_BG_Types_Pkg( &outC->outTelegramArray, &outTelegramArray); outC->_L31_IfBlock1 = kcg_false; outC->_L30_IfBlock1 = 1; outC->_L29_IfBlock1 = outC->_L14_IfBlock1 - outC->_L30_IfBlock1; if ((0 <= outC->_L29_IfBlock1) & (outC->_L29_IfBlock1 < 8)) { outC->_L27_IfBlock1 = outC->_L213_IfBlock1[outC->_L29_IfBlock1]; } else { outC->_L27_IfBlock1 = outC->_L31_IfBlock1; } outC->_L33_IfBlock1 = !outC->_L27_IfBlock1; outC->_L4_IfBlock1 = outC->_L19_IfBlock1.collectedTelegrams; outC->_L5_IfBlock1 = outC->_L19_IfBlock1.totalTelegrams; outC->_L87_IfBlock1 = outC->_L4_IfBlock1 >= outC->_L5_IfBlock1; outC->_L96_IfBlock1 = outC->_L19_IfBlock1.BGMessageSent; outC->_L10_IfBlock1 = !outC->_L96_IfBlock1; outC->_L11_IfBlock1 = outC->_L87_IfBlock1 & outC->_L10_IfBlock1; outC->_L32_IfBlock1 = outC->_L33_IfBlock1 & outC->_L11_IfBlock1; outBGisComplete = outC->_L32_IfBlock1; outC->outBGisComplete = outBGisComplete; outIsDuplicate = outC->_L27_IfBlock1; outC->outIsDuplicate = outIsDuplicate; } }
/* Receive_TrackSide_Msg_Pkg::checkTelegram */ void checkTelegram_Receive_TrackSide_Msg_Pkg( /* Receive_TrackSide_Msg_Pkg::checkTelegram::newTelegram */ Telegram_T_BG_Types_Pkg *newTelegram, /* Receive_TrackSide_Msg_Pkg::checkTelegram::inTelegramArray */ TelegramArray_T_BG_Types_Pkg *inTelegramArray, /* Receive_TrackSide_Msg_Pkg::checkTelegram::BGCollector */ BGCollector_T_Receive_TrackSide_Msg_Pkg *BGCollector, outC_checkTelegram_Receive_TrackSide_Msg_Pkg *outC) { kcg_copy_Telegram_T_BG_Types_Pkg(&outC->_L2, newTelegram); outC->_L4 = outC->_L2.valid; outC->_L32 = outC->_L2.telegramheader.nid_bg; kcg_copy_BGCollector_T_Receive_TrackSide_Msg_Pkg(&outC->_L56, BGCollector); outC->_L61 = outC->_L56.BG_ID; outC->_L36 = outC->_L32 == outC->_L61; outC->_L31 = outC->_L4 & outC->_L36; outC->_L55 = outC->_L2.telegramheader.n_pig; outC->_L62 = !outC->_L36; outC->_L64 = outC->_L56.totalTelegrams; outC->_L66 = 0; outC->_L65 = outC->_L64 > outC->_L66; outC->_L63 = outC->_L62 & outC->_L65; outC->_L67 = outC->_L56.BGMessageSent; outC->_L68 = outC->_L63 & outC->_L67; outC->newBGInitNeeded = outC->_L68; outC->_L70 = outC->newBGInitNeeded; kcg_copy_TelegramArray_T_BG_Types_Pkg( &outC->_L94, (TelegramArray_T_BG_Types_Pkg *) &cEmptyTelegramArray_BG_Types_Pkg); kcg_copy_TelegramArray_T_BG_Types_Pkg(&outC->_L40, inTelegramArray); /* 1 */ if (outC->_L70) { kcg_copy_TelegramArray_T_BG_Types_Pkg(&outC->_L69, &outC->_L94); } else { kcg_copy_TelegramArray_T_BG_Types_Pkg(&outC->_L69, &outC->_L40); } /* 1 */ findTelegram_Receive_TrackSide_Msg_Pkg_BaliseSupport( outC->_L55, &outC->_L69, outC->_L31, &outC->Context_1); outC->_L41 = outC->Context_1.telegramAlreadyInGroup; outC->_L86 = !outC->_L41; outC->outTelegramNotInGroup = outC->_L86; outC->_L87 = !outC->_L67; outC->_L88 = outC->_L63 & outC->_L87; outC->outBGchangedEarly = outC->_L88; outC->_L73 = outC->newBGInitNeeded; /* 1 */ initCollector_Receive_TrackSide_Msg_Pkg_BaliseSupport( &outC->_L2, &outC->_1_Context_1); kcg_copy_BGCollector_T_Receive_TrackSide_Msg_Pkg( &outC->_L92, &outC->_1_Context_1.outCollector); kcg_copy_BGCollector_T_Receive_TrackSide_Msg_Pkg(&outC->_L74, BGCollector); /* 2 */ if (outC->_L73) { kcg_copy_BGCollector_T_Receive_TrackSide_Msg_Pkg(&outC->_L72, &outC->_L92); } else { kcg_copy_BGCollector_T_Receive_TrackSide_Msg_Pkg(&outC->_L72, &outC->_L74); } /* 1 */ checkSingleBB_Receive_TrackSide_Msg_Pkg_BaliseSupport( &outC->_L2, &outC->_L72, &outC->_2_Context_1); kcg_copy_BGCollector_T_Receive_TrackSide_Msg_Pkg( &outC->_L93, &outC->_2_Context_1.outCollector); kcg_copy_BGCollector_T_Receive_TrackSide_Msg_Pkg( &outC->outCollector, &outC->_L93); kcg_copy_TelegramArray_T_BG_Types_Pkg(&outC->outTelegramArray, &outC->_L69); }
/* Receive_TrackSide_Msg_Pkg::manageTelegram */ void manageTelegram_Receive_TrackSide_Msg_Pkg( /* Receive_TrackSide_Msg_Pkg::manageTelegram::newTelegram */ Telegram_T_BG_Types_Pkg *newTelegram, /* Receive_TrackSide_Msg_Pkg::manageTelegram::incenterOfBalisePosition */ centerOfBalisePosition_T_BG_Types_Pkg *incenterOfBalisePosition, /* Receive_TrackSide_Msg_Pkg::manageTelegram::inCollector */ BGCollector_T_Receive_TrackSide_Msg_Pkg *inCollector, /* Receive_TrackSide_Msg_Pkg::manageTelegram::inoldTelegramArray */ TelegramArray_T_BG_Types_Pkg *inoldTelegramArray, outC_manageTelegram_Receive_TrackSide_Msg_Pkg *outC) { kcg_copy_Telegram_T_BG_Types_Pkg(&outC->_L6, newTelegram); kcg_copy_TelegramArray_T_BG_Types_Pkg(&outC->_L60, inoldTelegramArray); kcg_copy_BGCollector_T_Receive_TrackSide_Msg_Pkg(&outC->_L51, inCollector); /* 1 */ checkInit_Receive_TrackSide_Msg_Pkg( &outC->_L6, &outC->_L51, &outC->Context_1); kcg_copy_BGCollector_T_Receive_TrackSide_Msg_Pkg( &outC->_L66, &outC->Context_1.outCollector); /* 1 */ checkTelegram_Receive_TrackSide_Msg_Pkg( &outC->_L6, &outC->_L60, &outC->_L66, &outC->_1_Context_1); kcg_copy_BGCollector_T_Receive_TrackSide_Msg_Pkg( &outC->_L63, &outC->_1_Context_1.outCollector); kcg_copy_TelegramArray_T_BG_Types_Pkg( &outC->_L64, &outC->_1_Context_1.outTelegramArray); outC->_L10 = outC->_1_Context_1.outTelegramNotInGroup; outC->_L11 = outC->_1_Context_1.outBGchangedEarly; outC->isNotReceivedAlready = outC->_L10; outC->_L69 = outC->isNotReceivedAlready; kcg_copy_centerOfBalisePosition_T_BG_Types_Pkg( &outC->_L47, incenterOfBalisePosition); /* 4 */ addTelegram_Receive_TrackSide_Msg_Pkg( &outC->_L6, &outC->_L63, &outC->_L64, outC->_L69, &outC->_L47, &outC->Context_4); kcg_copy_BGCollector_T_Receive_TrackSide_Msg_Pkg( &outC->_L54, &outC->Context_4.outCollector); kcg_copy_TelegramArray_T_BG_Types_Pkg( &outC->_L58, &outC->Context_4.outTelegramArray); outC->_L53 = outC->Context_4.outBGisComplete; outC->_L67 = outC->Context_4.outIsDuplicate; outC->_L65 = outC->_L53 | outC->_L11; outC->outBGisComplete = outC->_L65; outC->outBGisChangedEarly = outC->_L11; kcg_copy_BGCollector_T_Receive_TrackSide_Msg_Pkg( &outC->outCollector, &outC->_L54); kcg_copy_TelegramArray_T_BG_Types_Pkg(&outC->outTelegramArray, &outC->_L58); outC->_L70 = outC->isNotReceivedAlready; outC->_L73 = !outC->_L67; outC->needsReplace = outC->_L73; outC->_L72 = outC->needsReplace; outC->_L68 = outC->_L70 | outC->_L72; outC->outStoresChanged = outC->_L68; }