diff options
author | 2018-06-07 18:09:45 +0900 | |
---|---|---|
committer | 2018-06-07 18:09:45 +0900 | |
commit | 758f292ad413bf8a6a328ffc81a58f5bbb3d172e (patch) | |
tree | 1ffd2c3e03f8f89071bc0d32eebf6d5bb342e6bc /src/policy_manager/zipc | |
parent | d1fbf20ba98bcb935d75c7a13ab5d5b9450a7837 (diff) |
Modify struct stm_state_t
Change-Id: I4f9861d22439270200e202b1c365bbd1d055e900
Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
Diffstat (limited to 'src/policy_manager/zipc')
-rw-r--r-- | src/policy_manager/zipc/dummy_stm.c | 157 | ||||
-rw-r--r-- | src/policy_manager/zipc/dummy_stm.h | 13 |
2 files changed, 94 insertions, 76 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; } diff --git a/src/policy_manager/zipc/dummy_stm.h b/src/policy_manager/zipc/dummy_stm.h index e848628..c0011f3 100644 --- a/src/policy_manager/zipc/dummy_stm.h +++ b/src/policy_manager/zipc/dummy_stm.h @@ -121,6 +121,14 @@ enum stm_layout_ { gStmLayoutNoRestrictionSplitSub, }; +enum stm_layer_ { + gStmLayerNoHomescreen = 0, + gStmLayerNoApps, + gStmLayerNoRestriction, + gStmLayerNoOnScreen, + + gStmLayerNoNum, +}; extern const char* gStmEventName[]; extern const int gStmEventNo[]; @@ -128,6 +136,8 @@ extern const char* gStmCategoryName[]; extern const int gStmCategoryNo[]; extern const char* gStmAreaName[]; extern const int gStmAreaNo[]; +extern const char* gStmLayerName[]; +extern const int gStmLayerNo[]; // String for state extern const char* gStmParkingBrakeStateNo2Name[]; @@ -159,7 +169,8 @@ typedef struct { stm_base_state lamp; stm_base_state lightstatus_brake; stm_base_state restriction_mode; - stm_layer_state layer; + stm_base_state layer[gStmLayerNoNum]; +// stm_layer_state layer; } stm_state_t; |