summaryrefslogtreecommitdiffstats
path: root/demo3/common/agl-service-windowmanager/policy_manager/stm/zipc/StateTransitionor/AccelPedal/ZACCEL_AccelPedal.c
blob: fa692ee541b96b9e4367d32326727d805b416c24 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
/************************************************************/
/*     ZACCEL_AccelPedal.c                                  */
/*     AccelPedal State transition model source file        */
/*     ZIPC Designer Version 1.2.0                          */
/************************************************************/
#include "../ZST_include.h"

/* State management variable */
static uint8_t ZACCEL_AccelPedalState[ZACCEL_ACCELPEDALSTATENOMAX];

static void ZACCEL_AccelPedals0e1( void );
static void ZACCEL_AccelPedals1e0( void );
static void ZACCEL_AccelPedals0Event( void );
static void ZACCEL_AccelPedals1Event( void );

/****************************************/
/* Action function                      */
/*   STM : AccelPedal                   */
/*   State : accel_pedal_off( No 0 )    */
/*   Event : evt_accel_pedal_on( No 1 ) */
/****************************************/
static void ZACCEL_AccelPedals0e1( void )
{
    ZACCEL_AccelPedalState[ZACCEL_ACCELPEDAL] = ( uint8_t )ZACCEL_ACCELPEDALS1;
    stm_aps_start_activity_accel_pedal_on();
}

/****************************************/
/* Action function                      */
/*   STM : AccelPedal                   */
/*   State : accel_pedal_on( No 1 )     */
/*   Event : evt_accel_pedal_off( No 0 )*/
/****************************************/
static void ZACCEL_AccelPedals1e0( void )
{
    ZACCEL_AccelPedalState[ZACCEL_ACCELPEDAL] = ( uint8_t )ZACCEL_ACCELPEDALS0;
    stm_aps_start_activity_accel_pedal_off();
}

/****************************************/
/* Event appraisal function             */
/*   STM : AccelPedal                   */
/*   State : accel_pedal_off( No 0 )    */
/****************************************/
static void ZACCEL_AccelPedals0Event( void )
{
    /*evt_accel_pedal_on*/
    if( g_stm_event == StmEvtNoAccelPedalOn )
    {
        ZACCEL_AccelPedals0e1();
    }
    else
    {
        /*Else and default design have not done.*/
        /*Please confirm the STM and design else and default.*/
    }
}

/****************************************/
/* Event appraisal function             */
/*   STM : AccelPedal                   */
/*   State : accel_pedal_on( No 1 )     */
/****************************************/
static void ZACCEL_AccelPedals1Event( void )
{
    /*evt_accel_pedal_off*/
    if( g_stm_event == StmEvtNoAccelPedalOff )
    {
        ZACCEL_AccelPedals1e0();
    }
    else
    {
        /*Else and default design have not done.*/
        /*Please confirm the STM and design else and default.*/
    }
}

/****************************************/
/* Event call function                  */
/*   STM : AccelPedal                   */
/****************************************/
void stm_aps_event_call( void )
{
    stm_aps_start_stm();
    switch( ZACCEL_AccelPedalState[ZACCEL_ACCELPEDAL] )
    {
    case ZACCEL_ACCELPEDALS0:
        ZACCEL_AccelPedals0Event();
        break;
    case ZACCEL_ACCELPEDALS1:
        ZACCEL_AccelPedals1Event();
        break;
    default:
        /*Not accessible to this else (default).*/
        break;
    }
}

/****************************************/
/* Initial function                     */
/*   STM : AccelPedal                   */
/****************************************/
void stm_aps_initialize( void )
{
    ZACCEL_AccelPedalState[ZACCEL_ACCELPEDAL] = ( uint8_t )ZACCEL_ACCELPEDALS0;
    stm_aps_start_activity_accel_pedal_off();
}

/****************************************/
/* Terminate function                   */
/*   STM : AccelPedal                   */
/****************************************/
void ZACCEL_AccelPedalTerminate( void )
{
    ZACCEL_AccelPedalState[ZACCEL_ACCELPEDAL] = ( uint8_t )ZACCEL_ACCELPEDALTERMINATE;
}