summaryrefslogtreecommitdiffstats
path: root/demo#3/common/agl-service-windowmanager/policy_manager/stm/zipc/StateTransitionor/CarState/ZCAR_CarState.c
diff options
context:
space:
mode:
Diffstat (limited to 'demo#3/common/agl-service-windowmanager/policy_manager/stm/zipc/StateTransitionor/CarState/ZCAR_CarState.c')
-rw-r--r--demo#3/common/agl-service-windowmanager/policy_manager/stm/zipc/StateTransitionor/CarState/ZCAR_CarState.c154
1 files changed, 154 insertions, 0 deletions
diff --git a/demo#3/common/agl-service-windowmanager/policy_manager/stm/zipc/StateTransitionor/CarState/ZCAR_CarState.c b/demo#3/common/agl-service-windowmanager/policy_manager/stm/zipc/StateTransitionor/CarState/ZCAR_CarState.c
new file mode 100644
index 0000000..8e20123
--- /dev/null
+++ b/demo#3/common/agl-service-windowmanager/policy_manager/stm/zipc/StateTransitionor/CarState/ZCAR_CarState.c
@@ -0,0 +1,154 @@
+/************************************************************/
+/* ZCAR_CarState.c */
+/* CarState State transition model source file */
+/* ZIPC Designer Version 1.2.0 */
+/************************************************************/
+#include "../ZST_include.h"
+
+/* State management variable */
+static uint8_t ZCAR_CarStateState[ZCAR_CARSTATESTATENOMAX];
+
+static void ZCAR_CarStates0e1( void );
+static void ZCAR_CarStates1e0( void );
+static void ZCAR_CarStates0Event( void );
+static void ZCAR_CarStates1Event( void );
+
+/****************************************/
+/* Action function */
+/* STM : CarState */
+/* State : car_stop( No 0 ) */
+/* Event : stt_accel_pedal_on( No 1 ) */
+/****************************************/
+static void ZCAR_CarStates0e1( void )
+{
+ ZCAR_CarStateState[ZCAR_CARSTATE] = ( uint8_t )ZCAR_CARSTATES1;
+ stm_rns_start_activity_car_run();
+}
+
+/****************************************/
+/* Action function */
+/* STM : CarState */
+/* State : car_run( No 1 ) */
+/* Event : stt_accel_pedal_off( No 0 )*/
+/****************************************/
+static void ZCAR_CarStates1e0( void )
+{
+ ZCAR_CarStateState[ZCAR_CARSTATE] = ( uint8_t )ZCAR_CARSTATES0;
+ stm_rns_start_activity_car_stop();
+}
+
+/****************************************/
+/* Event appraisal function */
+/* STM : CarState */
+/* State : car_stop( No 0 ) */
+/****************************************/
+static void ZCAR_CarStates0Event( void )
+{
+ /*stt_lightstatus_brake_off*/
+ if( g_stm_crr_state.car_element[StmCarElementNoLightstatusBrake].state == StmLightstatusBrakeSttNoOff )
+ {
+ /*stt_accel_pedal_on*/
+ if( g_stm_crr_state.car_element[StmCarElementNoAccelPedal].state == StmAccelPedalSttNoOn )
+ {
+ ZCAR_CarStates0e1();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+}
+
+/****************************************/
+/* Event appraisal function */
+/* STM : CarState */
+/* State : car_run( No 1 ) */
+/****************************************/
+static void ZCAR_CarStates1Event( void )
+{
+ /*stt_lightstatus_brake_off*/
+ if( g_stm_crr_state.car_element[StmCarElementNoLightstatusBrake].state == StmLightstatusBrakeSttNoOff )
+ {
+ /*stt_accel_pedal_off*/
+ if( g_stm_crr_state.car_element[StmCarElementNoAccelPedal].state == StmAccelPedalSttNoOff )
+ {
+ ZCAR_CarStates1e0();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*stt_lightstatus_brake_on*/
+ else if( g_stm_crr_state.car_element[StmCarElementNoLightstatusBrake].state == StmLightstatusBrakeSttNoOn )
+ {
+ /*stt_accel_pedal_off*/
+ if( g_stm_crr_state.car_element[StmCarElementNoAccelPedal].state == StmAccelPedalSttNoOff )
+ {
+ ZCAR_CarStates1e0();
+ }
+ /*stt_accel_pedal_on*/
+ else if( g_stm_crr_state.car_element[StmCarElementNoAccelPedal].state == StmAccelPedalSttNoOn )
+ {
+ ZCAR_CarStates1e0();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+}
+
+/****************************************/
+/* Event call function */
+/* STM : CarState */
+/****************************************/
+void stm_rns_event_call( void )
+{
+ stm_rns_start_stm();
+ switch( ZCAR_CarStateState[ZCAR_CARSTATE] )
+ {
+ case ZCAR_CARSTATES0:
+ ZCAR_CarStates0Event();
+ break;
+ case ZCAR_CARSTATES1:
+ ZCAR_CarStates1Event();
+ break;
+ default:
+ /*Not accessible to this else (default).*/
+ break;
+ }
+}
+
+/****************************************/
+/* Initial function */
+/* STM : CarState */
+/****************************************/
+void stm_rns_initialize( void )
+{
+ ZCAR_CarStateState[ZCAR_CARSTATE] = ( uint8_t )ZCAR_CARSTATES0;
+ stm_rns_start_activity_car_stop();
+}
+
+/****************************************/
+/* Terminate function */
+/* STM : CarState */
+/****************************************/
+void ZCAR_CarStateTerminate( void )
+{
+ ZCAR_CarStateState[ZCAR_CARSTATE] = ( uint8_t )ZCAR_CARSTATETERMINATE;
+}
+