aboutsummaryrefslogtreecommitdiffstats
path: root/src/policy_manager/zipc/dummy_stm.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/policy_manager/zipc/dummy_stm.c')
-rw-r--r--src/policy_manager/zipc/dummy_stm.c157
1 files changed, 82 insertions, 75 deletions
diff --git a/src/policy_manager/zipc/dummy_stm.c b/src/policy_manager/zipc/dummy_stm.c
index 3be9964..4d8b057 100644
--- a/src/policy_manager/zipc/dummy_stm.c
+++ b/src/policy_manager/zipc/dummy_stm.c
@@ -132,6 +132,13 @@ const char* gStmLayoutNo2Name[] = {
"restriction.split.sub",
};
+const char* gStmLayerNo2Name[] = {
+ "homescreen",
+ "apps",
+ "restriction",
+ "on_screen",
+};
+
stm_state_t g_crr_state;
stm_state_t g_prv_state;
int g_prv_restriction_state_car_stop = 0;
@@ -142,10 +149,10 @@ void stmInitialize() {
// Initialize previous state
memset(&g_prv_state, 0, sizeof(g_prv_state));
- g_prv_state.layer.on_screen.state = gStmLayoutNoNone;
- g_prv_state.layer.restriction.state = gStmLayoutNoNone;
- g_prv_state.layer.apps.state = gStmLayoutNoNone;
- g_prv_state.layer.homescreen.state = gStmLayoutNoNone;
+ g_prv_state.layer[gStmLayerNoOnScreen].state = gStmLayoutNoNone;
+ g_prv_state.layer[gStmLayerNoRestriction].state = gStmLayoutNoNone;
+ g_prv_state.layer[gStmLayerNoApps].state = gStmLayoutNoNone;
+ g_prv_state.layer[gStmLayerNoHomescreen].state = gStmLayoutNoNone;
g_prv_state.trans_gear.state = gStmTransGearStateNoN;
g_prv_state.lightstatus_brake.state = gStmLightstatusBrakeStateNoOn;
g_prv_state.accel_pedal.state = gStmAccelPedalStateNoOff;
@@ -171,8 +178,8 @@ int stmTransitionState(int event, stm_state_t* state) {
g_prv_state = g_crr_state;
// Get previous state
- restriction_state = g_prv_state.layer.restriction.state;
- apps_state = g_prv_state.layer.apps.state;
+ restriction_state = g_prv_state.layer[gStmLayerNoRestriction].state;
+ apps_state = g_prv_state.layer[gStmLayerNoApps].state;
trans_gear_state = g_prv_state.trans_gear.state;
parking_brake_state = g_prv_state.parking_brake.state;
accel_pedal_state = g_prv_state.accel_pedal.state;
@@ -182,10 +189,10 @@ int stmTransitionState(int event, stm_state_t* state) {
restriction_mode_state = g_prv_state.restriction_mode.state;
// Clear flags
- g_crr_state.layer.on_screen.is_changed = STM_FALSE;
- g_crr_state.layer.restriction.is_changed = STM_FALSE;
- g_crr_state.layer.apps.is_changed = STM_FALSE;
- g_crr_state.layer.homescreen.is_changed = STM_FALSE;
+ g_crr_state.layer[gStmLayerNoOnScreen].is_changed = STM_FALSE;
+ g_crr_state.layer[gStmLayerNoRestriction].is_changed = STM_FALSE;
+ g_crr_state.layer[gStmLayerNoApps].is_changed = STM_FALSE;
+ g_crr_state.layer[gStmLayerNoHomescreen].is_changed = STM_FALSE;
g_crr_state.trans_gear.is_changed = STM_FALSE;
g_crr_state.parking_brake.is_changed = STM_FALSE;
g_crr_state.lightstatus_brake.is_changed = STM_FALSE;
@@ -299,14 +306,14 @@ int stmTransitionState(int event, stm_state_t* state) {
// Update restriction layer
g_prv_restriction_state_car_stop = restriction_state;
- g_crr_state.layer.restriction.state = gStmLayoutNoNone;
- g_crr_state.layer.restriction.is_changed = STM_TRUE;
+ g_crr_state.layer[gStmLayerNoRestriction].state = gStmLayoutNoNone;
+ g_crr_state.layer[gStmLayerNoRestriction].is_changed = STM_TRUE;
// Update apps layer
g_prv_apps_state_car_stop = apps_state;
if (STM_TRUE == g_map_is_activated) {
- g_crr_state.layer.apps.state = gStmLayoutNoM1;
- g_crr_state.layer.apps.is_changed = STM_TRUE;
+ g_crr_state.layer[gStmLayerNoApps].state = gStmLayoutNoM1;
+ g_crr_state.layer[gStmLayerNoApps].is_changed = STM_TRUE;
}
}
else if ((STM_EVT_NO_RESTRICTION_MODE_OFF == event_no)
@@ -318,13 +325,13 @@ int stmTransitionState(int event, stm_state_t* state) {
g_crr_state.restriction_mode.is_changed = STM_TRUE;
// Update restriction layer
- g_crr_state.layer.restriction.state = g_prv_restriction_state_car_stop;
- g_crr_state.layer.restriction.is_changed = STM_TRUE;
+ g_crr_state.layer[gStmLayerNoRestriction].state = g_prv_restriction_state_car_stop;
+ g_crr_state.layer[gStmLayerNoRestriction].is_changed = STM_TRUE;
// Update apps layer
if (STM_TRUE == g_map_is_activated) {
- g_crr_state.layer.apps.state = g_prv_apps_state_car_stop;
- g_crr_state.layer.apps.is_changed = STM_TRUE;
+ g_crr_state.layer[gStmLayerNoApps].state = g_prv_apps_state_car_stop;
+ g_crr_state.layer[gStmLayerNoApps].is_changed = STM_TRUE;
}
}
@@ -335,12 +342,12 @@ int stmTransitionState(int event, stm_state_t* state) {
switch (category_no) {
case STM_CTG_NO_HOMESCREEN:
// Apps layer
- g_crr_state.layer.apps.state = gStmLayoutNoNone;
- g_crr_state.layer.apps.is_changed = STM_TRUE;
+ g_crr_state.layer[gStmLayerNoApps].state = gStmLayoutNoNone;
+ g_crr_state.layer[gStmLayerNoApps].is_changed = STM_TRUE;
// Homescreen layer
- g_crr_state.layer.homescreen.state = gStmLayoutNoHs;
- g_crr_state.layer.homescreen.is_changed = STM_TRUE;
+ g_crr_state.layer[gStmLayerNoHomescreen].state = gStmLayoutNoHs;
+ g_crr_state.layer[gStmLayerNoHomescreen].is_changed = STM_TRUE;
break;
case STM_CTG_NO_MAP:
switch (area_no) {
@@ -351,8 +358,8 @@ int stmTransitionState(int event, stm_state_t* state) {
// nop
break;
default:
- g_crr_state.layer.apps.state = gStmLayoutNoMf;
- g_crr_state.layer.apps.is_changed = STM_TRUE;
+ g_crr_state.layer[gStmLayerNoApps].state = gStmLayoutNoMf;
+ g_crr_state.layer[gStmLayerNoApps].is_changed = STM_TRUE;
break;
}
break;
@@ -363,12 +370,12 @@ int stmTransitionState(int event, stm_state_t* state) {
// nop
break;
case gStmLayoutNoS1:
- g_crr_state.layer.apps.state = gStmLayoutNoM2;
- g_crr_state.layer.apps.is_changed = STM_TRUE;
+ g_crr_state.layer[gStmLayerNoApps].state = gStmLayoutNoM2;
+ g_crr_state.layer[gStmLayerNoApps].is_changed = STM_TRUE;
break;
default:
- g_crr_state.layer.apps.state = gStmLayoutNoM1;
- g_crr_state.layer.apps.is_changed = STM_TRUE;
+ g_crr_state.layer[gStmLayerNoApps].state = gStmLayoutNoM1;
+ g_crr_state.layer[gStmLayerNoApps].is_changed = STM_TRUE;
}
break;
case STM_ARA_NO_SPLIT_MAIN:
@@ -376,8 +383,8 @@ int stmTransitionState(int event, stm_state_t* state) {
switch (apps_state) {
case gStmLayoutNoS1:
case gStmLayoutNoS2:
- g_crr_state.layer.apps.state = gStmLayoutNoS2;
- g_crr_state.layer.apps.is_changed = STM_TRUE;
+ g_crr_state.layer[gStmLayerNoApps].state = gStmLayoutNoS2;
+ g_crr_state.layer[gStmLayerNoApps].is_changed = STM_TRUE;
break;
default:
// nop
@@ -395,8 +402,8 @@ int stmTransitionState(int event, stm_state_t* state) {
// nop
break;
default:
- g_crr_state.layer.apps.state = gStmLayoutNoG;
- g_crr_state.layer.apps.is_changed = STM_TRUE;
+ g_crr_state.layer[gStmLayerNoApps].state = gStmLayoutNoG;
+ g_crr_state.layer[gStmLayerNoApps].is_changed = STM_TRUE;
break;
}
break;
@@ -411,16 +418,16 @@ int stmTransitionState(int event, stm_state_t* state) {
// Apps layer
switch (apps_state) {
case gStmLayoutNoM1:
- g_crr_state.layer.apps.state = gStmLayoutNoM2;
- g_crr_state.layer.apps.is_changed = STM_TRUE;
+ g_crr_state.layer[gStmLayerNoApps].state = gStmLayoutNoM2;
+ g_crr_state.layer[gStmLayerNoApps].is_changed = STM_TRUE;
break;
case gStmLayoutNoMf:
case gStmLayoutNoS1:
// nop
break;
default:
- g_crr_state.layer.apps.state = gStmLayoutNoS1;
- g_crr_state.layer.apps.is_changed = STM_TRUE;
+ g_crr_state.layer[gStmLayerNoApps].state = gStmLayoutNoS1;
+ g_crr_state.layer[gStmLayerNoApps].is_changed = STM_TRUE;
break;
}
break;
@@ -428,12 +435,12 @@ int stmTransitionState(int event, stm_state_t* state) {
// Apps layer
switch (apps_state) {
case gStmLayoutNoS1:
- g_crr_state.layer.apps.state = gStmLayoutNoS2;
- g_crr_state.layer.apps.is_changed = STM_TRUE;
+ g_crr_state.layer[gStmLayerNoApps].state = gStmLayoutNoS2;
+ g_crr_state.layer[gStmLayerNoApps].is_changed = STM_TRUE;
break;
case gStmLayoutNoS2:
- g_crr_state.layer.apps.state = gStmLayoutNoS2;
- g_crr_state.layer.apps.is_changed = STM_TRUE;
+ g_crr_state.layer[gStmLayerNoApps].state = gStmLayoutNoS2;
+ g_crr_state.layer[gStmLayerNoApps].is_changed = STM_TRUE;
break;
default:
// nop
@@ -444,20 +451,20 @@ int stmTransitionState(int event, stm_state_t* state) {
// Apps layer
switch (apps_state) {
case gStmLayoutNoM1:
- g_crr_state.layer.apps.state = gStmLayoutNoM2;
- g_crr_state.layer.apps.is_changed = STM_TRUE;
+ g_crr_state.layer[gStmLayerNoApps].state = gStmLayoutNoM2;
+ g_crr_state.layer[gStmLayerNoApps].is_changed = STM_TRUE;
break;
case gStmLayoutNoM2:
- g_crr_state.layer.apps.state = gStmLayoutNoM2;
- g_crr_state.layer.apps.is_changed = STM_TRUE;
+ g_crr_state.layer[gStmLayerNoApps].state = gStmLayoutNoM2;
+ g_crr_state.layer[gStmLayerNoApps].is_changed = STM_TRUE;
break;
case gStmLayoutNoS1:
- g_crr_state.layer.apps.state = gStmLayoutNoS2;
- g_crr_state.layer.apps.is_changed = STM_TRUE;
+ g_crr_state.layer[gStmLayerNoApps].state = gStmLayoutNoS2;
+ g_crr_state.layer[gStmLayerNoApps].is_changed = STM_TRUE;
break;
case gStmLayoutNoS2:
- g_crr_state.layer.apps.state = gStmLayoutNoS2;
- g_crr_state.layer.apps.is_changed = STM_TRUE;
+ g_crr_state.layer[gStmLayerNoApps].state = gStmLayoutNoS2;
+ g_crr_state.layer[gStmLayerNoApps].is_changed = STM_TRUE;
break;
default:
// nop
@@ -496,9 +503,9 @@ int stmTransitionState(int event, stm_state_t* state) {
case STM_ARA_NO_RESTRICTION_NORMAL:
switch (restriction_state) {
case gStmLayoutNoNone:
- if (g_crr_state.layer.apps.state == gStmLayoutNoS1) {
- g_crr_state.layer.restriction.state = gStmLayoutNoRestriction;
- g_crr_state.layer.restriction.is_changed = STM_TRUE;
+ if (g_crr_state.layer[gStmLayerNoApps].state == gStmLayoutNoS1) {
+ g_crr_state.layer[gStmLayerNoRestriction].state = gStmLayoutNoRestriction;
+ g_crr_state.layer[gStmLayerNoRestriction].is_changed = STM_TRUE;
}
break;
default:
@@ -509,8 +516,8 @@ int stmTransitionState(int event, stm_state_t* state) {
case STM_ARA_NO_RESTRICTION_SPLIT_MAIN:
switch (restriction_state) {
case gStmLayoutNoNone:
- g_crr_state.layer.restriction.state = gStmLayoutNoRestrictionSplitMain;
- g_crr_state.layer.restriction.is_changed = STM_TRUE;
+ g_crr_state.layer[gStmLayerNoRestriction].state = gStmLayoutNoRestrictionSplitMain;
+ g_crr_state.layer[gStmLayerNoRestriction].is_changed = STM_TRUE;
break;
default:
// nop
@@ -520,9 +527,9 @@ int stmTransitionState(int event, stm_state_t* state) {
case STM_ARA_NO_RESTRICTION_SPLIT_SUB:
switch (restriction_state) {
case gStmLayoutNoNone:
- if (g_crr_state.layer.apps.state == gStmLayoutNoM2) {
- g_crr_state.layer.restriction.state = gStmLayoutNoRestrictionSplitSub;
- g_crr_state.layer.restriction.is_changed = STM_TRUE;
+ if (g_crr_state.layer[gStmLayerNoApps].state == gStmLayoutNoM2) {
+ g_crr_state.layer[gStmLayerNoRestriction].state = gStmLayoutNoRestrictionSplitSub;
+ g_crr_state.layer[gStmLayerNoRestriction].is_changed = STM_TRUE;
}
break;
default:
@@ -541,8 +548,8 @@ int stmTransitionState(int event, stm_state_t* state) {
case gStmLayoutNoRestriction:
case gStmLayoutNoRestrictionSplitMain:
case gStmLayoutNoRestrictionSplitSub:
- g_crr_state.layer.restriction.state = gStmLayoutNoNone;
- g_crr_state.layer.restriction.is_changed = STM_TRUE;
+ g_crr_state.layer[gStmLayerNoRestriction].state = gStmLayoutNoNone;
+ g_crr_state.layer[gStmLayerNoRestriction].is_changed = STM_TRUE;
break;
default:
// nop
@@ -550,27 +557,27 @@ int stmTransitionState(int event, stm_state_t* state) {
}
}
}
- else if (g_crr_state.layer.apps.is_changed) {
+ else if (g_crr_state.layer[gStmLayerNoApps].is_changed) {
if (gStmLightstatusBrakeStateNoOff == g_crr_state.lightstatus_brake.state) {
- if (gStmLayoutNoM2 == g_crr_state.layer.apps.state) {
- g_crr_state.layer.restriction.state = gStmLayoutNoRestrictionSplitSub;
- g_crr_state.layer.restriction.is_changed = STM_TRUE;
+ if (gStmLayoutNoM2 == g_crr_state.layer[gStmLayerNoApps].state) {
+ g_crr_state.layer[gStmLayerNoRestriction].state = gStmLayoutNoRestrictionSplitSub;
+ g_crr_state.layer[gStmLayerNoRestriction].is_changed = STM_TRUE;
}
- else if (gStmLayoutNoS1 == g_crr_state.layer.apps.state) {
- g_crr_state.layer.restriction.state = gStmLayoutNoRestriction;
- g_crr_state.layer.restriction.is_changed = STM_TRUE;
+ else if (gStmLayoutNoS1 == g_crr_state.layer[gStmLayerNoApps].state) {
+ g_crr_state.layer[gStmLayerNoRestriction].state = gStmLayoutNoRestriction;
+ g_crr_state.layer[gStmLayerNoRestriction].is_changed = STM_TRUE;
}
else {
- if (gStmLayoutNoNone != g_crr_state.layer.restriction.state) {
- g_crr_state.layer.restriction.state = gStmLayoutNoNone;
- g_crr_state.layer.restriction.is_changed = STM_TRUE;
+ if (gStmLayoutNoNone != g_crr_state.layer[gStmLayerNoRestriction].state) {
+ g_crr_state.layer[gStmLayerNoRestriction].state = gStmLayoutNoNone;
+ g_crr_state.layer[gStmLayerNoRestriction].is_changed = STM_TRUE;
}
}
}
else {
- if (gStmLayoutNoNone != g_crr_state.layer.restriction.state) {
- g_crr_state.layer.restriction.state = gStmLayoutNoNone;
- g_crr_state.layer.restriction.is_changed = STM_TRUE;
+ if (gStmLayoutNoNone != g_crr_state.layer[gStmLayerNoRestriction].state) {
+ g_crr_state.layer[gStmLayerNoRestriction].state = gStmLayoutNoNone;
+ g_crr_state.layer[gStmLayerNoRestriction].is_changed = STM_TRUE;
}
}
}
@@ -579,10 +586,10 @@ int stmTransitionState(int event, stm_state_t* state) {
memcpy(state, &g_crr_state, sizeof(g_crr_state));
if ((STM_FALSE == g_map_is_activated)
- && (STM_TRUE == g_crr_state.layer.apps.is_changed)
- && ((gStmLayoutNoM1 == g_crr_state.layer.apps.state)
- || (gStmLayoutNoM2 == g_crr_state.layer.apps.state)
- || (gStmLayoutNoMf == g_crr_state.layer.apps.state))) {
+ && (STM_TRUE == g_crr_state.layer[gStmLayerNoApps].is_changed)
+ && ((gStmLayoutNoM1 == g_crr_state.layer[gStmLayerNoApps].state)
+ || (gStmLayoutNoM2 == g_crr_state.layer[gStmLayerNoApps].state)
+ || (gStmLayoutNoMf == g_crr_state.layer[gStmLayerNoApps].state))) {
g_map_is_activated = STM_TRUE;
}