void PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_entrypoint_impl( SAMPLING_PORT_ID_TYPE * PongIn, BLACKBOARD_ID_TYPE * PortCnx9_delayed_PongIn, SAMPLING_PORT_ID_TYPE * mode_aadlKeywords, SEQ * seqNb, PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_currentState * Parent_BA_currentState_Access) { PingPongMessage PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_entrypoint_impl_PongIn_localVariable; MESSAGE_SIZE_TYPE PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_entrypoint_impl_PongIn_Length = sizeof(PingPongMessage); PingPongMessage PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_entrypoint_impl_delayed_PongIn_localVariable; MESSAGE_SIZE_TYPE PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_entrypoint_impl_delayed_PongIn_Length = sizeof(PingPongMessage); ROLE PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_entrypoint_impl_mode_aadlKeywords_localVariable; MESSAGE_SIZE_TYPE PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_entrypoint_impl_mode_aadlKeywords_Length = sizeof(ROLE); RETURN_CODE_TYPE PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_entrypoint_impl_PongIn_ErrorCode = 0; RETURN_CODE_TYPE PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_entrypoint_impl_mode_aadlKeywords_ErrorCode = 0; VALIDITY_TYPE PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_entrypoint_impl_PongIn_Validity; VALIDITY_TYPE PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_entrypoint_impl_mode_aadlKeywords_Validity; RETURN_CODE_TYPE PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_entrypoint_impl_S2_inst_IPingOrPong_Cping_delayed_PongIn_runtime_call_ret; PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_behaviorIdentifier_enum whichPortActivated = PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_behaviorIdentifier_enum_default_behavior; while(1) { switch(S2_inst_IPingOrPong_Cping_delayed_PongIn_entrypoint_impl_current_state) { case PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_entrypoint_impl_BA_entrypoint_init_state: // Transition id: which_behavior_default_mode if(1) // no execution condition { S2_inst_IPingOrPong_Cping_delayed_PongIn_entrypoint_impl_current_state = PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_entrypoint_impl_BA_entrypoint_exec_state; whichPortActivated = PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_behaviorIdentifier_enum_default_behavior; break; } case PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_entrypoint_impl_BA_entrypoint_wait_dispatch_state: // Transition id: dispatch_transition if(1) // no execution condition { S2_inst_IPingOrPong_Cping_delayed_PongIn_entrypoint_impl_current_state = PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_entrypoint_impl_BA_entrypoint_exec_state; PERIODIC_WAIT (&PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_entrypoint_impl_S2_inst_IPingOrPong_Cping_delayed_PongIn_runtime_call_ret); break; } case PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_entrypoint_impl_BA_entrypoint_exec_state: // Transition id: behavior_specification_1 -- Priority 0 if(whichPortActivated == PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_behaviorIdentifier_enum_default_behavior) { S2_inst_IPingOrPong_Cping_delayed_PongIn_entrypoint_impl_current_state = PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_entrypoint_impl_BA_entrypoint_wait_dispatch_state; if ((*Parent_BA_currentState_Access) == PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_currentState_switch) { READ_SAMPLING_MESSAGE ((*PongIn), &PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_entrypoint_impl_PongIn_localVariable, PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_entrypoint_impl_PongIn_Length, &PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_entrypoint_impl_PongIn_Validity, &PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_entrypoint_impl_S2_inst_IPingOrPong_Cping_delayed_PongIn_runtime_call_ret); READ_SAMPLING_MESSAGE ((*mode_aadlKeywords), &PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_entrypoint_impl_mode_aadlKeywords_localVariable, PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_entrypoint_impl_mode_aadlKeywords_Length, &PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_entrypoint_impl_mode_aadlKeywords_Validity, &PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_entrypoint_impl_S2_inst_IPingOrPong_Cping_delayed_PongIn_runtime_call_ret); if (PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_entrypoint_impl_mode_aadlKeywords_localVariable == E_ROLE_CPING) { PingPong__IPingOrPong_Cping_delayed_PongIn (&PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_entrypoint_impl_PongIn_localVariable, &PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_entrypoint_impl_delayed_PongIn_localVariable); } (*Parent_BA_currentState_Access) = PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_currentState_switch; DISPLAY_BLACKBOARD ((*PortCnx9_delayed_PongIn), &PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_entrypoint_impl_delayed_PongIn_localVariable, PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_entrypoint_impl_delayed_PongIn_Length, &PingPong_refined_model__S2_inst_IPingOrPong_Cping_delayed_PongIn_entrypoint_impl_S2_inst_IPingOrPong_Cping_delayed_PongIn_runtime_call_ret); } break; } } } }
/* -----------------------------------------------------------------------------------*/ void Process2(void){ APEX_BYTE data[MAX_LENGTH]; RETURN_CODE_TYPE retCode; char sal_code[MAX_CAD]; BLACKBOARD_ID_TYPE bbId; printf("Process 2 starts ... \n"); strcpy(data, "OK"); GET_BLACKBOARD_ID(BLACKBOARD_NAME_1, &bbId, &retCode); CHECK_CODE(": GET_BLACKBOARD_ID_1 by Process2", retCode, sal_code); printf("%s\n", sal_code); DISPLAY_BLACKBOARD (bbId, data, 3, &retCode); CHECK_CODE(": DISPLAY_BLACKBOARD B2 in Process 2", retCode, sal_code); printf("%s\n", sal_code); STOP_SELF(); }
/* -----------------------------------------------------------------------------------*/ void Process3(void){ struct stop_error_type c_s; APEX_BYTE data[MAX_LENGTH]; char sal_code[MAX_CAD]; PROCESS_ID_TYPE procMainId2; RETURN_CODE_TYPE retCode; BLACKBOARD_ID_TYPE bbId; printf("Process 3 starts ... \n"); strcpy(data, "OK"); /* To get the procMainId2 value */ GET_PROCESS_ID("tProc2", &procMainId2, &retCode); CHECK_CODE(": GET_PROCESS_ID Process 2", retCode, sal_code); printf("%s\n", sal_code); /* To check stop process 2 */ c_s = check_stop(procMainId2, NO_ERROR); GET_BLACKBOARD_ID(BLACKBOARD_NAME_0, &bbId, &retCode); CHECK_CODE(": GET_BLACKBOARD_ID_0 by Process3", retCode, sal_code); printf("%s\n", sal_code); DISPLAY_BLACKBOARD (bbId, data, 3, &retCode); CHECK_CODE(": DISPLAY_BLACKBOARD B1 in Process 3", retCode, sal_code); printf("%s\n", sal_code); START(procMainId2, &retCode); CHECK_CODE(": START Process 2", retCode, sal_code); printf("%s\n", sal_code); show_results(c_s); STOP_SELF (); }