aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt1
-rw-r--r--src/policy_manager/stm/zipc/src/CMakeLists.txt83
-rw-r--r--src/policy_manager/stm/zipc/src/Common/Event.h6
-rw-r--r--src/policy_manager/stm/zipc/src/Common/MisraCType.h16
-rw-r--r--src/policy_manager/stm/zipc/src/Common/ZCommonInclude.h16
-rw-r--r--src/policy_manager/stm/zipc/src/StateTransitionor/AppsLayer/ZAPL_AppsLayer.c2006
-rw-r--r--src/policy_manager/stm/zipc/src/StateTransitionor/AppsLayer/ZAPL_AppsLayer.h123
-rw-r--r--src/policy_manager/stm/zipc/src/StateTransitionor/AppsLayer/ZAPL_Apps_func.c128
-rw-r--r--src/policy_manager/stm/zipc/src/StateTransitionor/AppsLayer/ZAPL_Apps_func.h22
-rw-r--r--src/policy_manager/stm/zipc/src/StateTransitionor/HomeScreenLayer/ZHSL_HomeScreen.c152
-rw-r--r--src/policy_manager/stm/zipc/src/StateTransitionor/HomeScreenLayer/ZHSL_HomeScreen.h39
-rw-r--r--src/policy_manager/stm/zipc/src/StateTransitionor/HomeScreenLayer/ZHSL_HomeScreen_func.c45
-rw-r--r--src/policy_manager/stm/zipc/src/StateTransitionor/HomeScreenLayer/ZHSL_HomeScreen_func.h14
-rw-r--r--src/policy_manager/stm/zipc/src/StateTransitionor/NearHomeScreen/ZNHL_NearHomeScreen_func.c65
-rw-r--r--src/policy_manager/stm/zipc/src/StateTransitionor/NearHomeScreen/ZNHL_NearHomeScreen_func.h16
-rw-r--r--src/policy_manager/stm/zipc/src/StateTransitionor/NearHomeScreen/ZNHL_NearHomescreen.c242
-rw-r--r--src/policy_manager/stm/zipc/src/StateTransitionor/NearHomeScreen/ZNHL_NearHomescreen.h53
-rw-r--r--src/policy_manager/stm/zipc/src/StateTransitionor/OnScreenlayer/ZOSL_OnScreen_func.c72
-rw-r--r--src/policy_manager/stm/zipc/src/StateTransitionor/OnScreenlayer/ZOSL_OnScreen_func.h17
-rw-r--r--src/policy_manager/stm/zipc/src/StateTransitionor/OnScreenlayer/ZOSL_OslMain.c764
-rw-r--r--src/policy_manager/stm/zipc/src/StateTransitionor/OnScreenlayer/ZOSL_OslMain.h82
-rw-r--r--src/policy_manager/stm/zipc/src/StateTransitionor/RestrictionLayer/ZREL_RelMain.c976
-rw-r--r--src/policy_manager/stm/zipc/src/StateTransitionor/RestrictionLayer/ZREL_RelMain.h94
-rw-r--r--src/policy_manager/stm/zipc/src/StateTransitionor/RestrictionLayer/ZREL_Restriction_func.c81
-rw-r--r--src/policy_manager/stm/zipc/src/StateTransitionor/RestrictionLayer/ZREL_Restriction_func.h18
-rw-r--r--src/policy_manager/stm/zipc/src/StateTransitionor/RestrictionMode/ZREM_RestrictionMode.c168
-rw-r--r--src/policy_manager/stm/zipc/src/StateTransitionor/RestrictionMode/ZREM_RestrictionMode.h46
-rw-r--r--src/policy_manager/stm/zipc/src/StateTransitionor/RestrictionMode/ZREM_RestrictionMode_func.c53
-rw-r--r--src/policy_manager/stm/zipc/src/StateTransitionor/RestrictionMode/ZREM_RestrictionMode_func.h15
-rw-r--r--src/policy_manager/stm/zipc/src/StateTransitionor/ZST_StateTransitionor_def.h160
-rw-r--r--src/policy_manager/stm/zipc/src/StateTransitionor/ZST_StateTransitionor_func.c187
-rw-r--r--src/policy_manager/stm/zipc/src/StateTransitionor/ZST_StateTransitionor_func.h13
-rw-r--r--src/policy_manager/stm/zipc/src/StateTransitionor/ZST_StateTransitionor_var.c56
-rw-r--r--src/policy_manager/stm/zipc/src/StateTransitionor/ZST_StateTransitionor_var.h20
-rw-r--r--src/policy_manager/stm/zipc/src/StateTransitionor/ZST_include.h29
-rw-r--r--src/policy_manager/stm/zipc/src/include/stm.h22
36 files changed, 5900 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 92ee691..b250542 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -82,6 +82,7 @@ set(LINK_LIBCXX OFF CACHE BOOL "Link against LLVMs libc++")
# Set name of PolicyManager and STM
set(PLUGIN_PM policy_manager)
set(USE_STM_NAME stub)
+#set(USE_STM_NAME zipc)
# Add STM
add_subdirectory(src/${PLUGIN_PM}/stm/${USE_STM_NAME}/src)
diff --git a/src/policy_manager/stm/zipc/src/CMakeLists.txt b/src/policy_manager/stm/zipc/src/CMakeLists.txt
new file mode 100644
index 0000000..27ca92b
--- /dev/null
+++ b/src/policy_manager/stm/zipc/src/CMakeLists.txt
@@ -0,0 +1,83 @@
+#
+# Copyright (c) 2017 TOYOTA MOTOR CORPORATION
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+include(FindPkgConfig)
+
+# We do not want a prefix for our module
+set(CMAKE_SHARED_MODULE_PREFIX "")
+
+set(TARGETS_STM libstm)
+
+set(ST_DIR StateTransitionor)
+set(ST_DIR_CMN Common)
+set(ST_DIR_AL ${ST_DIR}/AppsLayer)
+set(ST_DIR_HS ${ST_DIR}/HomeScreenLayer)
+set(ST_DIR_NHS ${ST_DIR}/NearHomeScreen)
+set(ST_DIR_OS ${ST_DIR}/OnScreenlayer)
+set(ST_DIR_RL ${ST_DIR}/RestrictionLayer)
+set(ST_DIR_RM ${ST_DIR}/RestrictionMode)
+
+add_library(${TARGETS_STM} MODULE
+ ${ST_DIR}/ZST_StateTransitionor_func.c
+ ${ST_DIR}/ZST_StateTransitionor_var.c
+ ${ST_DIR_AL}/ZAPL_AppsLayer.c
+ ${ST_DIR_AL}/ZAPL_Apps_func.c
+ ${ST_DIR_HS}/ZHSL_HomeScreen.c
+ ${ST_DIR_HS}/ZHSL_HomeScreen_func.c
+ ${ST_DIR_NHS}/ZNHL_NearHomescreen.c
+ ${ST_DIR_NHS}/ZNHL_NearHomeScreen_func.c
+ ${ST_DIR_OS}/ZOSL_OslMain.c
+ ${ST_DIR_OS}/ZOSL_OnScreen_func.c
+ ${ST_DIR_RL}/ZREL_RelMain.c
+ ${ST_DIR_RL}/ZREL_Restriction_func.c
+ ${ST_DIR_RM}/ZREM_RestrictionMode.c
+ ${ST_DIR_RM}/ZREM_RestrictionMode_func.c
+)
+
+target_include_directories(${TARGETS_STM}
+ PRIVATE
+ ./include
+ ./${ST_DIR}
+ ./${ST_DIR_AL}
+ ./${ST_DIR_HS}
+ ./${ST_DIR_NHS}
+ ./${ST_DIR_OS}
+ ./${ST_DIR_RL}
+ ./${ST_DIR_RM}
+ ./${ST_DIR_CMN}
+)
+
+target_compile_definitions(${TARGETS_STM}
+ PRIVATE
+ _GNU_SOURCE
+)
+
+target_compile_options(${TARGETS_STM}
+ PRIVATE
+ -Wall -Wextra -Wno-unused-parameter -Wno-comment)
+
+set_target_properties(${TARGETS_STM}
+ PROPERTIES
+ C_EXTENSIONS OFF
+ C_STANDARD 99
+ C_STANDARD_REQUIRED ON
+)
+
+install(
+ TARGETS ${TARGET_STM}
+ DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ COMPONENT "runtime"
+)
diff --git a/src/policy_manager/stm/zipc/src/Common/Event.h b/src/policy_manager/stm/zipc/src/Common/Event.h
new file mode 100644
index 0000000..3601b08
--- /dev/null
+++ b/src/policy_manager/stm/zipc/src/Common/Event.h
@@ -0,0 +1,6 @@
+#ifndef ZHEADER_EVENT_H
+#define ZHEADER_EVENT_H
+
+#define ZEVENT_NULL ( 0U )
+
+#endif
diff --git a/src/policy_manager/stm/zipc/src/Common/MisraCType.h b/src/policy_manager/stm/zipc/src/Common/MisraCType.h
new file mode 100644
index 0000000..5a535fb
--- /dev/null
+++ b/src/policy_manager/stm/zipc/src/Common/MisraCType.h
@@ -0,0 +1,16 @@
+#ifndef ZHEADER_MISRACTYPE_H
+#define ZHEADER_MISRACTYPE_H
+
+typedef char char_t;
+typedef signed char int8_t;
+typedef unsigned char uint8_t;
+typedef signed short int16_t;
+typedef unsigned short uint16_t;
+typedef signed int int32_t;
+typedef unsigned int uint32_t;
+typedef signed long int64_t;
+typedef unsigned long uint64_t;
+typedef float float32_t;
+typedef double float64_t;
+
+#endif
diff --git a/src/policy_manager/stm/zipc/src/Common/ZCommonInclude.h b/src/policy_manager/stm/zipc/src/Common/ZCommonInclude.h
new file mode 100644
index 0000000..6b9b84b
--- /dev/null
+++ b/src/policy_manager/stm/zipc/src/Common/ZCommonInclude.h
@@ -0,0 +1,16 @@
+#ifndef ZHEADER_ZCOMMONINCLUDE_H
+#define ZHEADER_ZCOMMONINCLUDE_H
+
+#define ZFALSE ( 0U )
+#define ZTRUE ( 1U )
+
+#define ZNULL ( 0x00 )
+
+#define ZEVENT_NONHIT ( -1 )
+
+#define ZRET_NORMAL ( 0U )
+#define ZRET_ERROR ( 1U )
+#define ZRET_NONACTIVE ( 2U )
+typedef unsigned char ZeRetType;
+
+#endif
diff --git a/src/policy_manager/stm/zipc/src/StateTransitionor/AppsLayer/ZAPL_AppsLayer.c b/src/policy_manager/stm/zipc/src/StateTransitionor/AppsLayer/ZAPL_AppsLayer.c
new file mode 100644
index 0000000..b6891e8
--- /dev/null
+++ b/src/policy_manager/stm/zipc/src/StateTransitionor/AppsLayer/ZAPL_AppsLayer.c
@@ -0,0 +1,2006 @@
+/************************************************************/
+/* ZAPL_AppsLayer.c */
+/* AppsLayer State transition model source file */
+/* ZIPC Designer Version 1.2.0 */
+/************************************************************/
+#include "../ZST_include.h"
+
+/* State management variable */
+static uint8_t ZAPL_AppsLayerState[ZAPL_APPSLAYERSTATENOMAX];
+
+static void ZAPL_AppsLayers0StateEntry( void );
+static void ZAPL_AppsLayers1StateEntry( void );
+static void ZAPL_AppsLayers0e1( void );
+static void ZAPL_AppsLayers1e0( void );
+static void ZAPL_RestrictionModeOffs0e0( void );
+static void ZAPL_RestrictionModeOffs0e2( void );
+static void ZAPL_RestrictionModeOffs0e3( void );
+static void ZAPL_RestrictionModeOffs0e6( void );
+static void ZAPL_RestrictionModeOffs0e7( void );
+static void ZAPL_RestrictionModeOffs0e13( void );
+static void ZAPL_RestrictionModeOffs0e15( void );
+static void ZAPL_RestrictionModeOffs0e18( void );
+static void ZAPL_RestrictionModeOffs1e0( void );
+static void ZAPL_RestrictionModeOffs1e8( void );
+static void ZAPL_RestrictionModeOffs2e3( void );
+static void ZAPL_RestrictionModeOffs3e2( void );
+static void ZAPL_RestrictionModeOffs4e3( void );
+static void ZAPL_RestrictionModeOffs5e3( void );
+static void ZAPL_RestrictionModeOffs6e6( void );
+static void ZAPL_RestrictionModeOffs7e7( void );
+static void ZAPL_RestrictionModeOns0e1( void );
+static void ZAPL_RestrictionModeOns0e2( void );
+static void ZAPL_RestrictionModeOns1e0( void );
+static void ZAPL_RestrictionModeOns1e3( void );
+static void ZAPL_AppsLayers0Event( void );
+static void ZAPL_RestrictionModeOffs0Event( void );
+static void ZAPL_RestrictionModeOffs1Event( void );
+static void ZAPL_RestrictionModeOffs2Event( void );
+static void ZAPL_RestrictionModeOffs3Event( void );
+static void ZAPL_RestrictionModeOffs4Event( void );
+static void ZAPL_RestrictionModeOffs5Event( void );
+static void ZAPL_RestrictionModeOffs6Event( void );
+static void ZAPL_RestrictionModeOffs7Event( void );
+static void ZAPL_AppsLayers1Event( void );
+static void ZAPL_RestrictionModeOns0Event( void );
+static void ZAPL_RestrictionModeOns1Event( void );
+
+/****************************************/
+/* State start activity function */
+/* STM : AppsLayer */
+/* State : restriction_mode_off( No 0 ) */
+/****************************************/
+static void ZAPL_AppsLayers0StateEntry( void )
+{
+ switch( ZAPL_AppsLayerState[ZAPL_APPSLAYERS0F] )
+ {
+ case ZAPL_RESTRICTIONMODEOFFS0:
+ stm_apl_start_activity_none();
+ break;
+ case ZAPL_RESTRICTIONMODEOFFS1:
+ stm_apl_start_activity_map();
+ break;
+ case ZAPL_RESTRICTIONMODEOFFS2:
+ stm_apl_start_activity_map_split();
+ break;
+ case ZAPL_RESTRICTIONMODEOFFS3:
+ stm_apl_start_activity_map_fullscreen();
+ break;
+ case ZAPL_RESTRICTIONMODEOFFS4:
+ stm_apl_start_activity_splitable_normal();
+ break;
+ case ZAPL_RESTRICTIONMODEOFFS5:
+ stm_apl_start_activity_splitable_split();
+ break;
+ case ZAPL_RESTRICTIONMODEOFFS6:
+ stm_apl_start_activity_general();
+ break;
+ case ZAPL_RESTRICTIONMODEOFFS7:
+ stm_apl_start_activity_system();
+ break;
+ default:
+ /*Not accessible to this else (default).*/
+ break;
+ }
+}
+
+/****************************************/
+/* State start activity function */
+/* STM : AppsLayer */
+/* State : restriction_mode_2_on( No 1 ) */
+/****************************************/
+static void ZAPL_AppsLayers1StateEntry( void )
+{
+ switch( ZAPL_AppsLayerState[ZAPL_APPSLAYERS1F] )
+ {
+ case ZAPL_RESTRICTIONMODEONS0:
+ stm_apl_start_activity_map();
+ break;
+ case ZAPL_RESTRICTIONMODEONS1:
+ stm_apl_start_activity_map_fullscreen();
+ break;
+ default:
+ /*Not accessible to this else (default).*/
+ break;
+ }
+}
+
+/****************************************/
+/* Action function */
+/* STM : AppsLayer */
+/* State : restriction_mode_off( No 0 ) */
+/* Event : stt_prv_layer_apps_not_sys_nml( No 1 ) */
+/****************************************/
+static void ZAPL_AppsLayers0e1( void )
+{
+ ZAPL_AppsLayerState[ZAPL_APPSLAYER] = ( uint8_t )ZAPL_APPSLAYERS1;
+ ZAPL_AppsLayerState[ZAPL_APPSLAYERS1F] = ( uint8_t )ZAPL_RESTRICTIONMODEONS0;
+ ZAPL_AppsLayers1StateEntry();
+}
+
+/****************************************/
+/* Action function */
+/* STM : AppsLayer */
+/* State : restriction_mode_2_on( No 1 ) */
+/* Event : stt_restriction_mode_off( No 0 ) */
+/****************************************/
+static void ZAPL_AppsLayers1e0( void )
+{
+ ZAPL_AppsLayerState[ZAPL_APPSLAYER] = ( uint8_t )ZAPL_APPSLAYERS0;
+ ZAPL_AppsLayers0StateEntry();
+}
+
+/****************************************/
+/* Action function */
+/* STM : RestrictionModeOff */
+/* State : none( No 0 ) */
+/* Event : ara_normal( No 0 ) */
+/****************************************/
+static void ZAPL_RestrictionModeOffs0e0( void )
+{
+ ZAPL_AppsLayerState[ZAPL_APPSLAYERS0F] = ( uint8_t )ZAPL_RESTRICTIONMODEOFFS1;
+ stm_apl_start_activity_map();
+}
+
+/****************************************/
+/* Action function */
+/* STM : RestrictionModeOff */
+/* State : none( No 0 ) */
+/* Event : ara_fullscreen( No 2 ) */
+/****************************************/
+static void ZAPL_RestrictionModeOffs0e2( void )
+{
+ ZAPL_AppsLayerState[ZAPL_APPSLAYERS0F] = ( uint8_t )ZAPL_RESTRICTIONMODEOFFS3;
+ stm_apl_start_activity_map_fullscreen();
+}
+
+/****************************************/
+/* Action function */
+/* STM : RestrictionModeOff */
+/* State : none( No 0 ) */
+/* Event : ara_normal( No 3 ) */
+/****************************************/
+static void ZAPL_RestrictionModeOffs0e3( void )
+{
+ ZAPL_AppsLayerState[ZAPL_APPSLAYERS0F] = ( uint8_t )ZAPL_RESTRICTIONMODEOFFS4;
+ stm_apl_start_activity_splitable_normal();
+}
+
+/****************************************/
+/* Action function */
+/* STM : RestrictionModeOff */
+/* State : none( No 0 ) */
+/* Event : ara_normal( No 6 ) */
+/****************************************/
+static void ZAPL_RestrictionModeOffs0e6( void )
+{
+ ZAPL_AppsLayerState[ZAPL_APPSLAYERS0F] = ( uint8_t )ZAPL_RESTRICTIONMODEOFFS6;
+ stm_apl_start_activity_general();
+}
+
+/****************************************/
+/* Action function */
+/* STM : RestrictionModeOff */
+/* State : none( No 0 ) */
+/* Event : ara_normal( No 7 ) */
+/****************************************/
+static void ZAPL_RestrictionModeOffs0e7( void )
+{
+ ZAPL_AppsLayerState[ZAPL_APPSLAYERS0F] = ( uint8_t )ZAPL_RESTRICTIONMODEOFFS7;
+ stm_apl_start_activity_system();
+}
+
+/****************************************/
+/* Action function */
+/* STM : RestrictionModeOff */
+/* State : none( No 0 ) */
+/* Event : stt_prv_layer_apps_none( No 13 ) */
+/****************************************/
+static void ZAPL_RestrictionModeOffs0e13( void )
+{
+ stm_apl_start_activity_none();
+}
+
+/****************************************/
+/* Action function */
+/* STM : RestrictionModeOff */
+/* State : none( No 0 ) */
+/* Event : stt_prv_layer_apps_map_spl( No 15 ) */
+/****************************************/
+static void ZAPL_RestrictionModeOffs0e15( void )
+{
+ ZAPL_AppsLayerState[ZAPL_APPSLAYERS0F] = ( uint8_t )ZAPL_RESTRICTIONMODEOFFS2;
+ stm_apl_start_activity_map_split();
+}
+
+/****************************************/
+/* Action function */
+/* STM : RestrictionModeOff */
+/* State : none( No 0 ) */
+/* Event : stt_prv_layer_apps_spl_spl( No 18 ) */
+/****************************************/
+static void ZAPL_RestrictionModeOffs0e18( void )
+{
+ ZAPL_AppsLayerState[ZAPL_APPSLAYERS0F] = ( uint8_t )ZAPL_RESTRICTIONMODEOFFS5;
+ stm_apl_start_activity_splitable_split();
+}
+
+/****************************************/
+/* Action function */
+/* STM : RestrictionModeOff */
+/* State : map( No 1 ) */
+/* Event : ara_normal( No 0 ) */
+/****************************************/
+static void ZAPL_RestrictionModeOffs1e0( void )
+{
+ stm_apl_start_activity_map();
+}
+
+/****************************************/
+/* Action function */
+/* STM : RestrictionModeOff */
+/* State : map( No 1 ) */
+/* Event : ara_fullscreen( No 8 ) */
+/****************************************/
+static void ZAPL_RestrictionModeOffs1e8( void )
+{
+ ZAPL_AppsLayerState[ZAPL_APPSLAYERS0F] = ( uint8_t )ZAPL_RESTRICTIONMODEOFFS0;
+ stm_apl_start_activity_none();
+}
+
+/****************************************/
+/* Action function */
+/* STM : RestrictionModeOff */
+/* State : map_split( No 2 ) */
+/* Event : ara_normal( No 3 ) */
+/****************************************/
+static void ZAPL_RestrictionModeOffs2e3( void )
+{
+ stm_apl_start_activity_map_split();
+}
+
+/****************************************/
+/* Action function */
+/* STM : RestrictionModeOff */
+/* State : map_fullscreen( No 3 ) */
+/* Event : ara_fullscreen( No 2 ) */
+/****************************************/
+static void ZAPL_RestrictionModeOffs3e2( void )
+{
+ stm_apl_start_activity_map_fullscreen();
+}
+
+/****************************************/
+/* Action function */
+/* STM : RestrictionModeOff */
+/* State : splitable_normal( No 4 ) */
+/* Event : ara_normal( No 3 ) */
+/****************************************/
+static void ZAPL_RestrictionModeOffs4e3( void )
+{
+ stm_apl_start_activity_splitable_normal();
+}
+
+/****************************************/
+/* Action function */
+/* STM : RestrictionModeOff */
+/* State : splitable_split( No 5 ) */
+/* Event : ara_normal( No 3 ) */
+/****************************************/
+static void ZAPL_RestrictionModeOffs5e3( void )
+{
+ stm_apl_start_activity_splitable_split();
+}
+
+/****************************************/
+/* Action function */
+/* STM : RestrictionModeOff */
+/* State : general( No 6 ) */
+/* Event : ara_normal( No 6 ) */
+/****************************************/
+static void ZAPL_RestrictionModeOffs6e6( void )
+{
+ stm_apl_start_activity_general();
+}
+
+/****************************************/
+/* Action function */
+/* STM : RestrictionModeOff */
+/* State : system( No 7 ) */
+/* Event : ara_normal( No 7 ) */
+/****************************************/
+static void ZAPL_RestrictionModeOffs7e7( void )
+{
+ stm_apl_start_activity_system();
+}
+
+/****************************************/
+/* Action function */
+/* STM : RestrictionModeOn */
+/* State : map( No 0 ) */
+/* Event : ara_fullscreen( No 1 ) */
+/****************************************/
+static void ZAPL_RestrictionModeOns0e1( void )
+{
+ ZAPL_AppsLayerState[ZAPL_APPSLAYERS1F] = ( uint8_t )ZAPL_RESTRICTIONMODEONS1;
+ stm_apl_start_activity_map_fullscreen();
+}
+
+/****************************************/
+/* Action function */
+/* STM : RestrictionModeOn */
+/* State : map( No 0 ) */
+/* Event : stt_prv_layer_apps_map_nml( No 2 ) */
+/****************************************/
+static void ZAPL_RestrictionModeOns0e2( void )
+{
+ stm_apl_start_activity_map();
+}
+
+/****************************************/
+/* Action function */
+/* STM : RestrictionModeOn */
+/* State : map_fullscreen( No 1 ) */
+/* Event : ara_normal( No 0 ) */
+/****************************************/
+static void ZAPL_RestrictionModeOns1e0( void )
+{
+ ZAPL_AppsLayerState[ZAPL_APPSLAYERS1F] = ( uint8_t )ZAPL_RESTRICTIONMODEONS0;
+ stm_apl_start_activity_map();
+}
+
+/****************************************/
+/* Action function */
+/* STM : RestrictionModeOn */
+/* State : map_fullscreen( No 1 ) */
+/* Event : stt_prv_layer_apps_map_fll( No 3 ) */
+/****************************************/
+static void ZAPL_RestrictionModeOns1e3( void )
+{
+ stm_apl_start_activity_map_fullscreen();
+}
+
+/****************************************/
+/* Event appraisal function */
+/* STM : AppsLayer */
+/* State : restriction_mode_off( No 0 ) */
+/****************************************/
+static void ZAPL_AppsLayers0Event( void )
+{
+ /*stt_restriction_mode_2_on*/
+ if( g_stm_crr_state.mode[StmModeNoRestrictionMode].state == StmRestrictionModeSttNo2On )
+ {
+ stm_apl_event_restriction_mode_2_on();
+ /*stt_map_is_activated*/
+ if( g_stm_map_is_activated == STM_TRUE )
+ {
+ /*stt_prv_layer_apps_not_sys_nml*/
+ if( g_stm_prv_state.layer[StmLayerNoApps].state != StmLayoutNoSysNml )
+ {
+ ZAPL_AppsLayers0e1();
+ }
+ 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.*/
+ }
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+}
+
+/****************************************/
+/* Event appraisal function */
+/* STM : RestrictionModeOff */
+/* State : none( No 0 ) */
+/****************************************/
+static void ZAPL_RestrictionModeOffs0Event( void )
+{
+ /*stt_restriction_mode_off*/
+ if( g_stm_crr_state.mode[StmModeNoRestrictionMode].state == StmRestrictionModeSttNoOff )
+ {
+ /*evt_activate*/
+ if( g_stm_event == StmEvtNoActivate )
+ {
+ /*ctg_map*/
+ if( g_stm_category == StmCtgNoMap )
+ {
+ /*ara_normal*/
+ if( g_stm_area == StmAreaNoNormal )
+ {
+ ZAPL_RestrictionModeOffs0e0();
+ }
+ /*ara_fullscreen*/
+ else if( g_stm_area == StmAreaNoFullscreen )
+ {
+ ZAPL_RestrictionModeOffs0e2();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ctg_splitable*/
+ else if( g_stm_category == StmCtgNoSplitable )
+ {
+ /*ara_normal*/
+ if( g_stm_area == StmAreaNoNormal )
+ {
+ ZAPL_RestrictionModeOffs0e3();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ctg_general*/
+ else if( g_stm_category == StmCtgNoGeneral )
+ {
+ /*ara_normal*/
+ if( g_stm_area == StmAreaNoNormal )
+ {
+ ZAPL_RestrictionModeOffs0e6();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ctg_system*/
+ else if( g_stm_category == StmCtgNoSystem )
+ {
+ /*ara_normal*/
+ if( g_stm_area == StmAreaNoNormal )
+ {
+ ZAPL_RestrictionModeOffs0e7();
+ }
+ 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.*/
+ }
+ }
+ /*evt_undo*/
+ else if( g_stm_event == StmEvtNoUndo )
+ {
+ /*stt_prv_layer_apps_none*/
+ if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoNone )
+ {
+ ZAPL_RestrictionModeOffs0e13();
+ }
+ /*stt_prv_layer_apps_map_nml*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoMapNml )
+ {
+ ZAPL_RestrictionModeOffs0e0();
+ }
+ /*stt_prv_layer_apps_map_spl*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoMapSpl )
+ {
+ ZAPL_RestrictionModeOffs0e15();
+ }
+ /*stt_prv_layer_apps_map_fll*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoMapFll )
+ {
+ ZAPL_RestrictionModeOffs0e2();
+ }
+ /*stt_prv_layer_apps_spl_nml*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoSplNml )
+ {
+ ZAPL_RestrictionModeOffs0e3();
+ }
+ /*stt_prv_layer_apps_spl_spl*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoSplSpl )
+ {
+ ZAPL_RestrictionModeOffs0e18();
+ }
+ /*stt_prv_layer_apps_gen_nml*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoGenNml )
+ {
+ ZAPL_RestrictionModeOffs0e6();
+ }
+ /*stt_prv_layer_apps_sys_nml*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoSysNml )
+ {
+ ZAPL_RestrictionModeOffs0e7();
+ }
+ 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.*/
+ }
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+}
+
+/****************************************/
+/* Event appraisal function */
+/* STM : RestrictionModeOff */
+/* State : map( No 1 ) */
+/****************************************/
+static void ZAPL_RestrictionModeOffs1Event( void )
+{
+ /*stt_restriction_mode_off*/
+ if( g_stm_crr_state.mode[StmModeNoRestrictionMode].state == StmRestrictionModeSttNoOff )
+ {
+ /*evt_activate*/
+ if( g_stm_event == StmEvtNoActivate )
+ {
+ /*ctg_map*/
+ if( g_stm_category == StmCtgNoMap )
+ {
+ /*ara_normal*/
+ if( g_stm_area == StmAreaNoNormal )
+ {
+ ZAPL_RestrictionModeOffs1e0();
+ }
+ /*ara_fullscreen*/
+ else if( g_stm_area == StmAreaNoFullscreen )
+ {
+ ZAPL_RestrictionModeOffs0e2();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ctg_splitable*/
+ else if( g_stm_category == StmCtgNoSplitable )
+ {
+ /*ara_normal*/
+ if( g_stm_area == StmAreaNoNormal )
+ {
+ ZAPL_RestrictionModeOffs0e15();
+ }
+ /*ara_split_sub*/
+ else if( g_stm_area == StmAreaNoSplitSub )
+ {
+ ZAPL_RestrictionModeOffs0e15();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ctg_general*/
+ else if( g_stm_category == StmCtgNoGeneral )
+ {
+ /*ara_normal*/
+ if( g_stm_area == StmAreaNoNormal )
+ {
+ ZAPL_RestrictionModeOffs0e6();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ctg_system*/
+ else if( g_stm_category == StmCtgNoSystem )
+ {
+ /*ara_normal*/
+ if( g_stm_area == StmAreaNoNormal )
+ {
+ ZAPL_RestrictionModeOffs0e7();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ctg_homescreen*/
+ else if( g_stm_category == StmCtgNoHomescreen )
+ {
+ /*ara_fullscreen*/
+ if( g_stm_area == StmAreaNoFullscreen )
+ {
+ ZAPL_RestrictionModeOffs1e8();
+ }
+ 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.*/
+ }
+ }
+ /*evt_deactivate*/
+ else if( g_stm_event == StmEvtNoDeactivate )
+ {
+ /*ctg_map*/
+ if( g_stm_category == StmCtgNoMap )
+ {
+ ZAPL_RestrictionModeOffs1e8();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*evt_undo*/
+ else if( g_stm_event == StmEvtNoUndo )
+ {
+ /*stt_prv_layer_apps_none*/
+ if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoNone )
+ {
+ ZAPL_RestrictionModeOffs1e8();
+ }
+ /*stt_prv_layer_apps_map_nml*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoMapNml )
+ {
+ ZAPL_RestrictionModeOffs1e0();
+ }
+ /*stt_prv_layer_apps_map_spl*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoMapSpl )
+ {
+ ZAPL_RestrictionModeOffs0e15();
+ }
+ /*stt_prv_layer_apps_map_fll*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoMapFll )
+ {
+ ZAPL_RestrictionModeOffs0e2();
+ }
+ /*stt_prv_layer_apps_spl_nml*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoSplNml )
+ {
+ ZAPL_RestrictionModeOffs0e3();
+ }
+ /*stt_prv_layer_apps_spl_spl*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoSplSpl )
+ {
+ ZAPL_RestrictionModeOffs0e18();
+ }
+ /*stt_prv_layer_apps_gen_nml*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoGenNml )
+ {
+ ZAPL_RestrictionModeOffs0e6();
+ }
+ /*stt_prv_layer_apps_sys_nml*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoSysNml )
+ {
+ ZAPL_RestrictionModeOffs0e7();
+ }
+ 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.*/
+ }
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+}
+
+/****************************************/
+/* Event appraisal function */
+/* STM : RestrictionModeOff */
+/* State : map_split( No 2 ) */
+/****************************************/
+static void ZAPL_RestrictionModeOffs2Event( void )
+{
+ /*stt_restriction_mode_off*/
+ if( g_stm_crr_state.mode[StmModeNoRestrictionMode].state == StmRestrictionModeSttNoOff )
+ {
+ /*evt_activate*/
+ if( g_stm_event == StmEvtNoActivate )
+ {
+ /*ctg_map*/
+ if( g_stm_category == StmCtgNoMap )
+ {
+ /*ara_normal*/
+ if( g_stm_area == StmAreaNoNormal )
+ {
+ ZAPL_RestrictionModeOffs0e0();
+ }
+ /*ara_fullscreen*/
+ else if( g_stm_area == StmAreaNoFullscreen )
+ {
+ ZAPL_RestrictionModeOffs0e2();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ctg_splitable*/
+ else if( g_stm_category == StmCtgNoSplitable )
+ {
+ /*ara_normal*/
+ if( g_stm_area == StmAreaNoNormal )
+ {
+ ZAPL_RestrictionModeOffs2e3();
+ }
+ /*ara_split_sub*/
+ else if( g_stm_area == StmAreaNoSplitSub )
+ {
+ ZAPL_RestrictionModeOffs2e3();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ctg_general*/
+ else if( g_stm_category == StmCtgNoGeneral )
+ {
+ /*ara_normal*/
+ if( g_stm_area == StmAreaNoNormal )
+ {
+ ZAPL_RestrictionModeOffs0e6();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ctg_system*/
+ else if( g_stm_category == StmCtgNoSystem )
+ {
+ /*ara_normal*/
+ if( g_stm_area == StmAreaNoNormal )
+ {
+ ZAPL_RestrictionModeOffs0e7();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ctg_homescreen*/
+ else if( g_stm_category == StmCtgNoHomescreen )
+ {
+ /*ara_fullscreen*/
+ if( g_stm_area == StmAreaNoFullscreen )
+ {
+ ZAPL_RestrictionModeOffs1e8();
+ }
+ 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.*/
+ }
+ }
+ /*evt_deactivate*/
+ else if( g_stm_event == StmEvtNoDeactivate )
+ {
+ /*ctg_map*/
+ if( g_stm_category == StmCtgNoMap )
+ {
+ ZAPL_RestrictionModeOffs0e3();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*evt_undo*/
+ else if( g_stm_event == StmEvtNoUndo )
+ {
+ /*stt_prv_layer_apps_none*/
+ if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoNone )
+ {
+ ZAPL_RestrictionModeOffs1e8();
+ }
+ /*stt_prv_layer_apps_map_nml*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoMapNml )
+ {
+ ZAPL_RestrictionModeOffs0e0();
+ }
+ /*stt_prv_layer_apps_map_spl*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoMapSpl )
+ {
+ ZAPL_RestrictionModeOffs2e3();
+ }
+ /*stt_prv_layer_apps_map_fll*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoMapFll )
+ {
+ ZAPL_RestrictionModeOffs0e2();
+ }
+ /*stt_prv_layer_apps_spl_nml*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoSplNml )
+ {
+ ZAPL_RestrictionModeOffs0e3();
+ }
+ /*stt_prv_layer_apps_spl_spl*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoSplSpl )
+ {
+ ZAPL_RestrictionModeOffs0e18();
+ }
+ /*stt_prv_layer_apps_gen_nml*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoGenNml )
+ {
+ ZAPL_RestrictionModeOffs0e6();
+ }
+ /*stt_prv_layer_apps_sys_nml*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoSysNml )
+ {
+ ZAPL_RestrictionModeOffs0e7();
+ }
+ 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.*/
+ }
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+}
+
+/****************************************/
+/* Event appraisal function */
+/* STM : RestrictionModeOff */
+/* State : map_fullscreen( No 3 ) */
+/****************************************/
+static void ZAPL_RestrictionModeOffs3Event( void )
+{
+ /*stt_restriction_mode_off*/
+ if( g_stm_crr_state.mode[StmModeNoRestrictionMode].state == StmRestrictionModeSttNoOff )
+ {
+ /*evt_activate*/
+ if( g_stm_event == StmEvtNoActivate )
+ {
+ /*ctg_map*/
+ if( g_stm_category == StmCtgNoMap )
+ {
+ /*ara_normal*/
+ if( g_stm_area == StmAreaNoNormal )
+ {
+ ZAPL_RestrictionModeOffs0e0();
+ }
+ /*ara_fullscreen*/
+ else if( g_stm_area == StmAreaNoFullscreen )
+ {
+ ZAPL_RestrictionModeOffs3e2();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ctg_splitable*/
+ else if( g_stm_category == StmCtgNoSplitable )
+ {
+ /*ara_normal*/
+ if( g_stm_area == StmAreaNoNormal )
+ {
+ ZAPL_RestrictionModeOffs0e15();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ctg_general*/
+ else if( g_stm_category == StmCtgNoGeneral )
+ {
+ /*ara_normal*/
+ if( g_stm_area == StmAreaNoNormal )
+ {
+ ZAPL_RestrictionModeOffs0e6();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ctg_system*/
+ else if( g_stm_category == StmCtgNoSystem )
+ {
+ /*ara_normal*/
+ if( g_stm_area == StmAreaNoNormal )
+ {
+ ZAPL_RestrictionModeOffs0e7();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ctg_homescreen*/
+ else if( g_stm_category == StmCtgNoHomescreen )
+ {
+ /*ara_fullscreen*/
+ if( g_stm_area == StmAreaNoFullscreen )
+ {
+ ZAPL_RestrictionModeOffs1e8();
+ }
+ 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.*/
+ }
+ }
+ /*evt_deactivate*/
+ else if( g_stm_event == StmEvtNoDeactivate )
+ {
+ /*ctg_map*/
+ if( g_stm_category == StmCtgNoMap )
+ {
+ ZAPL_RestrictionModeOffs1e8();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*evt_undo*/
+ else if( g_stm_event == StmEvtNoUndo )
+ {
+ /*stt_prv_layer_apps_none*/
+ if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoNone )
+ {
+ ZAPL_RestrictionModeOffs1e8();
+ }
+ /*stt_prv_layer_apps_map_nml*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoMapNml )
+ {
+ ZAPL_RestrictionModeOffs0e0();
+ }
+ /*stt_prv_layer_apps_map_spl*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoMapSpl )
+ {
+ ZAPL_RestrictionModeOffs0e15();
+ }
+ /*stt_prv_layer_apps_map_fll*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoMapFll )
+ {
+ ZAPL_RestrictionModeOffs3e2();
+ }
+ /*stt_prv_layer_apps_spl_nml*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoSplNml )
+ {
+ ZAPL_RestrictionModeOffs0e3();
+ }
+ /*stt_prv_layer_apps_spl_spl*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoSplSpl )
+ {
+ ZAPL_RestrictionModeOffs0e18();
+ }
+ /*stt_prv_layer_apps_gen_nml*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoGenNml )
+ {
+ ZAPL_RestrictionModeOffs0e6();
+ }
+ /*stt_prv_layer_apps_sys_nml*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoSysNml )
+ {
+ ZAPL_RestrictionModeOffs0e7();
+ }
+ 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.*/
+ }
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+}
+
+/****************************************/
+/* Event appraisal function */
+/* STM : RestrictionModeOff */
+/* State : splitable_normal( No 4 ) */
+/****************************************/
+static void ZAPL_RestrictionModeOffs4Event( void )
+{
+ /*stt_restriction_mode_off*/
+ if( g_stm_crr_state.mode[StmModeNoRestrictionMode].state == StmRestrictionModeSttNoOff )
+ {
+ /*evt_activate*/
+ if( g_stm_event == StmEvtNoActivate )
+ {
+ /*ctg_map*/
+ if( g_stm_category == StmCtgNoMap )
+ {
+ /*ara_normal*/
+ if( g_stm_area == StmAreaNoNormal )
+ {
+ ZAPL_RestrictionModeOffs0e15();
+ }
+ /*ara_split_main*/
+ else if( g_stm_area == StmAreaNoSplitMain )
+ {
+ ZAPL_RestrictionModeOffs0e15();
+ }
+ /*ara_fullscreen*/
+ else if( g_stm_area == StmAreaNoFullscreen )
+ {
+ ZAPL_RestrictionModeOffs0e2();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ctg_splitable*/
+ else if( g_stm_category == StmCtgNoSplitable )
+ {
+ /*ara_normal*/
+ if( g_stm_area == StmAreaNoNormal )
+ {
+ ZAPL_RestrictionModeOffs4e3();
+ }
+ /*ara_split_main*/
+ else if( g_stm_area == StmAreaNoSplitMain )
+ {
+ ZAPL_RestrictionModeOffs0e18();
+ }
+ /*ara_split_sub*/
+ else if( g_stm_area == StmAreaNoSplitSub )
+ {
+ ZAPL_RestrictionModeOffs0e18();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ctg_general*/
+ else if( g_stm_category == StmCtgNoGeneral )
+ {
+ /*ara_normal*/
+ if( g_stm_area == StmAreaNoNormal )
+ {
+ ZAPL_RestrictionModeOffs0e6();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ctg_system*/
+ else if( g_stm_category == StmCtgNoSystem )
+ {
+ /*ara_normal*/
+ if( g_stm_area == StmAreaNoNormal )
+ {
+ ZAPL_RestrictionModeOffs0e7();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ctg_homescreen*/
+ else if( g_stm_category == StmCtgNoHomescreen )
+ {
+ /*ara_fullscreen*/
+ if( g_stm_area == StmAreaNoFullscreen )
+ {
+ ZAPL_RestrictionModeOffs1e8();
+ }
+ 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.*/
+ }
+ }
+ /*evt_deactivate*/
+ else if( g_stm_event == StmEvtNoDeactivate )
+ {
+ /*ctg_splitable*/
+ if( g_stm_category == StmCtgNoSplitable )
+ {
+ ZAPL_RestrictionModeOffs1e8();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*evt_undo*/
+ else if( g_stm_event == StmEvtNoUndo )
+ {
+ /*stt_prv_layer_apps_none*/
+ if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoNone )
+ {
+ ZAPL_RestrictionModeOffs1e8();
+ }
+ /*stt_prv_layer_apps_map_nml*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoMapNml )
+ {
+ ZAPL_RestrictionModeOffs0e0();
+ }
+ /*stt_prv_layer_apps_map_spl*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoMapSpl )
+ {
+ ZAPL_RestrictionModeOffs0e15();
+ }
+ /*stt_prv_layer_apps_map_fll*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoMapFll )
+ {
+ ZAPL_RestrictionModeOffs0e2();
+ }
+ /*stt_prv_layer_apps_spl_nml*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoSplNml )
+ {
+ ZAPL_RestrictionModeOffs4e3();
+ }
+ /*stt_prv_layer_apps_spl_spl*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoSplSpl )
+ {
+ ZAPL_RestrictionModeOffs0e18();
+ }
+ /*stt_prv_layer_apps_gen_nml*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoGenNml )
+ {
+ ZAPL_RestrictionModeOffs0e6();
+ }
+ /*stt_prv_layer_apps_sys_nml*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoSysNml )
+ {
+ ZAPL_RestrictionModeOffs0e7();
+ }
+ 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.*/
+ }
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+}
+
+/****************************************/
+/* Event appraisal function */
+/* STM : RestrictionModeOff */
+/* State : splitable_split( No 5 ) */
+/****************************************/
+static void ZAPL_RestrictionModeOffs5Event( void )
+{
+ /*stt_restriction_mode_off*/
+ if( g_stm_crr_state.mode[StmModeNoRestrictionMode].state == StmRestrictionModeSttNoOff )
+ {
+ /*evt_activate*/
+ if( g_stm_event == StmEvtNoActivate )
+ {
+ /*ctg_map*/
+ if( g_stm_category == StmCtgNoMap )
+ {
+ /*ara_normal*/
+ if( g_stm_area == StmAreaNoNormal )
+ {
+ ZAPL_RestrictionModeOffs0e15();
+ }
+ /*ara_split_main*/
+ else if( g_stm_area == StmAreaNoSplitMain )
+ {
+ ZAPL_RestrictionModeOffs0e15();
+ }
+ /*ara_fullscreen*/
+ else if( g_stm_area == StmAreaNoFullscreen )
+ {
+ ZAPL_RestrictionModeOffs0e2();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ctg_splitable*/
+ else if( g_stm_category == StmCtgNoSplitable )
+ {
+ /*ara_normal*/
+ if( g_stm_area == StmAreaNoNormal )
+ {
+ ZAPL_RestrictionModeOffs5e3();
+ }
+ /*ara_split_main*/
+ else if( g_stm_area == StmAreaNoSplitMain )
+ {
+ ZAPL_RestrictionModeOffs5e3();
+ }
+ /*ara_split_sub*/
+ else if( g_stm_area == StmAreaNoSplitSub )
+ {
+ ZAPL_RestrictionModeOffs5e3();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ctg_general*/
+ else if( g_stm_category == StmCtgNoGeneral )
+ {
+ /*ara_normal*/
+ if( g_stm_area == StmAreaNoNormal )
+ {
+ ZAPL_RestrictionModeOffs0e6();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ctg_system*/
+ else if( g_stm_category == StmCtgNoSystem )
+ {
+ /*ara_normal*/
+ if( g_stm_area == StmAreaNoNormal )
+ {
+ ZAPL_RestrictionModeOffs0e7();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ctg_homescreen*/
+ else if( g_stm_category == StmCtgNoHomescreen )
+ {
+ /*ara_fullscreen*/
+ if( g_stm_area == StmAreaNoFullscreen )
+ {
+ ZAPL_RestrictionModeOffs1e8();
+ }
+ 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.*/
+ }
+ }
+ /*evt_deactivate*/
+ else if( g_stm_event == StmEvtNoDeactivate )
+ {
+ /*ctg_splitable*/
+ if( g_stm_category == StmCtgNoSplitable )
+ {
+ ZAPL_RestrictionModeOffs0e3();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*evt_undo*/
+ else if( g_stm_event == StmEvtNoUndo )
+ {
+ /*stt_prv_layer_apps_none*/
+ if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoNone )
+ {
+ ZAPL_RestrictionModeOffs1e8();
+ }
+ /*stt_prv_layer_apps_map_nml*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoMapNml )
+ {
+ ZAPL_RestrictionModeOffs0e0();
+ }
+ /*stt_prv_layer_apps_map_spl*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoMapSpl )
+ {
+ ZAPL_RestrictionModeOffs0e15();
+ }
+ /*stt_prv_layer_apps_map_fll*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoMapFll )
+ {
+ ZAPL_RestrictionModeOffs0e2();
+ }
+ /*stt_prv_layer_apps_spl_nml*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoSplNml )
+ {
+ ZAPL_RestrictionModeOffs0e3();
+ }
+ /*stt_prv_layer_apps_spl_spl*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoSplSpl )
+ {
+ ZAPL_RestrictionModeOffs5e3();
+ }
+ /*stt_prv_layer_apps_gen_nml*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoGenNml )
+ {
+ ZAPL_RestrictionModeOffs0e6();
+ }
+ /*stt_prv_layer_apps_sys_nml*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoSysNml )
+ {
+ ZAPL_RestrictionModeOffs0e7();
+ }
+ 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.*/
+ }
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+}
+
+/****************************************/
+/* Event appraisal function */
+/* STM : RestrictionModeOff */
+/* State : general( No 6 ) */
+/****************************************/
+static void ZAPL_RestrictionModeOffs6Event( void )
+{
+ /*stt_restriction_mode_off*/
+ if( g_stm_crr_state.mode[StmModeNoRestrictionMode].state == StmRestrictionModeSttNoOff )
+ {
+ /*evt_activate*/
+ if( g_stm_event == StmEvtNoActivate )
+ {
+ /*ctg_map*/
+ if( g_stm_category == StmCtgNoMap )
+ {
+ /*ara_normal*/
+ if( g_stm_area == StmAreaNoNormal )
+ {
+ ZAPL_RestrictionModeOffs0e0();
+ }
+ /*ara_fullscreen*/
+ else if( g_stm_area == StmAreaNoFullscreen )
+ {
+ ZAPL_RestrictionModeOffs0e2();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ctg_splitable*/
+ else if( g_stm_category == StmCtgNoSplitable )
+ {
+ /*ara_normal*/
+ if( g_stm_area == StmAreaNoNormal )
+ {
+ ZAPL_RestrictionModeOffs0e3();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ctg_general*/
+ else if( g_stm_category == StmCtgNoGeneral )
+ {
+ /*ara_normal*/
+ if( g_stm_area == StmAreaNoNormal )
+ {
+ ZAPL_RestrictionModeOffs6e6();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ctg_system*/
+ else if( g_stm_category == StmCtgNoSystem )
+ {
+ /*ara_normal*/
+ if( g_stm_area == StmAreaNoNormal )
+ {
+ ZAPL_RestrictionModeOffs0e7();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ctg_homescreen*/
+ else if( g_stm_category == StmCtgNoHomescreen )
+ {
+ /*ara_fullscreen*/
+ if( g_stm_area == StmAreaNoFullscreen )
+ {
+ ZAPL_RestrictionModeOffs1e8();
+ }
+ 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.*/
+ }
+ }
+ /*evt_deactivate*/
+ else if( g_stm_event == StmEvtNoDeactivate )
+ {
+ /*ctg_general*/
+ if( g_stm_category == StmCtgNoGeneral )
+ {
+ ZAPL_RestrictionModeOffs1e8();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*evt_undo*/
+ else if( g_stm_event == StmEvtNoUndo )
+ {
+ /*stt_prv_layer_apps_none*/
+ if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoNone )
+ {
+ ZAPL_RestrictionModeOffs1e8();
+ }
+ /*stt_prv_layer_apps_map_nml*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoMapNml )
+ {
+ ZAPL_RestrictionModeOffs0e0();
+ }
+ /*stt_prv_layer_apps_map_spl*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoMapSpl )
+ {
+ ZAPL_RestrictionModeOffs0e15();
+ }
+ /*stt_prv_layer_apps_map_fll*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoMapFll )
+ {
+ ZAPL_RestrictionModeOffs0e2();
+ }
+ /*stt_prv_layer_apps_spl_nml*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoSplNml )
+ {
+ ZAPL_RestrictionModeOffs0e3();
+ }
+ /*stt_prv_layer_apps_spl_spl*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoSplSpl )
+ {
+ ZAPL_RestrictionModeOffs0e18();
+ }
+ /*stt_prv_layer_apps_gen_nml*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoGenNml )
+ {
+ ZAPL_RestrictionModeOffs6e6();
+ }
+ /*stt_prv_layer_apps_sys_nml*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoSysNml )
+ {
+ ZAPL_RestrictionModeOffs0e7();
+ }
+ 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.*/
+ }
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+}
+
+/****************************************/
+/* Event appraisal function */
+/* STM : RestrictionModeOff */
+/* State : system( No 7 ) */
+/****************************************/
+static void ZAPL_RestrictionModeOffs7Event( void )
+{
+ /*stt_restriction_mode_off*/
+ if( g_stm_crr_state.mode[StmModeNoRestrictionMode].state == StmRestrictionModeSttNoOff )
+ {
+ /*evt_activate*/
+ if( g_stm_event == StmEvtNoActivate )
+ {
+ /*ctg_map*/
+ if( g_stm_category == StmCtgNoMap )
+ {
+ /*ara_normal*/
+ if( g_stm_area == StmAreaNoNormal )
+ {
+ ZAPL_RestrictionModeOffs0e0();
+ }
+ /*ara_fullscreen*/
+ else if( g_stm_area == StmAreaNoFullscreen )
+ {
+ ZAPL_RestrictionModeOffs0e2();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ctg_splitable*/
+ else if( g_stm_category == StmCtgNoSplitable )
+ {
+ /*ara_normal*/
+ if( g_stm_area == StmAreaNoNormal )
+ {
+ ZAPL_RestrictionModeOffs0e3();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ctg_general*/
+ else if( g_stm_category == StmCtgNoGeneral )
+ {
+ /*ara_normal*/
+ if( g_stm_area == StmAreaNoNormal )
+ {
+ ZAPL_RestrictionModeOffs0e6();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ctg_system*/
+ else if( g_stm_category == StmCtgNoSystem )
+ {
+ /*ara_normal*/
+ if( g_stm_area == StmAreaNoNormal )
+ {
+ ZAPL_RestrictionModeOffs7e7();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ctg_homescreen*/
+ else if( g_stm_category == StmCtgNoHomescreen )
+ {
+ /*ara_fullscreen*/
+ if( g_stm_area == StmAreaNoFullscreen )
+ {
+ ZAPL_RestrictionModeOffs1e8();
+ }
+ 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.*/
+ }
+ }
+ /*evt_deactivate*/
+ else if( g_stm_event == StmEvtNoDeactivate )
+ {
+ /*ctg_system*/
+ if( g_stm_category == StmCtgNoSystem )
+ {
+ ZAPL_RestrictionModeOffs1e8();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*evt_undo*/
+ else if( g_stm_event == StmEvtNoUndo )
+ {
+ /*stt_prv_layer_apps_none*/
+ if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoNone )
+ {
+ ZAPL_RestrictionModeOffs1e8();
+ }
+ /*stt_prv_layer_apps_map_nml*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoMapNml )
+ {
+ ZAPL_RestrictionModeOffs0e0();
+ }
+ /*stt_prv_layer_apps_map_spl*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoMapSpl )
+ {
+ ZAPL_RestrictionModeOffs0e15();
+ }
+ /*stt_prv_layer_apps_map_fll*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoMapFll )
+ {
+ ZAPL_RestrictionModeOffs0e2();
+ }
+ /*stt_prv_layer_apps_spl_nml*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoSplNml )
+ {
+ ZAPL_RestrictionModeOffs0e3();
+ }
+ /*stt_prv_layer_apps_spl_spl*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoSplSpl )
+ {
+ ZAPL_RestrictionModeOffs0e18();
+ }
+ /*stt_prv_layer_apps_gen_nml*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoGenNml )
+ {
+ ZAPL_RestrictionModeOffs0e6();
+ }
+ /*stt_prv_layer_apps_sys_nml*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoSysNml )
+ {
+ ZAPL_RestrictionModeOffs7e7();
+ }
+ 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.*/
+ }
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+}
+
+/****************************************/
+/* Event appraisal function */
+/* STM : AppsLayer */
+/* State : restriction_mode_2_on( No 1 ) */
+/****************************************/
+static void ZAPL_AppsLayers1Event( void )
+{
+ /*stt_restriction_mode_off*/
+ if( g_stm_crr_state.mode[StmModeNoRestrictionMode].state == StmRestrictionModeSttNoOff )
+ {
+ stm_apl_event_restriction_mode_off();
+ ZAPL_AppsLayers1e0();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+}
+
+/****************************************/
+/* Event appraisal function */
+/* STM : RestrictionModeOn */
+/* State : map( No 0 ) */
+/****************************************/
+static void ZAPL_RestrictionModeOns0Event( void )
+{
+ /*stt_restriction_mode_2_on*/
+ if( g_stm_crr_state.mode[StmModeNoRestrictionMode].state == StmRestrictionModeSttNo2On )
+ {
+ /*evt_activate*/
+ if( g_stm_event == StmEvtNoActivate )
+ {
+ /*ctg_map*/
+ if( g_stm_category == StmCtgNoMap )
+ {
+ /*ara_fullscreen*/
+ if( g_stm_area == StmAreaNoFullscreen )
+ {
+ ZAPL_RestrictionModeOns0e1();
+ }
+ 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.*/
+ }
+ }
+ /*evt_undo*/
+ else if( g_stm_event == StmEvtNoUndo )
+ {
+ /*stt_prv_layer_apps_map_nml*/
+ if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoMapNml )
+ {
+ ZAPL_RestrictionModeOns0e2();
+ }
+ /*stt_prv_layer_apps_map_fll*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoMapFll )
+ {
+ ZAPL_RestrictionModeOns0e1();
+ }
+ 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.*/
+ }
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+}
+
+/****************************************/
+/* Event appraisal function */
+/* STM : RestrictionModeOn */
+/* State : map_fullscreen( No 1 ) */
+/****************************************/
+static void ZAPL_RestrictionModeOns1Event( void )
+{
+ /*stt_restriction_mode_2_on*/
+ if( g_stm_crr_state.mode[StmModeNoRestrictionMode].state == StmRestrictionModeSttNo2On )
+ {
+ /*evt_activate*/
+ if( g_stm_event == StmEvtNoActivate )
+ {
+ /*ctg_map*/
+ if( g_stm_category == StmCtgNoMap )
+ {
+ /*ara_normal*/
+ if( g_stm_area == StmAreaNoNormal )
+ {
+ ZAPL_RestrictionModeOns1e0();
+ }
+ 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.*/
+ }
+ }
+ /*evt_undo*/
+ else if( g_stm_event == StmEvtNoUndo )
+ {
+ /*stt_prv_layer_apps_map_nml*/
+ if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoMapNml )
+ {
+ ZAPL_RestrictionModeOns1e0();
+ }
+ /*stt_prv_layer_apps_map_fll*/
+ else if( g_stm_prv_state.layer[StmLayerNoApps].state == StmLayoutNoMapFll )
+ {
+ ZAPL_RestrictionModeOns1e3();
+ }
+ 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.*/
+ }
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+}
+
+/****************************************/
+/* Event call function */
+/* STM : AppsLayer */
+/****************************************/
+void stm_apl_event_call( void )
+{
+ stm_apl_start_stm();
+ switch( ZAPL_AppsLayerState[ZAPL_APPSLAYER] )
+ {
+ case ZAPL_APPSLAYERS0:
+ switch( ZAPL_AppsLayerState[ZAPL_APPSLAYERS0F] )
+ {
+ case ZAPL_RESTRICTIONMODEOFFS0:
+ ZAPL_RestrictionModeOffs0Event();
+ break;
+ case ZAPL_RESTRICTIONMODEOFFS1:
+ ZAPL_RestrictionModeOffs1Event();
+ break;
+ case ZAPL_RESTRICTIONMODEOFFS2:
+ ZAPL_RestrictionModeOffs2Event();
+ break;
+ case ZAPL_RESTRICTIONMODEOFFS3:
+ ZAPL_RestrictionModeOffs3Event();
+ break;
+ case ZAPL_RESTRICTIONMODEOFFS4:
+ ZAPL_RestrictionModeOffs4Event();
+ break;
+ case ZAPL_RESTRICTIONMODEOFFS5:
+ ZAPL_RestrictionModeOffs5Event();
+ break;
+ case ZAPL_RESTRICTIONMODEOFFS6:
+ ZAPL_RestrictionModeOffs6Event();
+ break;
+ case ZAPL_RESTRICTIONMODEOFFS7:
+ ZAPL_RestrictionModeOffs7Event();
+ break;
+ default:
+ /*Not accessible to this else (default).*/
+ break;
+ }
+ ZAPL_AppsLayers0Event();
+ break;
+ case ZAPL_APPSLAYERS1:
+ switch( ZAPL_AppsLayerState[ZAPL_APPSLAYERS1F] )
+ {
+ case ZAPL_RESTRICTIONMODEONS0:
+ ZAPL_RestrictionModeOns0Event();
+ break;
+ case ZAPL_RESTRICTIONMODEONS1:
+ ZAPL_RestrictionModeOns1Event();
+ break;
+ default:
+ /*Not accessible to this else (default).*/
+ break;
+ }
+ ZAPL_AppsLayers1Event();
+ break;
+ default:
+ /*Not accessible to this else (default).*/
+ break;
+ }
+}
+
+/****************************************/
+/* Initial function */
+/* STM : AppsLayer */
+/****************************************/
+void stm_apl_initialize( void )
+{
+ ZAPL_AppsLayerState[ZAPL_APPSLAYER] = ( uint8_t )ZAPL_APPSLAYERS0;
+ ZAPL_AppsLayerState[ZAPL_APPSLAYERS0F] = ( uint8_t )ZAPL_RESTRICTIONMODEOFFS0;
+ ZAPL_AppsLayerState[ZAPL_APPSLAYERS1F] = ( uint8_t )ZAPL_RESTRICTIONMODEONS0;
+ ZAPL_AppsLayers0StateEntry();
+}
+
+/****************************************/
+/* Terminate function */
+/* STM : AppsLayer */
+/****************************************/
+void ZAPL_AppsLayerTerminate( void )
+{
+ ZAPL_AppsLayerState[ZAPL_APPSLAYER] = ( uint8_t )ZAPL_APPSLAYERTERMINATE;
+}
+
diff --git a/src/policy_manager/stm/zipc/src/StateTransitionor/AppsLayer/ZAPL_AppsLayer.h b/src/policy_manager/stm/zipc/src/StateTransitionor/AppsLayer/ZAPL_AppsLayer.h
new file mode 100644
index 0000000..4cbbc10
--- /dev/null
+++ b/src/policy_manager/stm/zipc/src/StateTransitionor/AppsLayer/ZAPL_AppsLayer.h
@@ -0,0 +1,123 @@
+/************************************************************/
+/* ZAPL_AppsLayer.h */
+/* AppsLayer State transition model header file */
+/* ZIPC Designer Version 1.2.0 */
+/************************************************************/
+#ifndef ZHEADER_ZAPL_APPSLAYER_H
+#define ZHEADER_ZAPL_APPSLAYER_H
+
+/*State management variable access define*/
+#define ZAPL_APPSLAYER ( 0U )
+#define ZAPL_APPSLAYERS0F ( 1U )
+#define ZAPL_APPSLAYERS1F ( 2U )
+#define ZAPL_APPSLAYERS0 ( 0U )
+#define ZAPL_RESTRICTIONMODEOFFS0 ( 0U )
+#define ZAPL_RESTRICTIONMODEOFFS1 ( 1U )
+#define ZAPL_RESTRICTIONMODEOFFS2 ( 2U )
+#define ZAPL_RESTRICTIONMODEOFFS3 ( 3U )
+#define ZAPL_RESTRICTIONMODEOFFS4 ( 4U )
+#define ZAPL_RESTRICTIONMODEOFFS5 ( 5U )
+#define ZAPL_RESTRICTIONMODEOFFS6 ( 6U )
+#define ZAPL_RESTRICTIONMODEOFFS7 ( 7U )
+#define ZAPL_APPSLAYERS1 ( 1U )
+#define ZAPL_RESTRICTIONMODEONS0 ( 0U )
+#define ZAPL_RESTRICTIONMODEONS1 ( 1U )
+#define ZAPL_APPSLAYERSTATENOMAX ( 3U )
+
+/*End state define*/
+#define ZAPL_APPSLAYEREND ( 8U )
+/*Terminate state define*/
+#define ZAPL_APPSLAYERTERMINATE ( ZAPL_APPSLAYEREND + 1U )
+
+/*State no define*/
+#define ZAPL_APPSLAYERS0STATENO ( 0U )
+#define ZAPL_RESTRICTIONMODEOFFS0STATENO ( 0U )
+#define ZAPL_RESTRICTIONMODEOFFS1STATENO ( 1U )
+#define ZAPL_RESTRICTIONMODEOFFS2STATENO ( 2U )
+#define ZAPL_RESTRICTIONMODEOFFS3STATENO ( 3U )
+#define ZAPL_RESTRICTIONMODEOFFS4STATENO ( 4U )
+#define ZAPL_RESTRICTIONMODEOFFS5STATENO ( 5U )
+#define ZAPL_RESTRICTIONMODEOFFS6STATENO ( 6U )
+#define ZAPL_RESTRICTIONMODEOFFS7STATENO ( 7U )
+#define ZAPL_APPSLAYERS1STATENO ( 1U )
+#define ZAPL_RESTRICTIONMODEONS0STATENO ( 0U )
+#define ZAPL_RESTRICTIONMODEONS1STATENO ( 1U )
+
+/*State serial no define*/
+#define ZAPL_APPSLAYERS0STATESERIALNO ( 0U )
+#define ZAPL_RESTRICTIONMODEOFFS0STATESERIALNO ( 1U )
+#define ZAPL_RESTRICTIONMODEOFFS1STATESERIALNO ( 2U )
+#define ZAPL_RESTRICTIONMODEOFFS2STATESERIALNO ( 3U )
+#define ZAPL_RESTRICTIONMODEOFFS3STATESERIALNO ( 4U )
+#define ZAPL_RESTRICTIONMODEOFFS4STATESERIALNO ( 5U )
+#define ZAPL_RESTRICTIONMODEOFFS5STATESERIALNO ( 6U )
+#define ZAPL_RESTRICTIONMODEOFFS6STATESERIALNO ( 7U )
+#define ZAPL_RESTRICTIONMODEOFFS7STATESERIALNO ( 8U )
+#define ZAPL_APPSLAYERS1STATESERIALNO ( 9U )
+#define ZAPL_RESTRICTIONMODEONS0STATESERIALNO ( 10U )
+#define ZAPL_RESTRICTIONMODEONS1STATESERIALNO ( 11U )
+
+/*Event no define*/
+#define ZAPL_APPSLAYERE0EVENTNO ( 0U )
+#define ZAPL_APPSLAYERE1EVENTNO ( 1U )
+#define ZAPL_RESTRICTIONMODEOFFE0EVENTNO ( 0U )
+#define ZAPL_RESTRICTIONMODEOFFE1EVENTNO ( 1U )
+#define ZAPL_RESTRICTIONMODEOFFE2EVENTNO ( 2U )
+#define ZAPL_RESTRICTIONMODEOFFE3EVENTNO ( 3U )
+#define ZAPL_RESTRICTIONMODEOFFE4EVENTNO ( 4U )
+#define ZAPL_RESTRICTIONMODEOFFE5EVENTNO ( 5U )
+#define ZAPL_RESTRICTIONMODEOFFE6EVENTNO ( 6U )
+#define ZAPL_RESTRICTIONMODEOFFE7EVENTNO ( 7U )
+#define ZAPL_RESTRICTIONMODEOFFE8EVENTNO ( 8U )
+#define ZAPL_RESTRICTIONMODEOFFE9EVENTNO ( 9U )
+#define ZAPL_RESTRICTIONMODEOFFE10EVENTNO ( 10U )
+#define ZAPL_RESTRICTIONMODEOFFE11EVENTNO ( 11U )
+#define ZAPL_RESTRICTIONMODEOFFE12EVENTNO ( 12U )
+#define ZAPL_RESTRICTIONMODEOFFE13EVENTNO ( 13U )
+#define ZAPL_RESTRICTIONMODEOFFE14EVENTNO ( 14U )
+#define ZAPL_RESTRICTIONMODEOFFE15EVENTNO ( 15U )
+#define ZAPL_RESTRICTIONMODEOFFE16EVENTNO ( 16U )
+#define ZAPL_RESTRICTIONMODEOFFE17EVENTNO ( 17U )
+#define ZAPL_RESTRICTIONMODEOFFE18EVENTNO ( 18U )
+#define ZAPL_RESTRICTIONMODEOFFE19EVENTNO ( 19U )
+#define ZAPL_RESTRICTIONMODEOFFE20EVENTNO ( 20U )
+#define ZAPL_RESTRICTIONMODEONE0EVENTNO ( 0U )
+#define ZAPL_RESTRICTIONMODEONE1EVENTNO ( 1U )
+#define ZAPL_RESTRICTIONMODEONE2EVENTNO ( 2U )
+#define ZAPL_RESTRICTIONMODEONE3EVENTNO ( 3U )
+
+/*Event serial no define*/
+#define ZAPL_APPSLAYERE0EVENTSERIALNO ( 0U )
+#define ZAPL_APPSLAYERE1EVENTSERIALNO ( 1U )
+#define ZAPL_RESTRICTIONMODEOFFE0EVENTNO ( 0U )
+#define ZAPL_RESTRICTIONMODEOFFE1EVENTNO ( 1U )
+#define ZAPL_RESTRICTIONMODEOFFE2EVENTNO ( 2U )
+#define ZAPL_RESTRICTIONMODEOFFE3EVENTNO ( 3U )
+#define ZAPL_RESTRICTIONMODEOFFE4EVENTNO ( 4U )
+#define ZAPL_RESTRICTIONMODEOFFE5EVENTNO ( 5U )
+#define ZAPL_RESTRICTIONMODEOFFE6EVENTNO ( 6U )
+#define ZAPL_RESTRICTIONMODEOFFE7EVENTNO ( 7U )
+#define ZAPL_RESTRICTIONMODEOFFE8EVENTNO ( 8U )
+#define ZAPL_RESTRICTIONMODEOFFE9EVENTNO ( 9U )
+#define ZAPL_RESTRICTIONMODEOFFE10EVENTNO ( 10U )
+#define ZAPL_RESTRICTIONMODEOFFE11EVENTNO ( 11U )
+#define ZAPL_RESTRICTIONMODEOFFE12EVENTNO ( 12U )
+#define ZAPL_RESTRICTIONMODEOFFE13EVENTNO ( 13U )
+#define ZAPL_RESTRICTIONMODEOFFE14EVENTNO ( 14U )
+#define ZAPL_RESTRICTIONMODEOFFE15EVENTNO ( 15U )
+#define ZAPL_RESTRICTIONMODEOFFE16EVENTNO ( 16U )
+#define ZAPL_RESTRICTIONMODEOFFE17EVENTNO ( 17U )
+#define ZAPL_RESTRICTIONMODEOFFE18EVENTNO ( 18U )
+#define ZAPL_RESTRICTIONMODEOFFE19EVENTNO ( 19U )
+#define ZAPL_RESTRICTIONMODEOFFE20EVENTNO ( 20U )
+#define ZAPL_RESTRICTIONMODEONE0EVENTNO ( 0U )
+#define ZAPL_RESTRICTIONMODEONE1EVENTNO ( 1U )
+#define ZAPL_RESTRICTIONMODEONE2EVENTNO ( 2U )
+#define ZAPL_RESTRICTIONMODEONE3EVENTNO ( 3U )
+
+/*Extern function*/
+extern void stm_apl_event_call( void );
+extern void stm_apl_initialize( void );
+extern void ZAPL_AppsLayerTerminate( void );
+
+#endif
diff --git a/src/policy_manager/stm/zipc/src/StateTransitionor/AppsLayer/ZAPL_Apps_func.c b/src/policy_manager/stm/zipc/src/StateTransitionor/AppsLayer/ZAPL_Apps_func.c
new file mode 100644
index 0000000..b42df05
--- /dev/null
+++ b/src/policy_manager/stm/zipc/src/StateTransitionor/AppsLayer/ZAPL_Apps_func.c
@@ -0,0 +1,128 @@
+/************************************************************/
+/* ZAPL_Apps_func.c */
+/* Function and variable source file */
+/* ZIPC Designer Version 1.2.0 */
+/************************************************************/
+#include "../ZST_include.h"
+
+/*************************************************************
+ Function definition
+*************************************************************/
+
+/*
+ * @name stm_apl_start_activity_none
+ */
+void stm_apl_start_activity_none() {
+ g_stm_crr_state.layer[StmLayerNoApps].state = StmLayoutNoNone;
+ g_stm_crr_state.layer[StmLayerNoApps].changed = STM_TRUE;
+}
+
+/*
+ * @name stm_apl_start_activity_map
+ */
+void stm_apl_start_activity_map() {
+ g_stm_crr_state.layer[StmLayerNoApps].state = StmLayoutNoMapNml;
+ g_stm_crr_state.layer[StmLayerNoApps].changed = STM_TRUE;
+
+ if ((g_stm_event == StmEvtNoActivate)
+ && (g_stm_category == StmCtgNoMap)) {
+ g_stm_map_is_activated = STM_TRUE;
+ }
+}
+
+/*
+ * @name stm_apl_start_activity_map_split
+ */
+void stm_apl_start_activity_map_split() {
+ g_stm_crr_state.layer[StmLayerNoApps].state = StmLayoutNoMapSpl;
+ g_stm_crr_state.layer[StmLayerNoApps].changed = STM_TRUE;
+
+ if ((g_stm_event == StmEvtNoActivate)
+ && (g_stm_category == StmCtgNoMap)) {
+ g_stm_map_is_activated = STM_TRUE;
+ }
+}
+
+/*
+ * @name stm_apl_start_activity_map_fullscreen
+ */
+void stm_apl_start_activity_map_fullscreen() {
+ g_stm_crr_state.layer[StmLayerNoApps].state = StmLayoutNoMapFll;
+ g_stm_crr_state.layer[StmLayerNoApps].changed = STM_TRUE;
+
+ if ((g_stm_event == StmEvtNoActivate)
+ && (g_stm_category == StmCtgNoMap)) {
+ g_stm_map_is_activated = STM_TRUE;
+ }
+}
+
+/*
+ * @name stm_apl_start_activity_splitable_normal
+ */
+void stm_apl_start_activity_splitable_normal() {
+ g_stm_crr_state.layer[StmLayerNoApps].state = StmLayoutNoSplNml;
+ g_stm_crr_state.layer[StmLayerNoApps].changed = STM_TRUE;
+}
+
+/*
+ * @name stm_apl_start_activity_splitable_split
+ */
+void stm_apl_start_activity_splitable_split() {
+ g_stm_crr_state.layer[StmLayerNoApps].state = StmLayoutNoSplSpl;
+ g_stm_crr_state.layer[StmLayerNoApps].changed = STM_TRUE;
+}
+
+/*
+ * @name stm_apl_start_activity_general
+ */
+void stm_apl_start_activity_general() {
+ g_stm_crr_state.layer[StmLayerNoApps].state = StmLayoutNoGenNml;
+ g_stm_crr_state.layer[StmLayerNoApps].changed = STM_TRUE;
+}
+
+/*
+ * @name stm_apl_start_activity_system
+ */
+void stm_apl_start_activity_system() {
+ g_stm_crr_state.layer[StmLayerNoApps].state = StmLayoutNoSysNml;
+ g_stm_crr_state.layer[StmLayerNoApps].changed = STM_TRUE;
+}
+
+/*
+ * @name stm_apl_event_restriction_mode_off
+ */
+void stm_apl_event_restriction_mode_off() {
+ g_stm_crr_state.layer[StmLayerNoApps].state = g_prv_apps_state_rest_mode_1;
+ g_stm_crr_state.layer[StmLayerNoApps].changed = STM_TRUE;
+}
+
+/*
+ * @name stm_apl_event_restriction_mode_2_on
+ */
+void stm_apl_event_restriction_mode_2_on() {
+ g_prv_apps_state_rest_mode_1 = g_stm_prv_state.layer[StmLayerNoApps].state;
+}
+
+/*
+ * @name stm_apl_initialize_variable
+ */
+void stm_apl_initialize_variable() {
+ g_stm_prv_state.layer[StmLayerNoApps].state = StmLayoutNoNone;
+ g_stm_prv_state.layer[StmLayerNoApps].changed = STM_FALSE;
+
+ g_stm_crr_state.layer[StmLayerNoApps].state = StmLayoutNoNone;
+ g_stm_crr_state.layer[StmLayerNoApps].changed = STM_FALSE;
+}
+
+/*
+ * @name stm_apl_start_stm
+ */
+void stm_apl_start_stm() {
+ if (g_stm_event == StmEvtNoUndo) {
+ // nop
+ }
+ else {
+ g_stm_prv_state.layer[StmLayerNoApps].state = g_stm_crr_state.layer[StmLayerNoApps].state;
+ }
+ g_stm_crr_state.layer[StmLayerNoApps].changed = STM_FALSE;
+}
diff --git a/src/policy_manager/stm/zipc/src/StateTransitionor/AppsLayer/ZAPL_Apps_func.h b/src/policy_manager/stm/zipc/src/StateTransitionor/AppsLayer/ZAPL_Apps_func.h
new file mode 100644
index 0000000..6f741b5
--- /dev/null
+++ b/src/policy_manager/stm/zipc/src/StateTransitionor/AppsLayer/ZAPL_Apps_func.h
@@ -0,0 +1,22 @@
+/************************************************************/
+/* ZAPL_Apps_func.h */
+/* Function and variable header file */
+/* ZIPC Designer Version 1.2.0 */
+/************************************************************/
+#ifndef ZHEADER_ZAPL_APPS_FUNC_H
+#define ZHEADER_ZAPL_APPS_FUNC_H
+
+extern void stm_apl_start_activity_none();
+extern void stm_apl_start_activity_map();
+extern void stm_apl_start_activity_map_split();
+extern void stm_apl_start_activity_map_fullscreen();
+extern void stm_apl_start_activity_splitable_normal();
+extern void stm_apl_start_activity_splitable_split();
+extern void stm_apl_start_activity_general();
+extern void stm_apl_start_activity_system();
+extern void stm_apl_event_restriction_mode_off();
+extern void stm_apl_event_restriction_mode_2_on();
+extern void stm_apl_initialize_variable();
+extern void stm_apl_start_stm();
+
+#endif
diff --git a/src/policy_manager/stm/zipc/src/StateTransitionor/HomeScreenLayer/ZHSL_HomeScreen.c b/src/policy_manager/stm/zipc/src/StateTransitionor/HomeScreenLayer/ZHSL_HomeScreen.c
new file mode 100644
index 0000000..a4cd474
--- /dev/null
+++ b/src/policy_manager/stm/zipc/src/StateTransitionor/HomeScreenLayer/ZHSL_HomeScreen.c
@@ -0,0 +1,152 @@
+/************************************************************/
+/* ZHSL_HomeScreen.c */
+/* HomeScreen State transition model source file */
+/* ZIPC Designer Version 1.2.0 */
+/************************************************************/
+#include "../ZST_include.h"
+
+/* State management variable */
+static uint8_t ZHSL_HomeScreenState[ZHSL_HOMESCREENSTATENOMAX];
+
+static void ZHSL_HomeScreens0e0( void );
+static void ZHSL_HomeScreens1e0( void );
+static void ZHSL_HomeScreens0Event( void );
+static void ZHSL_HomeScreens1Event( void );
+
+/****************************************/
+/* Action function */
+/* STM : HomeScreen */
+/* State : none( No 0 ) */
+/* Event : ara_fullscreen( No 0 ) */
+/****************************************/
+static void ZHSL_HomeScreens0e0( void )
+{
+ ZHSL_HomeScreenState[ZHSL_HOMESCREEN] = ( uint8_t )ZHSL_HOMESCREENS1;
+ stm_hsl_start_activity_homescreen();
+}
+
+/****************************************/
+/* Action function */
+/* STM : HomeScreen */
+/* State : homescreen( No 1 ) */
+/* Event : ara_fullscreen( No 0 ) */
+/****************************************/
+static void ZHSL_HomeScreens1e0( void )
+{
+ stm_hsl_start_activity_homescreen();
+}
+
+/****************************************/
+/* Event appraisal function */
+/* STM : HomeScreen */
+/* State : none( No 0 ) */
+/****************************************/
+static void ZHSL_HomeScreens0Event( void )
+{
+ /*evt_activate*/
+ if( g_stm_event == StmEvtNoActivate )
+ {
+ /*ctg_homescreen*/
+ if( g_stm_category == StmCtgNoHomescreen )
+ {
+ /*ara_fullscreen*/
+ if( g_stm_area == StmAreaNoFullscreen )
+ {
+ ZHSL_HomeScreens0e0();
+ }
+ 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.*/
+ }
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+}
+
+/****************************************/
+/* Event appraisal function */
+/* STM : HomeScreen */
+/* State : homescreen( No 1 ) */
+/****************************************/
+static void ZHSL_HomeScreens1Event( void )
+{
+ /*evt_activate*/
+ if( g_stm_event == StmEvtNoActivate )
+ {
+ /*ctg_homescreen*/
+ if( g_stm_category == StmCtgNoHomescreen )
+ {
+ /*ara_fullscreen*/
+ if( g_stm_area == StmAreaNoFullscreen )
+ {
+ ZHSL_HomeScreens1e0();
+ }
+ 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.*/
+ }
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+}
+
+/****************************************/
+/* Event call function */
+/* STM : HomeScreen */
+/****************************************/
+void stm_hsl_event_call( void )
+{
+ stm_hsl_start_stm();
+ switch( ZHSL_HomeScreenState[ZHSL_HOMESCREEN] )
+ {
+ case ZHSL_HOMESCREENS0:
+ ZHSL_HomeScreens0Event();
+ break;
+ case ZHSL_HOMESCREENS1:
+ ZHSL_HomeScreens1Event();
+ break;
+ default:
+ /*Not accessible to this else (default).*/
+ break;
+ }
+}
+
+/****************************************/
+/* Initial function */
+/* STM : HomeScreen */
+/****************************************/
+void stm_hsl_initialize( void )
+{
+ ZHSL_HomeScreenState[ZHSL_HOMESCREEN] = ( uint8_t )ZHSL_HOMESCREENS0;
+ stm_hsl_start_activity_none();
+}
+
+/****************************************/
+/* Terminate function */
+/* STM : HomeScreen */
+/****************************************/
+void ZHSL_HomeScreenTerminate( void )
+{
+ ZHSL_HomeScreenState[ZHSL_HOMESCREEN] = ( uint8_t )ZHSL_HOMESCREENTERMINATE;
+}
+
diff --git a/src/policy_manager/stm/zipc/src/StateTransitionor/HomeScreenLayer/ZHSL_HomeScreen.h b/src/policy_manager/stm/zipc/src/StateTransitionor/HomeScreenLayer/ZHSL_HomeScreen.h
new file mode 100644
index 0000000..ffa8552
--- /dev/null
+++ b/src/policy_manager/stm/zipc/src/StateTransitionor/HomeScreenLayer/ZHSL_HomeScreen.h
@@ -0,0 +1,39 @@
+/************************************************************/
+/* ZHSL_HomeScreen.h */
+/* HomeScreen State transition model header file */
+/* ZIPC Designer Version 1.2.0 */
+/************************************************************/
+#ifndef ZHEADER_ZHSL_HOMESCREEN_H
+#define ZHEADER_ZHSL_HOMESCREEN_H
+
+/*State management variable access define*/
+#define ZHSL_HOMESCREEN ( 0U )
+#define ZHSL_HOMESCREENS0 ( 0U )
+#define ZHSL_HOMESCREENS1 ( 1U )
+#define ZHSL_HOMESCREENSTATENOMAX ( 1U )
+
+/*End state define*/
+#define ZHSL_HOMESCREENEND ( 2U )
+/*Terminate state define*/
+#define ZHSL_HOMESCREENTERMINATE ( ZHSL_HOMESCREENEND + 1U )
+
+/*State no define*/
+#define ZHSL_HOMESCREENS0STATENO ( 0U )
+#define ZHSL_HOMESCREENS1STATENO ( 1U )
+
+/*State serial no define*/
+#define ZHSL_HOMESCREENS0STATESERIALNO ( 0U )
+#define ZHSL_HOMESCREENS1STATESERIALNO ( 1U )
+
+/*Event no define*/
+#define ZHSL_HOMESCREENE0EVENTNO ( 0U )
+
+/*Event serial no define*/
+#define ZHSL_HOMESCREENE0EVENTSERIALNO ( 0U )
+
+/*Extern function*/
+extern void stm_hsl_event_call( void );
+extern void stm_hsl_initialize( void );
+extern void ZHSL_HomeScreenTerminate( void );
+
+#endif
diff --git a/src/policy_manager/stm/zipc/src/StateTransitionor/HomeScreenLayer/ZHSL_HomeScreen_func.c b/src/policy_manager/stm/zipc/src/StateTransitionor/HomeScreenLayer/ZHSL_HomeScreen_func.c
new file mode 100644
index 0000000..4d50ab0
--- /dev/null
+++ b/src/policy_manager/stm/zipc/src/StateTransitionor/HomeScreenLayer/ZHSL_HomeScreen_func.c
@@ -0,0 +1,45 @@
+/************************************************************/
+/* ZHSL_HomeScreen_func.c */
+/* Function and variable source file */
+/* ZIPC Designer Version 1.2.0 */
+/************************************************************/
+#include "../ZST_include.h"
+
+/*************************************************************
+ Function definition
+*************************************************************/
+
+/*
+ * @name stm_hsl_start_activity_none
+ */
+void stm_hsl_start_activity_none() {
+ g_stm_crr_state.layer[StmLayerNoHomescreen].state = StmLayoutNoNone;
+ g_stm_crr_state.layer[StmLayerNoHomescreen].changed = STM_TRUE;
+}
+
+/*
+ * @name stm_hsl_start_activity_homescreen
+ */
+void stm_hsl_start_activity_homescreen() {
+ g_stm_crr_state.layer[StmLayerNoHomescreen].state = StmLayoutNoHms;
+ g_stm_crr_state.layer[StmLayerNoHomescreen].changed = STM_TRUE;
+}
+
+/*
+ * @name stm_hsl_initialize_variable
+ */
+void stm_hsl_initialize_variable() {
+ g_stm_prv_state.layer[StmLayerNoHomescreen].state = StmLayoutNoNone;
+ g_stm_prv_state.layer[StmLayerNoHomescreen].changed = STM_FALSE;
+
+ g_stm_crr_state.layer[StmLayerNoHomescreen].state = StmLayoutNoNone;
+ g_stm_crr_state.layer[StmLayerNoHomescreen].changed = STM_FALSE;
+}
+
+/*
+ * @name stm_hsl_start_stm
+ */
+void stm_hsl_start_stm() {
+ g_stm_prv_state.layer[StmLayerNoHomescreen].state = g_stm_crr_state.layer[StmLayerNoHomescreen].state;
+ g_stm_crr_state.layer[StmLayerNoHomescreen].changed = STM_FALSE;
+}
diff --git a/src/policy_manager/stm/zipc/src/StateTransitionor/HomeScreenLayer/ZHSL_HomeScreen_func.h b/src/policy_manager/stm/zipc/src/StateTransitionor/HomeScreenLayer/ZHSL_HomeScreen_func.h
new file mode 100644
index 0000000..d5f4ab9
--- /dev/null
+++ b/src/policy_manager/stm/zipc/src/StateTransitionor/HomeScreenLayer/ZHSL_HomeScreen_func.h
@@ -0,0 +1,14 @@
+/************************************************************/
+/* ZHSL_HomeScreen_func.h */
+/* Function and variable header file */
+/* ZIPC Designer Version 1.2.0 */
+/************************************************************/
+#ifndef ZHEADER_ZHSL_HOMESCREEN_FUNC_H
+#define ZHEADER_ZHSL_HOMESCREEN_FUNC_H
+
+extern void stm_hsl_start_activity_none();
+extern void stm_hsl_start_activity_homescreen();
+extern void stm_hsl_initialize_variable();
+extern void stm_hsl_start_stm();
+
+#endif
diff --git a/src/policy_manager/stm/zipc/src/StateTransitionor/NearHomeScreen/ZNHL_NearHomeScreen_func.c b/src/policy_manager/stm/zipc/src/StateTransitionor/NearHomeScreen/ZNHL_NearHomeScreen_func.c
new file mode 100644
index 0000000..c8ba22f
--- /dev/null
+++ b/src/policy_manager/stm/zipc/src/StateTransitionor/NearHomeScreen/ZNHL_NearHomeScreen_func.c
@@ -0,0 +1,65 @@
+/************************************************************/
+/* ZNHL_NearHomeScreen_func.c */
+/* Function and variable source file */
+/* ZIPC Designer Version 1.2.0 */
+/************************************************************/
+#include "../ZST_include.h"
+
+/*************************************************************
+ Function definition
+*************************************************************/
+
+/*
+ * @name stm_nhl_start_activity_none
+ */
+void stm_nhl_start_activity_none() {
+ g_stm_crr_state.layer[StmLayerNoNearHomescreen].state = StmLayoutNoNone;
+ g_stm_crr_state.layer[StmLayerNoNearHomescreen].changed = STM_TRUE;
+}
+
+/*
+ * @name stm_nhl_start_activity_software_keyboard
+ */
+void stm_nhl_start_activity_software_keyboard() {
+ g_stm_crr_state.layer[StmLayerNoNearHomescreen].state = StmLayoutNoSftKbd;
+ g_stm_crr_state.layer[StmLayerNoNearHomescreen].changed = STM_TRUE;
+}
+
+/*
+ * @name stm_nhl_event_restriction_mode_off
+ */
+void stm_nhl_event_restriction_mode_off() {
+ g_stm_crr_state.layer[StmLayerNoNearHomescreen].state = g_prv_near_homescreen_state_rest_mode_1;
+ g_stm_crr_state.layer[StmLayerNoNearHomescreen].changed = STM_TRUE;
+}
+
+/*
+ * @name stm_nhl_event_restriction_mode_2_on
+ */
+void stm_nhl_event_restriction_mode_on() {
+ g_prv_near_homescreen_state_rest_mode_1 = g_stm_prv_state.layer[StmLayerNoNearHomescreen].state;
+}
+
+/*
+ * @name stm_nhl_initialize_variable
+ */
+void stm_nhl_initialize_variable() {
+ g_stm_prv_state.layer[StmLayerNoNearHomescreen].state = StmLayoutNoNone;
+ g_stm_prv_state.layer[StmLayerNoNearHomescreen].changed = STM_FALSE;
+
+ g_stm_crr_state.layer[StmLayerNoNearHomescreen].state = StmLayoutNoNone;
+ g_stm_crr_state.layer[StmLayerNoNearHomescreen].changed = STM_FALSE;
+}
+
+/*
+ * @name stm_nhl_start_stm
+ */
+void stm_nhl_start_stm() {
+ if (g_stm_event == StmEvtNoUndo) {
+ // nop
+ }
+ else {
+ g_stm_prv_state.layer[StmLayerNoNearHomescreen].state = g_stm_crr_state.layer[StmLayerNoNearHomescreen].state;
+ }
+ g_stm_crr_state.layer[StmLayerNoNearHomescreen].changed = STM_FALSE;
+}
diff --git a/src/policy_manager/stm/zipc/src/StateTransitionor/NearHomeScreen/ZNHL_NearHomeScreen_func.h b/src/policy_manager/stm/zipc/src/StateTransitionor/NearHomeScreen/ZNHL_NearHomeScreen_func.h
new file mode 100644
index 0000000..d2b13f7
--- /dev/null
+++ b/src/policy_manager/stm/zipc/src/StateTransitionor/NearHomeScreen/ZNHL_NearHomeScreen_func.h
@@ -0,0 +1,16 @@
+/************************************************************/
+/* ZNHL_NearHomeScreen_func.h */
+/* Function and variable header file */
+/* ZIPC Designer Version 1.2.0 */
+/************************************************************/
+#ifndef ZHEADER_ZNHL_NEARHOMESCREEN_FUNC_H
+#define ZHEADER_ZNHL_NEARHOMESCREEN_FUNC_H
+
+extern void stm_nhl_start_activity_none();
+extern void stm_nhl_start_activity_software_keyboard();
+extern void stm_nhl_event_restriction_mode_off();
+extern void stm_nhl_event_restriction_mode_on();
+extern void stm_nhl_initialize_variable();
+extern void stm_nhl_start_stm();
+
+#endif
diff --git a/src/policy_manager/stm/zipc/src/StateTransitionor/NearHomeScreen/ZNHL_NearHomescreen.c b/src/policy_manager/stm/zipc/src/StateTransitionor/NearHomeScreen/ZNHL_NearHomescreen.c
new file mode 100644
index 0000000..cc3bbc7
--- /dev/null
+++ b/src/policy_manager/stm/zipc/src/StateTransitionor/NearHomeScreen/ZNHL_NearHomescreen.c
@@ -0,0 +1,242 @@
+/************************************************************/
+/* ZNHL_NearHomescreen.c */
+/* NearHomescreen State transition model source file */
+/* ZIPC Designer Version 1.2.0 */
+/************************************************************/
+#include "../ZST_include.h"
+
+/* State management variable */
+static uint8_t ZNHL_NearHomescreenState[ZNHL_NEARHOMESCREENSTATENOMAX];
+
+static void ZNHL_NearHomescreens0e0( void );
+static void ZNHL_NearHomescreens0e3( void );
+static void ZNHL_NearHomescreens1e0( void );
+static void ZNHL_NearHomescreens1e2( void );
+static void ZNHL_NearHomescreens0Event( void );
+static void ZNHL_NearHomescreens1Event( void );
+
+/****************************************/
+/* Action function */
+/* STM : NearHomescreen */
+/* State : none( No 0 ) */
+/* Event : ara_software_keyboard( No 0 ) */
+/****************************************/
+static void ZNHL_NearHomescreens0e0( void )
+{
+ ZNHL_NearHomescreenState[ZNHL_NEARHOMESCREEN] = ( uint8_t )ZNHL_NEARHOMESCREENS1;
+ stm_nhl_start_activity_software_keyboard();
+}
+
+/****************************************/
+/* Action function */
+/* STM : NearHomescreen */
+/* State : none( No 0 ) */
+/* Event : stt_prv_layer_near_homescreen_none( No 3 ) */
+/****************************************/
+static void ZNHL_NearHomescreens0e3( void )
+{
+ stm_nhl_start_activity_none();
+}
+
+/****************************************/
+/* Action function */
+/* STM : NearHomescreen */
+/* State : software_keyboard( No 1 ) */
+/* Event : ara_software_keyboard( No 0 ) */
+/****************************************/
+static void ZNHL_NearHomescreens1e0( void )
+{
+ stm_nhl_start_activity_software_keyboard();
+}
+
+/****************************************/
+/* Action function */
+/* STM : NearHomescreen */
+/* State : software_keyboard( No 1 ) */
+/* Event : ctg_software_keyboard( No 2 ) */
+/****************************************/
+static void ZNHL_NearHomescreens1e2( void )
+{
+ ZNHL_NearHomescreenState[ZNHL_NEARHOMESCREEN] = ( uint8_t )ZNHL_NEARHOMESCREENS0;
+ stm_nhl_start_activity_none();
+}
+
+/****************************************/
+/* Event appraisal function */
+/* STM : NearHomescreen */
+/* State : none( No 0 ) */
+/****************************************/
+static void ZNHL_NearHomescreens0Event( void )
+{
+ /*evt_activate*/
+ if( g_stm_event == StmEvtNoActivate )
+ {
+ /*ctg_software_keyboard*/
+ if( g_stm_category == StmCtgNoSoftwareKeyboard )
+ {
+ /*ara_software_keyboard*/
+ if( g_stm_area == StmAreaNoSoftwareKyeboard )
+ {
+ ZNHL_NearHomescreens0e0();
+ }
+ else
+ {
+ ZNHL_NearHomescreens0e0();
+ }
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*evt_undo*/
+ else if( g_stm_event == StmEvtNoUndo )
+ {
+ /*stt_prv_layer_near_homescreen_none*/
+ if( g_stm_prv_state.layer[StmLayerNoNearHomescreen].state == StmLayoutNoNone )
+ {
+ ZNHL_NearHomescreens0e3();
+ }
+ /*stt_prv_layer_near_homescreen_sft_kbd*/
+ else if( g_stm_prv_state.layer[StmLayerNoNearHomescreen].state == StmLayoutNoSftKbd )
+ {
+ ZNHL_NearHomescreens0e0();
+ }
+ 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 : NearHomescreen */
+/* State : software_keyboard( No 1 ) */
+/****************************************/
+static void ZNHL_NearHomescreens1Event( void )
+{
+ /*evt_activate*/
+ if( g_stm_event == StmEvtNoActivate )
+ {
+ /*ctg_software_keyboard*/
+ if( g_stm_category == StmCtgNoSoftwareKeyboard )
+ {
+ /*ara_software_keyboard*/
+ if( g_stm_area == StmAreaNoSoftwareKyeboard )
+ {
+ ZNHL_NearHomescreens1e0();
+ }
+ else
+ {
+ ZNHL_NearHomescreens1e0();
+ }
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*evt_deactivate*/
+ else if( g_stm_event == StmEvtNoDeactivate )
+ {
+ /*ctg_software_keyboard*/
+ if( g_stm_category == StmCtgNoSoftwareKeyboard )
+ {
+ ZNHL_NearHomescreens1e2();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*evt_undo*/
+ else if( g_stm_event == StmEvtNoUndo )
+ {
+ /*stt_prv_layer_near_homescreen_none*/
+ if( g_stm_prv_state.layer[StmLayerNoNearHomescreen].state == StmLayoutNoNone )
+ {
+ ZNHL_NearHomescreens1e2();
+ }
+ /*stt_prv_layer_near_homescreen_sft_kbd*/
+ else if( g_stm_prv_state.layer[StmLayerNoNearHomescreen].state == StmLayoutNoSftKbd )
+ {
+ ZNHL_NearHomescreens1e0();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*stt_restriction_mode_1_on*/
+ else if( g_stm_crr_state.mode[StmModeNoRestrictionMode].state == StmRestrictionModeSttNo1On )
+ {
+ ZNHL_NearHomescreens1e2();
+ }
+ /*stt_crr_layer_apps_changed*/
+ else if( g_stm_crr_state.layer[StmLayerNoApps].changed == STM_TRUE )
+ {
+ ZNHL_NearHomescreens1e2();
+ }
+ /*stt_crr_layer_hs_changed*/
+ else if( g_stm_crr_state.layer[StmLayerNoHomescreen].changed == STM_TRUE )
+ {
+ ZNHL_NearHomescreens1e2();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+}
+
+/****************************************/
+/* Event call function */
+/* STM : NearHomescreen */
+/****************************************/
+void stm_nhl_event_call( void )
+{
+ stm_nhl_start_stm();
+ switch( ZNHL_NearHomescreenState[ZNHL_NEARHOMESCREEN] )
+ {
+ case ZNHL_NEARHOMESCREENS0:
+ ZNHL_NearHomescreens0Event();
+ break;
+ case ZNHL_NEARHOMESCREENS1:
+ ZNHL_NearHomescreens1Event();
+ break;
+ default:
+ /*Not accessible to this else (default).*/
+ break;
+ }
+}
+
+/****************************************/
+/* Initial function */
+/* STM : NearHomescreen */
+/****************************************/
+void stm_nhl_initialize( void )
+{
+ ZNHL_NearHomescreenState[ZNHL_NEARHOMESCREEN] = ( uint8_t )ZNHL_NEARHOMESCREENS0;
+ stm_nhl_start_activity_none();
+}
+
+/****************************************/
+/* Terminate function */
+/* STM : NearHomescreen */
+/****************************************/
+void ZNHL_NearHomescreenTerminate( void )
+{
+ ZNHL_NearHomescreenState[ZNHL_NEARHOMESCREEN] = ( uint8_t )ZNHL_NEARHOMESCREENTERMINATE;
+}
+
diff --git a/src/policy_manager/stm/zipc/src/StateTransitionor/NearHomeScreen/ZNHL_NearHomescreen.h b/src/policy_manager/stm/zipc/src/StateTransitionor/NearHomeScreen/ZNHL_NearHomescreen.h
new file mode 100644
index 0000000..f23775e
--- /dev/null
+++ b/src/policy_manager/stm/zipc/src/StateTransitionor/NearHomeScreen/ZNHL_NearHomescreen.h
@@ -0,0 +1,53 @@
+/************************************************************/
+/* ZNHL_NearHomescreen.h */
+/* NearHomescreen State transition model header file */
+/* ZIPC Designer Version 1.2.0 */
+/************************************************************/
+#ifndef ZHEADER_ZNHL_NEARHOMESCREEN_H
+#define ZHEADER_ZNHL_NEARHOMESCREEN_H
+
+/*State management variable access define*/
+#define ZNHL_NEARHOMESCREEN ( 0U )
+#define ZNHL_NEARHOMESCREENS0 ( 0U )
+#define ZNHL_NEARHOMESCREENS1 ( 1U )
+#define ZNHL_NEARHOMESCREENSTATENOMAX ( 1U )
+
+/*End state define*/
+#define ZNHL_NEARHOMESCREENEND ( 2U )
+/*Terminate state define*/
+#define ZNHL_NEARHOMESCREENTERMINATE ( ZNHL_NEARHOMESCREENEND + 1U )
+
+/*State no define*/
+#define ZNHL_NEARHOMESCREENS0STATENO ( 0U )
+#define ZNHL_NEARHOMESCREENS1STATENO ( 1U )
+
+/*State serial no define*/
+#define ZNHL_NEARHOMESCREENS0STATESERIALNO ( 0U )
+#define ZNHL_NEARHOMESCREENS1STATESERIALNO ( 1U )
+
+/*Event no define*/
+#define ZNHL_NEARHOMESCREENE0EVENTNO ( 0U )
+#define ZNHL_NEARHOMESCREENE1EVENTNO ( 1U )
+#define ZNHL_NEARHOMESCREENE2EVENTNO ( 2U )
+#define ZNHL_NEARHOMESCREENE3EVENTNO ( 3U )
+#define ZNHL_NEARHOMESCREENE4EVENTNO ( 4U )
+#define ZNHL_NEARHOMESCREENE5EVENTNO ( 5U )
+#define ZNHL_NEARHOMESCREENE6EVENTNO ( 6U )
+#define ZNHL_NEARHOMESCREENE7EVENTNO ( 7U )
+
+/*Event serial no define*/
+#define ZNHL_NEARHOMESCREENE0EVENTSERIALNO ( 0U )
+#define ZNHL_NEARHOMESCREENE1EVENTSERIALNO ( 1U )
+#define ZNHL_NEARHOMESCREENE2EVENTSERIALNO ( 2U )
+#define ZNHL_NEARHOMESCREENE3EVENTSERIALNO ( 3U )
+#define ZNHL_NEARHOMESCREENE4EVENTSERIALNO ( 4U )
+#define ZNHL_NEARHOMESCREENE5EVENTSERIALNO ( 5U )
+#define ZNHL_NEARHOMESCREENE6EVENTSERIALNO ( 6U )
+#define ZNHL_NEARHOMESCREENE7EVENTSERIALNO ( 7U )
+
+/*Extern function*/
+extern void stm_nhl_event_call( void );
+extern void stm_nhl_initialize( void );
+extern void ZNHL_NearHomescreenTerminate( void );
+
+#endif
diff --git a/src/policy_manager/stm/zipc/src/StateTransitionor/OnScreenlayer/ZOSL_OnScreen_func.c b/src/policy_manager/stm/zipc/src/StateTransitionor/OnScreenlayer/ZOSL_OnScreen_func.c
new file mode 100644
index 0000000..90a6f6f
--- /dev/null
+++ b/src/policy_manager/stm/zipc/src/StateTransitionor/OnScreenlayer/ZOSL_OnScreen_func.c
@@ -0,0 +1,72 @@
+/************************************************************/
+/* ZOSL_OnScreen_func.c */
+/* Function and variable source file */
+/* ZIPC Designer Version 1.2.0 */
+/************************************************************/
+#include "../ZST_include.h"
+
+/*************************************************************
+ Function definition
+*************************************************************/
+
+/*
+ * @name stm_osl_start_activity_none
+ */
+void stm_osl_start_activity_none() {
+ g_stm_crr_state.layer[StmLayerNoOnScreen].state = StmLayoutNoNone;
+ g_stm_crr_state.layer[StmLayerNoOnScreen].changed = STM_TRUE;
+}
+
+/*
+ * @name stm_osl_start_activity_pop_up
+ */
+void stm_osl_start_activity_pop_up() {
+ g_stm_crr_state.layer[StmLayerNoOnScreen].state = StmLayoutNoPopUp;
+ g_stm_crr_state.layer[StmLayerNoOnScreen].changed = STM_TRUE;
+}
+
+/*
+ * @name stm_osl_start_activity_system_alert
+ */
+void stm_osl_start_activity_system_alert() {
+ g_stm_crr_state.layer[StmLayerNoOnScreen].state = StmLayoutNoSysAlt;
+ g_stm_crr_state.layer[StmLayerNoOnScreen].changed = STM_TRUE;
+}
+
+/*
+ * @name stm_osl_event_restriction_mode_off
+ */
+void stm_osl_event_restriction_mode_off() {
+ g_stm_crr_state.layer[StmLayerNoOnScreen].state = g_prv_on_screen_state_rest_mode_1;
+ g_stm_crr_state.layer[StmLayerNoOnScreen].changed = STM_TRUE;
+}
+
+/*
+ * @name stm_osl_event_restriction_mode_2_on
+ */
+void stm_osl_event_restriction_mode_2_on() {
+ g_prv_on_screen_state_rest_mode_1 = g_stm_prv_state.layer[StmLayerNoOnScreen].state;
+}
+/*
+ * @name stm_osl_initialize_variable
+ */
+void stm_osl_initialize_variable() {
+ g_stm_prv_state.layer[StmLayerNoOnScreen].state = StmLayoutNoNone;
+ g_stm_prv_state.layer[StmLayerNoOnScreen].changed = STM_FALSE;
+
+ g_stm_crr_state.layer[StmLayerNoOnScreen].state = StmLayoutNoNone;
+ g_stm_crr_state.layer[StmLayerNoOnScreen].changed = STM_FALSE;
+}
+
+/*
+ * @name stm_osl_start_stm
+ */
+void stm_osl_start_stm() {
+ if (g_stm_event == StmEvtNoUndo) {
+ // nop
+ }
+ else {
+ g_stm_prv_state.layer[StmLayerNoOnScreen].state = g_stm_crr_state.layer[StmLayerNoOnScreen].state;
+ }
+ g_stm_crr_state.layer[StmLayerNoOnScreen].changed = STM_FALSE;
+}
diff --git a/src/policy_manager/stm/zipc/src/StateTransitionor/OnScreenlayer/ZOSL_OnScreen_func.h b/src/policy_manager/stm/zipc/src/StateTransitionor/OnScreenlayer/ZOSL_OnScreen_func.h
new file mode 100644
index 0000000..e85accb
--- /dev/null
+++ b/src/policy_manager/stm/zipc/src/StateTransitionor/OnScreenlayer/ZOSL_OnScreen_func.h
@@ -0,0 +1,17 @@
+/************************************************************/
+/* ZOSL_OnScreen_func.h */
+/* Function and variable header file */
+/* ZIPC Designer Version 1.2.0 */
+/************************************************************/
+#ifndef ZHEADER_ZOSL_ONSCREEN_FUNC_H
+#define ZHEADER_ZOSL_ONSCREEN_FUNC_H
+
+extern void stm_osl_start_activity_none();
+extern void stm_osl_start_activity_pop_up();
+extern void stm_osl_start_activity_system_alert();
+extern void stm_osl_event_restriction_mode_off();
+extern void stm_osl_event_restriction_mode_2_on();
+extern void stm_osl_initialize_variable();
+extern void stm_osl_start_stm();
+
+#endif
diff --git a/src/policy_manager/stm/zipc/src/StateTransitionor/OnScreenlayer/ZOSL_OslMain.c b/src/policy_manager/stm/zipc/src/StateTransitionor/OnScreenlayer/ZOSL_OslMain.c
new file mode 100644
index 0000000..53a50e1
--- /dev/null
+++ b/src/policy_manager/stm/zipc/src/StateTransitionor/OnScreenlayer/ZOSL_OslMain.c
@@ -0,0 +1,764 @@
+/************************************************************/
+/* ZOSL_OslMain.c */
+/* OslMain State transition model source file */
+/* ZIPC Designer Version 1.2.0 */
+/************************************************************/
+#include "../ZST_include.h"
+
+/* State management variable */
+static uint8_t ZOSL_OslMainState[ZOSL_OSLMAINSTATENOMAX];
+
+static void ZOSL_OslMains0StateEntry( void );
+static void ZOSL_OslMains1StateEntry( void );
+static void ZOSL_OslMains0e1( void );
+static void ZOSL_OslMains0e2( void );
+static void ZOSL_OslMains1e0( void );
+static void ZOSL_OslRestOffs0e0( void );
+static void ZOSL_OslRestOffs0e1( void );
+static void ZOSL_OslRestOffs0e4( void );
+static void ZOSL_OslRestOffs1e0( void );
+static void ZOSL_OslRestOffs1e2( void );
+static void ZOSL_OslRestOffs2e1( void );
+static void ZOSL_OslRestOns0e0( void );
+static void ZOSL_OslRestOns0e2( void );
+static void ZOSL_OslRestOns1e0( void );
+static void ZOSL_OslRestOns1e1( void );
+static void ZOSL_OslMains0Event( void );
+static void ZOSL_OslRestOffs0Event( void );
+static void ZOSL_OslRestOffs1Event( void );
+static void ZOSL_OslRestOffs2Event( void );
+static void ZOSL_OslMains1Event( void );
+static void ZOSL_OslRestOns0Event( void );
+static void ZOSL_OslRestOns1Event( void );
+
+/****************************************/
+/* State start activity function */
+/* STM : OslMain */
+/* State : restriction_mode_off( No 0 ) */
+/****************************************/
+static void ZOSL_OslMains0StateEntry( void )
+{
+ switch( ZOSL_OslMainState[ZOSL_OSLMAINS0F] )
+ {
+ case ZOSL_OSLRESTOFFS0:
+ stm_osl_start_activity_none();
+ break;
+ case ZOSL_OSLRESTOFFS1:
+ stm_osl_start_activity_pop_up();
+ break;
+ case ZOSL_OSLRESTOFFS2:
+ stm_osl_start_activity_system_alert();
+ break;
+ default:
+ /*Not accessible to this else (default).*/
+ break;
+ }
+}
+
+/****************************************/
+/* State start activity function */
+/* STM : OslMain */
+/* State : restriction_mode_2_on( No 1 ) */
+/****************************************/
+static void ZOSL_OslMains1StateEntry( void )
+{
+ switch( ZOSL_OslMainState[ZOSL_OSLMAINS1F] )
+ {
+ case ZOSL_OSLRESTONS0:
+ stm_osl_start_activity_none();
+ break;
+ case ZOSL_OSLRESTONS1:
+ stm_osl_start_activity_system_alert();
+ break;
+ default:
+ /*Not accessible to this else (default).*/
+ break;
+ }
+}
+
+/****************************************/
+/* Action function */
+/* STM : OslMain */
+/* State : restriction_mode_off( No 0 ) */
+/* Event : stt_crr_layer_on_screen_pop( No 1 ) */
+/****************************************/
+static void ZOSL_OslMains0e1( void )
+{
+ ZOSL_OslMainState[ZOSL_OSLMAIN] = ( uint8_t )ZOSL_OSLMAINS1;
+ ZOSL_OslMainState[ZOSL_OSLMAINS1F] = ( uint8_t )ZOSL_OSLRESTONS0;
+ ZOSL_OslMains1StateEntry();
+}
+
+/****************************************/
+/* Action function */
+/* STM : OslMain */
+/* State : restriction_mode_off( No 0 ) */
+/* Event : stt_crr_layer_on_screen_sys( No 2 ) */
+/****************************************/
+static void ZOSL_OslMains0e2( void )
+{
+ ZOSL_OslMainState[ZOSL_OSLMAIN] = ( uint8_t )ZOSL_OSLMAINS1;
+ ZOSL_OslMainState[ZOSL_OSLMAINS1F] = ( uint8_t )ZOSL_OSLRESTONS1;
+ ZOSL_OslMains1StateEntry();
+}
+
+/****************************************/
+/* Action function */
+/* STM : OslMain */
+/* State : restriction_mode_2_on( No 1 ) */
+/* Event : stt_restriction_mode_off( No 0 ) */
+/****************************************/
+static void ZOSL_OslMains1e0( void )
+{
+ ZOSL_OslMainState[ZOSL_OSLMAIN] = ( uint8_t )ZOSL_OSLMAINS0;
+ ZOSL_OslMains0StateEntry();
+}
+
+/****************************************/
+/* Action function */
+/* STM : OslRestOff */
+/* State : none( No 0 ) */
+/* Event : ara_onscreen( No 0 ) */
+/****************************************/
+static void ZOSL_OslRestOffs0e0( void )
+{
+ ZOSL_OslMainState[ZOSL_OSLMAINS0F] = ( uint8_t )ZOSL_OSLRESTOFFS1;
+ stm_osl_start_activity_pop_up();
+}
+
+/****************************************/
+/* Action function */
+/* STM : OslRestOff */
+/* State : none( No 0 ) */
+/* Event : ara_onscreen( No 1 ) */
+/****************************************/
+static void ZOSL_OslRestOffs0e1( void )
+{
+ ZOSL_OslMainState[ZOSL_OSLMAINS0F] = ( uint8_t )ZOSL_OSLRESTOFFS2;
+ stm_osl_start_activity_system_alert();
+}
+
+/****************************************/
+/* Action function */
+/* STM : OslRestOff */
+/* State : none( No 0 ) */
+/* Event : stt_prv_layer_on_screen_none( No 4 ) */
+/****************************************/
+static void ZOSL_OslRestOffs0e4( void )
+{
+ stm_osl_start_activity_none();
+}
+
+/****************************************/
+/* Action function */
+/* STM : OslRestOff */
+/* State : popup( No 1 ) */
+/* Event : ara_onscreen( No 0 ) */
+/****************************************/
+static void ZOSL_OslRestOffs1e0( void )
+{
+ stm_osl_start_activity_pop_up();
+}
+
+/****************************************/
+/* Action function */
+/* STM : OslRestOff */
+/* State : popup( No 1 ) */
+/* Event : ctg_popup( No 2 ) */
+/****************************************/
+static void ZOSL_OslRestOffs1e2( void )
+{
+ ZOSL_OslMainState[ZOSL_OSLMAINS0F] = ( uint8_t )ZOSL_OSLRESTOFFS0;
+ stm_osl_start_activity_none();
+}
+
+/****************************************/
+/* Action function */
+/* STM : OslRestOff */
+/* State : system_alert( No 2 ) */
+/* Event : ara_onscreen( No 1 ) */
+/****************************************/
+static void ZOSL_OslRestOffs2e1( void )
+{
+ stm_osl_start_activity_system_alert();
+}
+
+/****************************************/
+/* Action function */
+/* STM : OslRestOn */
+/* State : none( No 0 ) */
+/* Event : ara_onscreen( No 0 ) */
+/****************************************/
+static void ZOSL_OslRestOns0e0( void )
+{
+ ZOSL_OslMainState[ZOSL_OSLMAINS1F] = ( uint8_t )ZOSL_OSLRESTONS1;
+ stm_osl_start_activity_system_alert();
+}
+
+/****************************************/
+/* Action function */
+/* STM : OslRestOn */
+/* State : none( No 0 ) */
+/* Event : stt_prv_layer_on_screen_none( No 2 ) */
+/****************************************/
+static void ZOSL_OslRestOns0e2( void )
+{
+ stm_osl_start_activity_none();
+}
+
+/****************************************/
+/* Action function */
+/* STM : OslRestOn */
+/* State : system_alert( No 1 ) */
+/* Event : ara_onscreen( No 0 ) */
+/****************************************/
+static void ZOSL_OslRestOns1e0( void )
+{
+ stm_osl_start_activity_system_alert();
+}
+
+/****************************************/
+/* Action function */
+/* STM : OslRestOn */
+/* State : system_alert( No 1 ) */
+/* Event : ctg_systemalert( No 1 ) */
+/****************************************/
+static void ZOSL_OslRestOns1e1( void )
+{
+ ZOSL_OslMainState[ZOSL_OSLMAINS1F] = ( uint8_t )ZOSL_OSLRESTONS0;
+ stm_osl_start_activity_none();
+}
+
+/****************************************/
+/* Event appraisal function */
+/* STM : OslMain */
+/* State : restriction_mode_off( No 0 ) */
+/****************************************/
+static void ZOSL_OslMains0Event( void )
+{
+ /*stt_restriction_mode_2_on*/
+ if( g_stm_crr_state.mode[StmModeNoRestrictionMode].state == StmRestrictionModeSttNo2On )
+ {
+ stm_rel_event_restriction_mode_2_on();
+ /*stt_crr_layer_on_screen_pop*/
+ if( g_stm_crr_state.layer[StmLayerNoOnScreen].state == StmLayoutNoPopUp )
+ {
+ ZOSL_OslMains0e1();
+ }
+ /*stt_crr_layer_on_screen_sys*/
+ else if( g_stm_crr_state.layer[StmLayerNoOnScreen].state == StmLayoutNoSysAlt )
+ {
+ ZOSL_OslMains0e2();
+ }
+ 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 : OslRestOff */
+/* State : none( No 0 ) */
+/****************************************/
+static void ZOSL_OslRestOffs0Event( void )
+{
+ /*stt_restriction_mode_off*/
+ if( g_stm_crr_state.mode[StmModeNoRestrictionMode].state == StmRestrictionModeSttNoOff )
+ {
+ /*evt_activate*/
+ if( g_stm_event == StmEvtNoActivate )
+ {
+ /*ctg_popup*/
+ if( g_stm_category == StmCtgNoPopUp )
+ {
+ /*ara_onscreen*/
+ if( g_stm_area == StmAreaNoOnScreen )
+ {
+ ZOSL_OslRestOffs0e0();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ctg_systemalert*/
+ else if( g_stm_category == StmCtgNoSystemAlert )
+ {
+ /*ara_onscreen*/
+ if( g_stm_area == StmAreaNoOnScreen )
+ {
+ ZOSL_OslRestOffs0e1();
+ }
+ 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.*/
+ }
+ }
+ /*evt_undo*/
+ else if( g_stm_event == StmEvtNoUndo )
+ {
+ /*stt_prv_layer_on_screen_none*/
+ if( g_stm_prv_state.layer[StmLayerNoOnScreen].state == StmLayoutNoNone )
+ {
+ ZOSL_OslRestOffs0e4();
+ }
+ /*stt_prv_layer_on_screen_pop_up*/
+ else if( g_stm_prv_state.layer[StmLayerNoOnScreen].state == StmLayoutNoPopUp )
+ {
+ ZOSL_OslRestOffs0e0();
+ }
+ /*stt_prv_layer_on_screen_sys_alt*/
+ else if( g_stm_prv_state.layer[StmLayerNoOnScreen].state == StmLayoutNoSysAlt )
+ {
+ ZOSL_OslRestOffs0e1();
+ }
+ 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.*/
+ }
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+}
+
+/****************************************/
+/* Event appraisal function */
+/* STM : OslRestOff */
+/* State : popup( No 1 ) */
+/****************************************/
+static void ZOSL_OslRestOffs1Event( void )
+{
+ /*stt_restriction_mode_off*/
+ if( g_stm_crr_state.mode[StmModeNoRestrictionMode].state == StmRestrictionModeSttNoOff )
+ {
+ /*evt_activate*/
+ if( g_stm_event == StmEvtNoActivate )
+ {
+ /*ctg_popup*/
+ if( g_stm_category == StmCtgNoPopUp )
+ {
+ /*ara_onscreen*/
+ if( g_stm_area == StmAreaNoOnScreen )
+ {
+ ZOSL_OslRestOffs1e0();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ctg_systemalert*/
+ else if( g_stm_category == StmCtgNoSystemAlert )
+ {
+ /*ara_onscreen*/
+ if( g_stm_area == StmAreaNoOnScreen )
+ {
+ ZOSL_OslRestOffs0e1();
+ }
+ 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.*/
+ }
+ }
+ /*evt_deactivate*/
+ else if( g_stm_event == StmEvtNoDeactivate )
+ {
+ /*ctg_popup*/
+ if( g_stm_category == StmCtgNoPopUp )
+ {
+ ZOSL_OslRestOffs1e2();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*evt_undo*/
+ else if( g_stm_event == StmEvtNoUndo )
+ {
+ /*stt_prv_layer_on_screen_none*/
+ if( g_stm_prv_state.layer[StmLayerNoOnScreen].state == StmLayoutNoNone )
+ {
+ ZOSL_OslRestOffs1e2();
+ }
+ /*stt_prv_layer_on_screen_pop_up*/
+ else if( g_stm_prv_state.layer[StmLayerNoOnScreen].state == StmLayoutNoPopUp )
+ {
+ ZOSL_OslRestOffs1e0();
+ }
+ /*stt_prv_layer_on_screen_sys_alt*/
+ else if( g_stm_prv_state.layer[StmLayerNoOnScreen].state == StmLayoutNoSysAlt )
+ {
+ ZOSL_OslRestOffs0e1();
+ }
+ 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.*/
+ }
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+}
+
+/****************************************/
+/* Event appraisal function */
+/* STM : OslRestOff */
+/* State : system_alert( No 2 ) */
+/****************************************/
+static void ZOSL_OslRestOffs2Event( void )
+{
+ /*stt_restriction_mode_off*/
+ if( g_stm_crr_state.mode[StmModeNoRestrictionMode].state == StmRestrictionModeSttNoOff )
+ {
+ /*evt_activate*/
+ if( g_stm_event == StmEvtNoActivate )
+ {
+ /*ctg_systemalert*/
+ if( g_stm_category == StmCtgNoSystemAlert )
+ {
+ /*ara_onscreen*/
+ if( g_stm_area == StmAreaNoOnScreen )
+ {
+ ZOSL_OslRestOffs2e1();
+ }
+ 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.*/
+ }
+ }
+ /*evt_deactivate*/
+ else if( g_stm_event == StmEvtNoDeactivate )
+ {
+ /*ctg_systemalert*/
+ if( g_stm_category == StmCtgNoSystemAlert )
+ {
+ ZOSL_OslRestOffs1e2();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*evt_undo*/
+ else if( g_stm_event == StmEvtNoUndo )
+ {
+ /*stt_prv_layer_on_screen_none*/
+ if( g_stm_prv_state.layer[StmLayerNoOnScreen].state == StmLayoutNoNone )
+ {
+ ZOSL_OslRestOffs1e2();
+ }
+ /*stt_prv_layer_on_screen_pop_up*/
+ else if( g_stm_prv_state.layer[StmLayerNoOnScreen].state == StmLayoutNoPopUp )
+ {
+ ZOSL_OslRestOffs0e0();
+ }
+ /*stt_prv_layer_on_screen_sys_alt*/
+ else if( g_stm_prv_state.layer[StmLayerNoOnScreen].state == StmLayoutNoSysAlt )
+ {
+ ZOSL_OslRestOffs2e1();
+ }
+ 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.*/
+ }
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+}
+
+/****************************************/
+/* Event appraisal function */
+/* STM : OslMain */
+/* State : restriction_mode_2_on( No 1 ) */
+/****************************************/
+static void ZOSL_OslMains1Event( void )
+{
+ /*stt_restriction_mode_off*/
+ if( g_stm_crr_state.mode[StmModeNoRestrictionMode].state == StmRestrictionModeSttNoOff )
+ {
+ stm_rel_event_restriction_mode_off();
+ ZOSL_OslMains1e0();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+}
+
+/****************************************/
+/* Event appraisal function */
+/* STM : OslRestOn */
+/* State : none( No 0 ) */
+/****************************************/
+static void ZOSL_OslRestOns0Event( void )
+{
+ /*stt_restriction_mode_2_on*/
+ if( g_stm_crr_state.mode[StmModeNoRestrictionMode].state == StmRestrictionModeSttNo2On )
+ {
+ /*evt_activate*/
+ if( g_stm_event == StmEvtNoActivate )
+ {
+ /*ctg_systemalert*/
+ if( g_stm_category == StmCtgNoSystemAlert )
+ {
+ /*ara_onscreen*/
+ if( g_stm_area == StmAreaNoOnScreen )
+ {
+ ZOSL_OslRestOns0e0();
+ }
+ 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.*/
+ }
+ }
+ /*evt_undo*/
+ else if( g_stm_event == StmEvtNoUndo )
+ {
+ /*stt_prv_layer_on_screen_none*/
+ if( g_stm_prv_state.layer[StmLayerNoOnScreen].state == StmLayoutNoNone )
+ {
+ ZOSL_OslRestOns0e2();
+ }
+ /*stt_prv_layer_on_screen_sys_alt*/
+ else if( g_stm_prv_state.layer[StmLayerNoOnScreen].state == StmLayoutNoSysAlt )
+ {
+ ZOSL_OslRestOns0e0();
+ }
+ 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.*/
+ }
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+}
+
+/****************************************/
+/* Event appraisal function */
+/* STM : OslRestOn */
+/* State : system_alert( No 1 ) */
+/****************************************/
+static void ZOSL_OslRestOns1Event( void )
+{
+ /*stt_restriction_mode_2_on*/
+ if( g_stm_crr_state.mode[StmModeNoRestrictionMode].state == StmRestrictionModeSttNo2On )
+ {
+ /*evt_activate*/
+ if( g_stm_event == StmEvtNoActivate )
+ {
+ /*ctg_systemalert*/
+ if( g_stm_category == StmCtgNoSystemAlert )
+ {
+ /*ara_onscreen*/
+ if( g_stm_area == StmAreaNoOnScreen )
+ {
+ ZOSL_OslRestOns1e0();
+ }
+ 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.*/
+ }
+ }
+ /*evt_deactivate*/
+ else if( g_stm_event == StmEvtNoDeactivate )
+ {
+ /*ctg_systemalert*/
+ if( g_stm_category == StmCtgNoSystemAlert )
+ {
+ ZOSL_OslRestOns1e1();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*evt_undo*/
+ else if( g_stm_event == StmEvtNoUndo )
+ {
+ /*stt_prv_layer_on_screen_none*/
+ if( g_stm_prv_state.layer[StmLayerNoOnScreen].state == StmLayoutNoNone )
+ {
+ ZOSL_OslRestOns1e1();
+ }
+ /*stt_prv_layer_on_screen_sys_alt*/
+ else if( g_stm_prv_state.layer[StmLayerNoOnScreen].state == StmLayoutNoSysAlt )
+ {
+ ZOSL_OslRestOns1e0();
+ }
+ 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.*/
+ }
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+}
+
+/****************************************/
+/* Event call function */
+/* STM : OslMain */
+/****************************************/
+void stm_osl_event_call( void )
+{
+ stm_osl_start_stm();
+ switch( ZOSL_OslMainState[ZOSL_OSLMAIN] )
+ {
+ case ZOSL_OSLMAINS0:
+ switch( ZOSL_OslMainState[ZOSL_OSLMAINS0F] )
+ {
+ case ZOSL_OSLRESTOFFS0:
+ ZOSL_OslRestOffs0Event();
+ break;
+ case ZOSL_OSLRESTOFFS1:
+ ZOSL_OslRestOffs1Event();
+ break;
+ case ZOSL_OSLRESTOFFS2:
+ ZOSL_OslRestOffs2Event();
+ break;
+ default:
+ /*Not accessible to this else (default).*/
+ break;
+ }
+ ZOSL_OslMains0Event();
+ break;
+ case ZOSL_OSLMAINS1:
+ switch( ZOSL_OslMainState[ZOSL_OSLMAINS1F] )
+ {
+ case ZOSL_OSLRESTONS0:
+ ZOSL_OslRestOns0Event();
+ break;
+ case ZOSL_OSLRESTONS1:
+ ZOSL_OslRestOns1Event();
+ break;
+ default:
+ /*Not accessible to this else (default).*/
+ break;
+ }
+ ZOSL_OslMains1Event();
+ break;
+ default:
+ /*Not accessible to this else (default).*/
+ break;
+ }
+}
+
+/****************************************/
+/* Initial function */
+/* STM : OslMain */
+/****************************************/
+void stm_osl_initialize( void )
+{
+ ZOSL_OslMainState[ZOSL_OSLMAIN] = ( uint8_t )ZOSL_OSLMAINS0;
+ ZOSL_OslMainState[ZOSL_OSLMAINS0F] = ( uint8_t )ZOSL_OSLRESTOFFS0;
+ ZOSL_OslMainState[ZOSL_OSLMAINS1F] = ( uint8_t )ZOSL_OSLRESTONS0;
+ ZOSL_OslMains0StateEntry();
+}
+
+/****************************************/
+/* Terminate function */
+/* STM : OslMain */
+/****************************************/
+void ZOSL_OslMainTerminate( void )
+{
+ ZOSL_OslMainState[ZOSL_OSLMAIN] = ( uint8_t )ZOSL_OSLMAINTERMINATE;
+}
+
diff --git a/src/policy_manager/stm/zipc/src/StateTransitionor/OnScreenlayer/ZOSL_OslMain.h b/src/policy_manager/stm/zipc/src/StateTransitionor/OnScreenlayer/ZOSL_OslMain.h
new file mode 100644
index 0000000..ee45304
--- /dev/null
+++ b/src/policy_manager/stm/zipc/src/StateTransitionor/OnScreenlayer/ZOSL_OslMain.h
@@ -0,0 +1,82 @@
+/************************************************************/
+/* ZOSL_OslMain.h */
+/* OslMain State transition model header file */
+/* ZIPC Designer Version 1.2.0 */
+/************************************************************/
+#ifndef ZHEADER_ZOSL_OSLMAIN_H
+#define ZHEADER_ZOSL_OSLMAIN_H
+
+/*State management variable access define*/
+#define ZOSL_OSLMAIN ( 0U )
+#define ZOSL_OSLMAINS0F ( 1U )
+#define ZOSL_OSLMAINS1F ( 2U )
+#define ZOSL_OSLMAINS0 ( 0U )
+#define ZOSL_OSLRESTOFFS0 ( 0U )
+#define ZOSL_OSLRESTOFFS1 ( 1U )
+#define ZOSL_OSLRESTOFFS2 ( 2U )
+#define ZOSL_OSLMAINS1 ( 1U )
+#define ZOSL_OSLRESTONS0 ( 0U )
+#define ZOSL_OSLRESTONS1 ( 1U )
+#define ZOSL_OSLMAINSTATENOMAX ( 3U )
+
+/*End state define*/
+#define ZOSL_OSLMAINEND ( 3U )
+/*Terminate state define*/
+#define ZOSL_OSLMAINTERMINATE ( ZOSL_OSLMAINEND + 1U )
+
+/*State no define*/
+#define ZOSL_OSLMAINS0STATENO ( 0U )
+#define ZOSL_OSLRESTOFFS0STATENO ( 0U )
+#define ZOSL_OSLRESTOFFS1STATENO ( 1U )
+#define ZOSL_OSLRESTOFFS2STATENO ( 2U )
+#define ZOSL_OSLMAINS1STATENO ( 1U )
+#define ZOSL_OSLRESTONS0STATENO ( 0U )
+#define ZOSL_OSLRESTONS1STATENO ( 1U )
+
+/*State serial no define*/
+#define ZOSL_OSLMAINS0STATESERIALNO ( 0U )
+#define ZOSL_OSLRESTOFFS0STATESERIALNO ( 1U )
+#define ZOSL_OSLRESTOFFS1STATESERIALNO ( 2U )
+#define ZOSL_OSLRESTOFFS2STATESERIALNO ( 3U )
+#define ZOSL_OSLMAINS1STATESERIALNO ( 4U )
+#define ZOSL_OSLRESTONS0STATESERIALNO ( 5U )
+#define ZOSL_OSLRESTONS1STATESERIALNO ( 6U )
+
+/*Event no define*/
+#define ZOSL_OSLMAINE0EVENTNO ( 0U )
+#define ZOSL_OSLMAINE1EVENTNO ( 1U )
+#define ZOSL_OSLMAINE2EVENTNO ( 2U )
+#define ZOSL_OSLRESTOFFE0EVENTNO ( 0U )
+#define ZOSL_OSLRESTOFFE1EVENTNO ( 1U )
+#define ZOSL_OSLRESTOFFE2EVENTNO ( 2U )
+#define ZOSL_OSLRESTOFFE3EVENTNO ( 3U )
+#define ZOSL_OSLRESTOFFE4EVENTNO ( 4U )
+#define ZOSL_OSLRESTOFFE5EVENTNO ( 5U )
+#define ZOSL_OSLRESTOFFE6EVENTNO ( 6U )
+#define ZOSL_OSLRESTONE0EVENTNO ( 0U )
+#define ZOSL_OSLRESTONE1EVENTNO ( 1U )
+#define ZOSL_OSLRESTONE2EVENTNO ( 2U )
+#define ZOSL_OSLRESTONE3EVENTNO ( 3U )
+
+/*Event serial no define*/
+#define ZOSL_OSLMAINE0EVENTSERIALNO ( 0U )
+#define ZOSL_OSLMAINE1EVENTSERIALNO ( 1U )
+#define ZOSL_OSLMAINE2EVENTSERIALNO ( 2U )
+#define ZOSL_OSLRESTOFFE0EVENTNO ( 0U )
+#define ZOSL_OSLRESTOFFE1EVENTNO ( 1U )
+#define ZOSL_OSLRESTOFFE2EVENTNO ( 2U )
+#define ZOSL_OSLRESTOFFE3EVENTNO ( 3U )
+#define ZOSL_OSLRESTOFFE4EVENTNO ( 4U )
+#define ZOSL_OSLRESTOFFE5EVENTNO ( 5U )
+#define ZOSL_OSLRESTOFFE6EVENTNO ( 6U )
+#define ZOSL_OSLRESTONE0EVENTNO ( 0U )
+#define ZOSL_OSLRESTONE1EVENTNO ( 1U )
+#define ZOSL_OSLRESTONE2EVENTNO ( 2U )
+#define ZOSL_OSLRESTONE3EVENTNO ( 3U )
+
+/*Extern function*/
+extern void stm_osl_event_call( void );
+extern void stm_osl_initialize( void );
+extern void ZOSL_OslMainTerminate( void );
+
+#endif
diff --git a/src/policy_manager/stm/zipc/src/StateTransitionor/RestrictionLayer/ZREL_RelMain.c b/src/policy_manager/stm/zipc/src/StateTransitionor/RestrictionLayer/ZREL_RelMain.c
new file mode 100644
index 0000000..6d07643
--- /dev/null
+++ b/src/policy_manager/stm/zipc/src/StateTransitionor/RestrictionLayer/ZREL_RelMain.c
@@ -0,0 +1,976 @@
+/************************************************************/
+/* ZREL_RelMain.c */
+/* RelMain State transition model source file */
+/* ZIPC Designer Version 1.2.0 */
+/************************************************************/
+#include "../ZST_include.h"
+
+/* State management variable */
+static uint8_t ZREL_RelMainState[ZREL_RELMAINSTATENOMAX];
+
+static void ZREL_RelMains0StateEntry( void );
+static void ZREL_RelMains1StateEntry( void );
+static void ZREL_RelMains0e1( void );
+static void ZREL_RelMains1e0( void );
+static void ZREL_RelRestOffs0e0( void );
+static void ZREL_RelRestOffs0e1( void );
+static void ZREL_RelRestOffs0e8( void );
+static void ZREL_RelRestOffs0e13( void );
+static void ZREL_RelRestOffs1e1( void );
+static void ZREL_RelRestOffs1e4( void );
+static void ZREL_RelRestOffs2e15( void );
+static void ZREL_RelRestOffs3e0( void );
+static void ZREL_RelMains0Event( void );
+static void ZREL_RelRestOffs0Event( void );
+static void ZREL_RelRestOffs1Event( void );
+static void ZREL_RelRestOffs2Event( void );
+static void ZREL_RelRestOffs3Event( void );
+static void ZREL_RelMains1Event( void );
+static void ZREL_RelRestOns0Event( void );
+
+/****************************************/
+/* State start activity function */
+/* STM : RelMain */
+/* State : restriction_mode_off( No 0 ) */
+/****************************************/
+static void ZREL_RelMains0StateEntry( void )
+{
+ switch( ZREL_RelMainState[ZREL_RELMAINS0F] )
+ {
+ case ZREL_RELRESTOFFS0:
+ stm_rel_start_activity_none();
+ break;
+ case ZREL_RELRESTOFFS1:
+ stm_rel_start_activity_restriction_normal();
+ break;
+ case ZREL_RELRESTOFFS2:
+ stm_rel_start_activity_restriction_split_main();
+ break;
+ case ZREL_RELRESTOFFS3:
+ stm_rel_start_activity_restriction_split_sub();
+ break;
+ default:
+ /*Not accessible to this else (default).*/
+ break;
+ }
+}
+
+/****************************************/
+/* State start activity function */
+/* STM : RelMain */
+/* State : restriction_mode_2_on( No 1 ) */
+/****************************************/
+static void ZREL_RelMains1StateEntry( void )
+{
+ switch( ZREL_RelMainState[ZREL_RELMAINS1F] )
+ {
+ case ZREL_RELRESTONS0:
+ stm_rel_start_activity_none();
+ break;
+ default:
+ /*Not accessible to this else (default).*/
+ break;
+ }
+}
+
+/****************************************/
+/* Action function */
+/* STM : RelMain */
+/* State : restriction_mode_off( No 0 ) */
+/* Event : stt_restriction_mode_2_on( No 1 ) */
+/****************************************/
+static void ZREL_RelMains0e1( void )
+{
+ ZREL_RelMainState[ZREL_RELMAIN] = ( uint8_t )ZREL_RELMAINS1;
+ ZREL_RelMainState[ZREL_RELMAINS1F] = ( uint8_t )ZREL_RELRESTONS0;
+ ZREL_RelMains1StateEntry();
+}
+
+/****************************************/
+/* Action function */
+/* STM : RelMain */
+/* State : restriction_mode_2_on( No 1 ) */
+/* Event : stt_restriction_mode_off( No 0 ) */
+/****************************************/
+static void ZREL_RelMains1e0( void )
+{
+ ZREL_RelMainState[ZREL_RELMAIN] = ( uint8_t )ZREL_RELMAINS0;
+ ZREL_RelMains0StateEntry();
+}
+
+/****************************************/
+/* Action function */
+/* STM : RelRestOff */
+/* State : none( No 0 ) */
+/* Event : stt_crr_layer_apps_map_spl( No 0 ) */
+/****************************************/
+static void ZREL_RelRestOffs0e0( void )
+{
+ ZREL_RelMainState[ZREL_RELMAINS0F] = ( uint8_t )ZREL_RELRESTOFFS3;
+ stm_rel_start_activity_restriction_split_sub();
+}
+
+/****************************************/
+/* Action function */
+/* STM : RelRestOff */
+/* State : none( No 0 ) */
+/* Event : stt_crr_layer_apps_spl_nml( No 1 ) */
+/****************************************/
+static void ZREL_RelRestOffs0e1( void )
+{
+ ZREL_RelMainState[ZREL_RELMAINS0F] = ( uint8_t )ZREL_RELRESTOFFS1;
+ stm_rel_start_activity_restriction_normal();
+}
+
+/****************************************/
+/* Action function */
+/* STM : RelRestOff */
+/* State : none( No 0 ) */
+/* Event : ara_restriction_split_main( No 8 ) */
+/****************************************/
+static void ZREL_RelRestOffs0e8( void )
+{
+ ZREL_RelMainState[ZREL_RELMAINS0F] = ( uint8_t )ZREL_RELRESTOFFS2;
+ stm_rel_start_activity_restriction_split_main();
+}
+
+/****************************************/
+/* Action function */
+/* STM : RelRestOff */
+/* State : none( No 0 ) */
+/* Event : stt_prv_layer_rst_none( No 13 ) */
+/****************************************/
+static void ZREL_RelRestOffs0e13( void )
+{
+ stm_rel_start_activity_none();
+}
+
+/****************************************/
+/* Action function */
+/* STM : RelRestOff */
+/* State : restriction_normal( No 1 ) */
+/* Event : stt_crr_layer_apps_spl_nml( No 1 ) */
+/****************************************/
+static void ZREL_RelRestOffs1e1( void )
+{
+ stm_rel_start_activity_restriction_normal();
+}
+
+/****************************************/
+/* Action function */
+/* STM : RelRestOff */
+/* State : restriction_normal( No 1 ) */
+/* Event : ELSE( No 4 ) */
+/****************************************/
+static void ZREL_RelRestOffs1e4( void )
+{
+ ZREL_RelMainState[ZREL_RELMAINS0F] = ( uint8_t )ZREL_RELRESTOFFS0;
+ stm_rel_start_activity_none();
+}
+
+/****************************************/
+/* Action function */
+/* STM : RelRestOff */
+/* State : restriction_split_main( No 2 ) */
+/* Event : stt_prv_layer_rst_rst_spl_main( No 15 ) */
+/****************************************/
+static void ZREL_RelRestOffs2e15( void )
+{
+ stm_rel_start_activity_restriction_split_main();
+}
+
+/****************************************/
+/* Action function */
+/* STM : RelRestOff */
+/* State : restriction_split_sub( No 3 ) */
+/* Event : stt_crr_layer_apps_map_spl( No 0 ) */
+/****************************************/
+static void ZREL_RelRestOffs3e0( void )
+{
+ stm_rel_start_activity_restriction_split_sub();
+}
+
+/****************************************/
+/* Event appraisal function */
+/* STM : RelMain */
+/* State : restriction_mode_off( No 0 ) */
+/****************************************/
+static void ZREL_RelMains0Event( void )
+{
+ /*stt_restriction_mode_2_on*/
+ if( g_stm_crr_state.mode[StmModeNoRestrictionMode].state == StmRestrictionModeSttNo2On )
+ {
+ stm_rel_event_restriction_mode_2_on();
+ ZREL_RelMains0e1();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+}
+
+/****************************************/
+/* Event appraisal function */
+/* STM : RelRestOff */
+/* State : none( No 0 ) */
+/****************************************/
+static void ZREL_RelRestOffs0Event( void )
+{
+ /*stt_restriction_mode_1_on*/
+ if( g_stm_crr_state.mode[StmModeNoRestrictionMode].state == StmRestrictionModeSttNo1On )
+ {
+ /*stt_crr_layer_apps_changed*/
+ if( g_stm_crr_state.layer[StmLayerNoApps].changed == STM_TRUE )
+ {
+ /*stt_crr_layer_apps_map_spl*/
+ if( g_stm_crr_state.layer[StmLayerNoApps].state == StmLayoutNoMapSpl )
+ {
+ ZREL_RelRestOffs0e0();
+ }
+ /*stt_crr_layer_apps_spl_nml*/
+ else if( g_stm_crr_state.layer[StmLayerNoApps].state == StmLayoutNoSplNml )
+ {
+ ZREL_RelRestOffs0e1();
+ }
+ /*stt_crr_layer_apps_spl_spl*/
+ else if( g_stm_crr_state.layer[StmLayerNoApps].state == StmLayoutNoSplSpl )
+ {
+ ZREL_RelRestOffs0e1();
+ }
+ /*stt_crr_layer_apps_gen_nml*/
+ else if( g_stm_crr_state.layer[StmLayerNoApps].state == StmLayoutNoGenNml )
+ {
+ ZREL_RelRestOffs0e1();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*evt_activate*/
+ else if( g_stm_event == StmEvtNoActivate )
+ {
+ /*ctg_restriction*/
+ if( g_stm_category == StmCtgNoRestriction )
+ {
+ /*ara_restriction_normal*/
+ if( g_stm_area == StmAreaNoRestrictionNormal )
+ {
+ /*stt_crr_layer_apps_spl_nml*/
+ if( g_stm_crr_state.layer[StmLayerNoApps].state == StmLayoutNoSplNml )
+ {
+ ZREL_RelRestOffs0e1();
+ }
+ /*stt_crr_layer_apps_map_spl*/
+ else if( g_stm_crr_state.layer[StmLayerNoApps].state == StmLayoutNoMapSpl )
+ {
+ ZREL_RelRestOffs0e0();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ara_restriction_split_main*/
+ else if( g_stm_area == StmAreaNoRestrictionSplitMain )
+ {
+ ZREL_RelRestOffs0e8();
+ }
+ /*ara_restriction_split_sub*/
+ else if( g_stm_area == StmAreaNoRestrictionSplitSub )
+ {
+ ZREL_RelRestOffs0e0();
+ }
+ 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.*/
+ }
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*stt_restriction_mode_off*/
+ else if( g_stm_crr_state.mode[StmModeNoRestrictionMode].state == StmRestrictionModeSttNoOff )
+ {
+ /*evt_undo*/
+ if( g_stm_event == StmEvtNoUndo )
+ {
+ /*stt_prv_layer_rst_none*/
+ if( g_stm_prv_state.layer[StmLayerNoRestriction].state == StmLayoutNoNone )
+ {
+ ZREL_RelRestOffs0e13();
+ }
+ /*stt_prv_layer_rst_rst_nml*/
+ else if( g_stm_prv_state.layer[StmLayerNoRestriction].state == StmLayoutNoRstNml )
+ {
+ ZREL_RelRestOffs0e1();
+ }
+ /*stt_prv_layer_rst_rst_spl_main*/
+ else if( g_stm_prv_state.layer[StmLayerNoRestriction].state == StmLayoutNoRstSplMain )
+ {
+ ZREL_RelRestOffs0e8();
+ }
+ /*stt_prv_layer_rst_rst_spl_sub*/
+ else if( g_stm_prv_state.layer[StmLayerNoRestriction].state == StmLayoutNoRstSplSub )
+ {
+ ZREL_RelRestOffs0e0();
+ }
+ 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.*/
+ }
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+}
+
+/****************************************/
+/* Event appraisal function */
+/* STM : RelRestOff */
+/* State : restriction_normal( No 1 ) */
+/****************************************/
+static void ZREL_RelRestOffs1Event( void )
+{
+ /*stt_restriction_mode_1_on*/
+ if( g_stm_crr_state.mode[StmModeNoRestrictionMode].state == StmRestrictionModeSttNo1On )
+ {
+ /*stt_crr_layer_apps_changed*/
+ if( g_stm_crr_state.layer[StmLayerNoApps].changed == STM_TRUE )
+ {
+ /*stt_crr_layer_apps_map_spl*/
+ if( g_stm_crr_state.layer[StmLayerNoApps].state == StmLayoutNoMapSpl )
+ {
+ ZREL_RelRestOffs0e0();
+ }
+ /*stt_crr_layer_apps_spl_nml*/
+ else if( g_stm_crr_state.layer[StmLayerNoApps].state == StmLayoutNoSplNml )
+ {
+ ZREL_RelRestOffs1e1();
+ }
+ /*stt_crr_layer_apps_spl_spl*/
+ else if( g_stm_crr_state.layer[StmLayerNoApps].state == StmLayoutNoSplSpl )
+ {
+ ZREL_RelRestOffs1e1();
+ }
+ /*stt_crr_layer_apps_gen_nml*/
+ else if( g_stm_crr_state.layer[StmLayerNoApps].state == StmLayoutNoGenNml )
+ {
+ ZREL_RelRestOffs1e1();
+ }
+ else
+ {
+ ZREL_RelRestOffs1e4();
+ }
+ }
+ /*stt_crr_layer_hs_changed*/
+ else if( g_stm_crr_state.layer[StmLayerNoHomescreen].changed == STM_TRUE )
+ {
+ /*stt_crr_layer_hs_hms*/
+ if( g_stm_crr_state.layer[StmLayerNoHomescreen].state == StmLayoutNoHms )
+ {
+ ZREL_RelRestOffs1e4();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*evt_activate*/
+ else if( g_stm_event == StmEvtNoActivate )
+ {
+ /*ctg_restriction*/
+ if( g_stm_category == StmCtgNoRestriction )
+ {
+ /*ara_restriction_normal*/
+ if( g_stm_area == StmAreaNoRestrictionNormal )
+ {
+ /*stt_crr_layer_apps_map_spl*/
+ if( g_stm_crr_state.layer[StmLayerNoApps].state == StmLayoutNoMapSpl )
+ {
+ ZREL_RelRestOffs0e0();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ara_restriction_split_main*/
+ else if( g_stm_area == StmAreaNoRestrictionSplitMain )
+ {
+ ZREL_RelRestOffs0e8();
+ }
+ /*ara_restriction_split_sub*/
+ else if( g_stm_area == StmAreaNoRestrictionSplitSub )
+ {
+ ZREL_RelRestOffs0e0();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ctg_homescreen*/
+ else if( g_stm_category == StmCtgNoHomescreen )
+ {
+ /*ara_fullscreen*/
+ if( g_stm_area == StmAreaNoFullscreen )
+ {
+ ZREL_RelRestOffs1e4();
+ }
+ 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.*/
+ }
+ }
+ /*evt_deactivate*/
+ else if( g_stm_event == StmEvtNoDeactivate )
+ {
+ /*ctg_restriction*/
+ if( g_stm_category == StmCtgNoRestriction )
+ {
+ ZREL_RelRestOffs1e4();
+ }
+ 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.*/
+ }
+ }
+ /*stt_restriction_mode_off*/
+ else if( g_stm_crr_state.mode[StmModeNoRestrictionMode].state == StmRestrictionModeSttNoOff )
+ {
+ /*stt_prv_layer_rst_not_none*/
+ if( g_stm_prv_state.layer[StmLayerNoRestriction].state != StmLayoutNoNone )
+ {
+ ZREL_RelRestOffs1e4();
+ }
+ /*evt_undo*/
+ else if( g_stm_event == StmEvtNoUndo )
+ {
+ /*stt_prv_layer_rst_none*/
+ if( g_stm_prv_state.layer[StmLayerNoRestriction].state == StmLayoutNoNone )
+ {
+ ZREL_RelRestOffs1e4();
+ }
+ /*stt_prv_layer_rst_rst_nml*/
+ else if( g_stm_prv_state.layer[StmLayerNoRestriction].state == StmLayoutNoRstNml )
+ {
+ ZREL_RelRestOffs1e1();
+ }
+ /*stt_prv_layer_rst_rst_spl_main*/
+ else if( g_stm_prv_state.layer[StmLayerNoRestriction].state == StmLayoutNoRstSplMain )
+ {
+ ZREL_RelRestOffs0e8();
+ }
+ /*stt_prv_layer_rst_rst_spl_sub*/
+ else if( g_stm_prv_state.layer[StmLayerNoRestriction].state == StmLayoutNoRstSplSub )
+ {
+ ZREL_RelRestOffs0e0();
+ }
+ 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.*/
+ }
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+}
+
+/****************************************/
+/* Event appraisal function */
+/* STM : RelRestOff */
+/* State : restriction_split_main( No 2 ) */
+/****************************************/
+static void ZREL_RelRestOffs2Event( void )
+{
+ /*stt_restriction_mode_1_on*/
+ if( g_stm_crr_state.mode[StmModeNoRestrictionMode].state == StmRestrictionModeSttNo1On )
+ {
+ /*stt_crr_layer_apps_changed*/
+ if( g_stm_crr_state.layer[StmLayerNoApps].changed == STM_TRUE )
+ {
+ /*stt_crr_layer_apps_map_spl*/
+ if( g_stm_crr_state.layer[StmLayerNoApps].state == StmLayoutNoMapSpl )
+ {
+ ZREL_RelRestOffs0e0();
+ }
+ /*stt_crr_layer_apps_spl_nml*/
+ else if( g_stm_crr_state.layer[StmLayerNoApps].state == StmLayoutNoSplNml )
+ {
+ ZREL_RelRestOffs0e1();
+ }
+ /*stt_crr_layer_apps_spl_spl*/
+ else if( g_stm_crr_state.layer[StmLayerNoApps].state == StmLayoutNoSplSpl )
+ {
+ ZREL_RelRestOffs0e1();
+ }
+ /*stt_crr_layer_apps_gen_nml*/
+ else if( g_stm_crr_state.layer[StmLayerNoApps].state == StmLayoutNoGenNml )
+ {
+ ZREL_RelRestOffs0e1();
+ }
+ else
+ {
+ ZREL_RelRestOffs1e4();
+ }
+ }
+ /*stt_crr_layer_hs_changed*/
+ else if( g_stm_crr_state.layer[StmLayerNoHomescreen].changed == STM_TRUE )
+ {
+ /*stt_crr_layer_hs_hms*/
+ if( g_stm_crr_state.layer[StmLayerNoHomescreen].state == StmLayoutNoHms )
+ {
+ ZREL_RelRestOffs1e4();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*evt_activate*/
+ else if( g_stm_event == StmEvtNoActivate )
+ {
+ /*ctg_restriction*/
+ if( g_stm_category == StmCtgNoRestriction )
+ {
+ /*ara_restriction_normal*/
+ if( g_stm_area == StmAreaNoRestrictionNormal )
+ {
+ /*stt_crr_layer_apps_spl_nml*/
+ if( g_stm_crr_state.layer[StmLayerNoApps].state == StmLayoutNoSplNml )
+ {
+ ZREL_RelRestOffs0e1();
+ }
+ /*stt_crr_layer_apps_map_spl*/
+ else if( g_stm_crr_state.layer[StmLayerNoApps].state == StmLayoutNoMapSpl )
+ {
+ ZREL_RelRestOffs0e0();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ara_restriction_split_sub*/
+ else if( g_stm_area == StmAreaNoRestrictionSplitSub )
+ {
+ ZREL_RelRestOffs0e1();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ctg_homescreen*/
+ else if( g_stm_category == StmCtgNoHomescreen )
+ {
+ /*ara_fullscreen*/
+ if( g_stm_area == StmAreaNoFullscreen )
+ {
+ ZREL_RelRestOffs1e4();
+ }
+ 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.*/
+ }
+ }
+ /*evt_deactivate*/
+ else if( g_stm_event == StmEvtNoDeactivate )
+ {
+ /*ctg_restriction*/
+ if( g_stm_category == StmCtgNoRestriction )
+ {
+ ZREL_RelRestOffs1e4();
+ }
+ 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.*/
+ }
+ }
+ /*stt_restriction_mode_off*/
+ else if( g_stm_crr_state.mode[StmModeNoRestrictionMode].state == StmRestrictionModeSttNoOff )
+ {
+ /*stt_prv_layer_rst_not_none*/
+ if( g_stm_prv_state.layer[StmLayerNoRestriction].state != StmLayoutNoNone )
+ {
+ ZREL_RelRestOffs1e4();
+ }
+ /*evt_undo*/
+ else if( g_stm_event == StmEvtNoUndo )
+ {
+ /*stt_prv_layer_rst_none*/
+ if( g_stm_prv_state.layer[StmLayerNoRestriction].state == StmLayoutNoNone )
+ {
+ ZREL_RelRestOffs1e4();
+ }
+ /*stt_prv_layer_rst_rst_nml*/
+ else if( g_stm_prv_state.layer[StmLayerNoRestriction].state == StmLayoutNoRstNml )
+ {
+ ZREL_RelRestOffs0e1();
+ }
+ /*stt_prv_layer_rst_rst_spl_main*/
+ else if( g_stm_prv_state.layer[StmLayerNoRestriction].state == StmLayoutNoRstSplMain )
+ {
+ ZREL_RelRestOffs2e15();
+ }
+ /*stt_prv_layer_rst_rst_spl_sub*/
+ else if( g_stm_prv_state.layer[StmLayerNoRestriction].state == StmLayoutNoRstSplSub )
+ {
+ ZREL_RelRestOffs0e0();
+ }
+ 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.*/
+ }
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+}
+
+/****************************************/
+/* Event appraisal function */
+/* STM : RelRestOff */
+/* State : restriction_split_sub( No 3 ) */
+/****************************************/
+static void ZREL_RelRestOffs3Event( void )
+{
+ /*stt_restriction_mode_1_on*/
+ if( g_stm_crr_state.mode[StmModeNoRestrictionMode].state == StmRestrictionModeSttNo1On )
+ {
+ /*stt_crr_layer_apps_changed*/
+ if( g_stm_crr_state.layer[StmLayerNoApps].changed == STM_TRUE )
+ {
+ /*stt_crr_layer_apps_map_spl*/
+ if( g_stm_crr_state.layer[StmLayerNoApps].state == StmLayoutNoMapSpl )
+ {
+ ZREL_RelRestOffs3e0();
+ }
+ /*stt_crr_layer_apps_spl_nml*/
+ else if( g_stm_crr_state.layer[StmLayerNoApps].state == StmLayoutNoSplNml )
+ {
+ ZREL_RelRestOffs0e1();
+ }
+ /*stt_crr_layer_apps_spl_spl*/
+ else if( g_stm_crr_state.layer[StmLayerNoApps].state == StmLayoutNoSplSpl )
+ {
+ ZREL_RelRestOffs0e1();
+ }
+ /*stt_crr_layer_apps_gen_nml*/
+ else if( g_stm_crr_state.layer[StmLayerNoApps].state == StmLayoutNoGenNml )
+ {
+ ZREL_RelRestOffs0e1();
+ }
+ else
+ {
+ ZREL_RelRestOffs1e4();
+ }
+ }
+ /*stt_crr_layer_hs_changed*/
+ else if( g_stm_crr_state.layer[StmLayerNoHomescreen].changed == STM_TRUE )
+ {
+ /*stt_crr_layer_hs_hms*/
+ if( g_stm_crr_state.layer[StmLayerNoHomescreen].state == StmLayoutNoHms )
+ {
+ ZREL_RelRestOffs1e4();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*evt_activate*/
+ else if( g_stm_event == StmEvtNoActivate )
+ {
+ /*ctg_restriction*/
+ if( g_stm_category == StmCtgNoRestriction )
+ {
+ /*ara_restriction_normal*/
+ if( g_stm_area == StmAreaNoRestrictionNormal )
+ {
+ /*stt_crr_layer_apps_spl_nml*/
+ if( g_stm_crr_state.layer[StmLayerNoApps].state == StmLayoutNoSplNml )
+ {
+ ZREL_RelRestOffs0e1();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ara_restriction_split_main*/
+ else if( g_stm_area == StmAreaNoRestrictionSplitMain )
+ {
+ ZREL_RelRestOffs0e1();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+ }
+ /*ctg_homescreen*/
+ else if( g_stm_category == StmCtgNoHomescreen )
+ {
+ /*ara_fullscreen*/
+ if( g_stm_area == StmAreaNoFullscreen )
+ {
+ ZREL_RelRestOffs1e4();
+ }
+ 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.*/
+ }
+ }
+ /*evt_deactivate*/
+ else if( g_stm_event == StmEvtNoDeactivate )
+ {
+ /*ctg_restriction*/
+ if( g_stm_category == StmCtgNoRestriction )
+ {
+ ZREL_RelRestOffs1e4();
+ }
+ 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.*/
+ }
+ }
+ /*stt_restriction_mode_off*/
+ else if( g_stm_crr_state.mode[StmModeNoRestrictionMode].state == StmRestrictionModeSttNoOff )
+ {
+ /*stt_prv_layer_rst_not_none*/
+ if( g_stm_prv_state.layer[StmLayerNoRestriction].state != StmLayoutNoNone )
+ {
+ ZREL_RelRestOffs1e4();
+ }
+ /*evt_undo*/
+ else if( g_stm_event == StmEvtNoUndo )
+ {
+ /*stt_prv_layer_rst_none*/
+ if( g_stm_prv_state.layer[StmLayerNoRestriction].state == StmLayoutNoNone )
+ {
+ ZREL_RelRestOffs1e4();
+ }
+ /*stt_prv_layer_rst_rst_nml*/
+ else if( g_stm_prv_state.layer[StmLayerNoRestriction].state == StmLayoutNoRstNml )
+ {
+ ZREL_RelRestOffs0e1();
+ }
+ /*stt_prv_layer_rst_rst_spl_main*/
+ else if( g_stm_prv_state.layer[StmLayerNoRestriction].state == StmLayoutNoRstSplMain )
+ {
+ ZREL_RelRestOffs0e8();
+ }
+ /*stt_prv_layer_rst_rst_spl_sub*/
+ else if( g_stm_prv_state.layer[StmLayerNoRestriction].state == StmLayoutNoRstSplSub )
+ {
+ ZREL_RelRestOffs3e0();
+ }
+ 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.*/
+ }
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+}
+
+/****************************************/
+/* Event appraisal function */
+/* STM : RelMain */
+/* State : restriction_mode_2_on( No 1 ) */
+/****************************************/
+static void ZREL_RelMains1Event( void )
+{
+ /*stt_restriction_mode_off*/
+ if( g_stm_crr_state.mode[StmModeNoRestrictionMode].state == StmRestrictionModeSttNoOff )
+ {
+ stm_rel_event_restriction_mode_off();
+ ZREL_RelMains1e0();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+}
+
+/****************************************/
+/* Event appraisal function */
+/* STM : RelRestOn */
+/* State : none( No 0 ) */
+/****************************************/
+static void ZREL_RelRestOns0Event( void )
+{
+}
+
+/****************************************/
+/* Event call function */
+/* STM : RelMain */
+/****************************************/
+void stm_rel_event_call( void )
+{
+ stm_rel_start_stm();
+ switch( ZREL_RelMainState[ZREL_RELMAIN] )
+ {
+ case ZREL_RELMAINS0:
+ switch( ZREL_RelMainState[ZREL_RELMAINS0F] )
+ {
+ case ZREL_RELRESTOFFS0:
+ ZREL_RelRestOffs0Event();
+ break;
+ case ZREL_RELRESTOFFS1:
+ ZREL_RelRestOffs1Event();
+ break;
+ case ZREL_RELRESTOFFS2:
+ ZREL_RelRestOffs2Event();
+ break;
+ case ZREL_RELRESTOFFS3:
+ ZREL_RelRestOffs3Event();
+ break;
+ default:
+ /*Not accessible to this else (default).*/
+ break;
+ }
+ ZREL_RelMains0Event();
+ break;
+ case ZREL_RELMAINS1:
+ switch( ZREL_RelMainState[ZREL_RELMAINS1F] )
+ {
+ case ZREL_RELRESTONS0:
+ ZREL_RelRestOns0Event();
+ break;
+ default:
+ /*Not accessible to this else (default).*/
+ break;
+ }
+ ZREL_RelMains1Event();
+ break;
+ default:
+ /*Not accessible to this else (default).*/
+ break;
+ }
+}
+
+/****************************************/
+/* Initial function */
+/* STM : RelMain */
+/****************************************/
+void stm_rel_initialize( void )
+{
+ ZREL_RelMainState[ZREL_RELMAIN] = ( uint8_t )ZREL_RELMAINS0;
+ ZREL_RelMainState[ZREL_RELMAINS0F] = ( uint8_t )ZREL_RELRESTOFFS0;
+ ZREL_RelMainState[ZREL_RELMAINS1F] = ( uint8_t )ZREL_RELRESTONS0;
+ ZREL_RelMains0StateEntry();
+}
+
+/****************************************/
+/* Terminate function */
+/* STM : RelMain */
+/****************************************/
+void ZREL_RelMainTerminate( void )
+{
+ ZREL_RelMainState[ZREL_RELMAIN] = ( uint8_t )ZREL_RELMAINTERMINATE;
+}
+
diff --git a/src/policy_manager/stm/zipc/src/StateTransitionor/RestrictionLayer/ZREL_RelMain.h b/src/policy_manager/stm/zipc/src/StateTransitionor/RestrictionLayer/ZREL_RelMain.h
new file mode 100644
index 0000000..ce82e7a
--- /dev/null
+++ b/src/policy_manager/stm/zipc/src/StateTransitionor/RestrictionLayer/ZREL_RelMain.h
@@ -0,0 +1,94 @@
+/************************************************************/
+/* ZREL_RelMain.h */
+/* RelMain State transition model header file */
+/* ZIPC Designer Version 1.2.0 */
+/************************************************************/
+#ifndef ZHEADER_ZREL_RELMAIN_H
+#define ZHEADER_ZREL_RELMAIN_H
+
+/*State management variable access define*/
+#define ZREL_RELMAIN ( 0U )
+#define ZREL_RELMAINS0F ( 1U )
+#define ZREL_RELMAINS1F ( 2U )
+#define ZREL_RELMAINS0 ( 0U )
+#define ZREL_RELRESTOFFS0 ( 0U )
+#define ZREL_RELRESTOFFS1 ( 1U )
+#define ZREL_RELRESTOFFS2 ( 2U )
+#define ZREL_RELRESTOFFS3 ( 3U )
+#define ZREL_RELMAINS1 ( 1U )
+#define ZREL_RELRESTONS0 ( 0U )
+#define ZREL_RELMAINSTATENOMAX ( 3U )
+
+/*End state define*/
+#define ZREL_RELMAINEND ( 4U )
+/*Terminate state define*/
+#define ZREL_RELMAINTERMINATE ( ZREL_RELMAINEND + 1U )
+
+/*State no define*/
+#define ZREL_RELMAINS0STATENO ( 0U )
+#define ZREL_RELRESTOFFS0STATENO ( 0U )
+#define ZREL_RELRESTOFFS1STATENO ( 1U )
+#define ZREL_RELRESTOFFS2STATENO ( 2U )
+#define ZREL_RELRESTOFFS3STATENO ( 3U )
+#define ZREL_RELMAINS1STATENO ( 1U )
+#define ZREL_RELRESTONS0STATENO ( 0U )
+
+/*State serial no define*/
+#define ZREL_RELMAINS0STATESERIALNO ( 0U )
+#define ZREL_RELRESTOFFS0STATESERIALNO ( 1U )
+#define ZREL_RELRESTOFFS1STATESERIALNO ( 2U )
+#define ZREL_RELRESTOFFS2STATESERIALNO ( 3U )
+#define ZREL_RELRESTOFFS3STATESERIALNO ( 4U )
+#define ZREL_RELMAINS1STATESERIALNO ( 5U )
+#define ZREL_RELRESTONS0STATESERIALNO ( 6U )
+
+/*Event no define*/
+#define ZREL_RELMAINE0EVENTNO ( 0U )
+#define ZREL_RELMAINE1EVENTNO ( 1U )
+#define ZREL_RELRESTOFFE0EVENTNO ( 0U )
+#define ZREL_RELRESTOFFE1EVENTNO ( 1U )
+#define ZREL_RELRESTOFFE2EVENTNO ( 2U )
+#define ZREL_RELRESTOFFE3EVENTNO ( 3U )
+#define ZREL_RELRESTOFFE4EVENTNO ( 4U )
+#define ZREL_RELRESTOFFE5EVENTNO ( 5U )
+#define ZREL_RELRESTOFFE6EVENTNO ( 6U )
+#define ZREL_RELRESTOFFE7EVENTNO ( 7U )
+#define ZREL_RELRESTOFFE8EVENTNO ( 8U )
+#define ZREL_RELRESTOFFE9EVENTNO ( 9U )
+#define ZREL_RELRESTOFFE10EVENTNO ( 10U )
+#define ZREL_RELRESTOFFE11EVENTNO ( 11U )
+#define ZREL_RELRESTOFFE12EVENTNO ( 12U )
+#define ZREL_RELRESTOFFE13EVENTNO ( 13U )
+#define ZREL_RELRESTOFFE14EVENTNO ( 14U )
+#define ZREL_RELRESTOFFE15EVENTNO ( 15U )
+#define ZREL_RELRESTOFFE16EVENTNO ( 16U )
+#define ZREL_RELRESTONE0EVENTNO ( 0U )
+
+/*Event serial no define*/
+#define ZREL_RELMAINE0EVENTSERIALNO ( 0U )
+#define ZREL_RELMAINE1EVENTSERIALNO ( 1U )
+#define ZREL_RELRESTOFFE0EVENTNO ( 0U )
+#define ZREL_RELRESTOFFE1EVENTNO ( 1U )
+#define ZREL_RELRESTOFFE2EVENTNO ( 2U )
+#define ZREL_RELRESTOFFE3EVENTNO ( 3U )
+#define ZREL_RELRESTOFFE4EVENTNO ( 4U )
+#define ZREL_RELRESTOFFE5EVENTNO ( 5U )
+#define ZREL_RELRESTOFFE6EVENTNO ( 6U )
+#define ZREL_RELRESTOFFE7EVENTNO ( 7U )
+#define ZREL_RELRESTOFFE8EVENTNO ( 8U )
+#define ZREL_RELRESTOFFE9EVENTNO ( 9U )
+#define ZREL_RELRESTOFFE10EVENTNO ( 10U )
+#define ZREL_RELRESTOFFE11EVENTNO ( 11U )
+#define ZREL_RELRESTOFFE12EVENTNO ( 12U )
+#define ZREL_RELRESTOFFE13EVENTNO ( 13U )
+#define ZREL_RELRESTOFFE14EVENTNO ( 14U )
+#define ZREL_RELRESTOFFE15EVENTNO ( 15U )
+#define ZREL_RELRESTOFFE16EVENTNO ( 16U )
+#define ZREL_RELRESTONE0EVENTNO ( 0U )
+
+/*Extern function*/
+extern void stm_rel_event_call( void );
+extern void stm_rel_initialize( void );
+extern void ZREL_RelMainTerminate( void );
+
+#endif
diff --git a/src/policy_manager/stm/zipc/src/StateTransitionor/RestrictionLayer/ZREL_Restriction_func.c b/src/policy_manager/stm/zipc/src/StateTransitionor/RestrictionLayer/ZREL_Restriction_func.c
new file mode 100644
index 0000000..5195f98
--- /dev/null
+++ b/src/policy_manager/stm/zipc/src/StateTransitionor/RestrictionLayer/ZREL_Restriction_func.c
@@ -0,0 +1,81 @@
+/************************************************************/
+/* ZREL_Restriction_func.c */
+/* Function and variable source file */
+/* ZIPC Designer Version 1.2.0 */
+/************************************************************/
+#include "../ZST_include.h"
+
+/*************************************************************
+ Function definition
+*************************************************************/
+
+/*
+ * @name stm_rel_start_activity_none
+ */
+void stm_rel_start_activity_none() {
+ g_stm_crr_state.layer[StmLayerNoRestriction].state = StmLayoutNoNone;
+ g_stm_crr_state.layer[StmLayerNoRestriction].changed = STM_TRUE;
+}
+
+/*
+ * @name stm_rel_start_activity_restriction_normal
+ */
+void stm_rel_start_activity_restriction_normal() {
+ g_stm_crr_state.layer[StmLayerNoRestriction].state = StmLayoutNoRstNml;
+ g_stm_crr_state.layer[StmLayerNoRestriction].changed = STM_TRUE;
+}
+
+/*
+ * @name stm_rel_start_activity_restriction_split_main
+ */
+void stm_rel_start_activity_restriction_split_main() {
+ g_stm_crr_state.layer[StmLayerNoRestriction].state = StmLayoutNoRstSplMain;
+ g_stm_crr_state.layer[StmLayerNoRestriction].changed = STM_TRUE;
+}
+
+/*
+ * @name stm_rel_start_activity_restriction_split_sub
+ */
+void stm_rel_start_activity_restriction_split_sub() {
+ g_stm_crr_state.layer[StmLayerNoRestriction].state = StmLayoutNoRstSplSub;
+ g_stm_crr_state.layer[StmLayerNoRestriction].changed = STM_TRUE;
+}
+
+/*
+ * @name stm_rel_event_restriction_mode_off
+ */
+void stm_rel_event_restriction_mode_off() {
+ g_stm_crr_state.layer[StmLayerNoRestriction].state = g_prv_restriction_state_rest_mode_1;
+ g_stm_crr_state.layer[StmLayerNoRestriction].changed = STM_TRUE;
+}
+
+/*
+ * @name stm_rel_event_restriction_mode_2_on
+ */
+void stm_rel_event_restriction_mode_2_on() {
+ g_prv_restriction_state_rest_mode_1 = g_stm_prv_state.layer[StmLayerNoRestriction].state;
+}
+
+/*
+ * @name stm_rel_initialize_variable
+ */
+void stm_rel_initialize_variable() {
+ g_stm_prv_state.layer[StmLayerNoRestriction].state = StmLayoutNoNone;
+ g_stm_prv_state.layer[StmLayerNoRestriction].changed = STM_FALSE;
+
+ g_stm_crr_state.layer[StmLayerNoRestriction].state = StmLayoutNoNone;
+ g_stm_crr_state.layer[StmLayerNoRestriction].changed = STM_FALSE;
+}
+
+/*
+ * @name stm_rel_start_stm
+ */
+void stm_rel_start_stm() {
+ if (g_stm_event == StmEvtNoUndo) {
+ // nop
+ }
+ else {
+ g_stm_prv_state.layer[StmLayerNoRestriction].state = g_stm_crr_state.layer[StmLayerNoRestriction].state;
+ }
+ g_stm_crr_state.layer[StmLayerNoRestriction].changed = STM_FALSE;
+}
diff --git a/src/policy_manager/stm/zipc/src/StateTransitionor/RestrictionLayer/ZREL_Restriction_func.h b/src/policy_manager/stm/zipc/src/StateTransitionor/RestrictionLayer/ZREL_Restriction_func.h
new file mode 100644
index 0000000..5cd9b7d
--- /dev/null
+++ b/src/policy_manager/stm/zipc/src/StateTransitionor/RestrictionLayer/ZREL_Restriction_func.h
@@ -0,0 +1,18 @@
+/************************************************************/
+/* ZREL_Restriction_func.h */
+/* Function and variable header file */
+/* ZIPC Designer Version 1.2.0 */
+/************************************************************/
+#ifndef ZHEADER_ZREL_RESTRICTION_FUNC_H
+#define ZHEADER_ZREL_RESTRICTION_FUNC_H
+
+extern void stm_rel_start_activity_none();
+extern void stm_rel_start_activity_restriction_normal();
+extern void stm_rel_start_activity_restriction_split_main();
+extern void stm_rel_start_activity_restriction_split_sub();
+extern void stm_rel_event_restriction_mode_off();
+extern void stm_rel_event_restriction_mode_2_on();
+extern void stm_rel_initialize_variable();
+extern void stm_rel_start_stm();
+
+#endif
diff --git a/src/policy_manager/stm/zipc/src/StateTransitionor/RestrictionMode/ZREM_RestrictionMode.c b/src/policy_manager/stm/zipc/src/StateTransitionor/RestrictionMode/ZREM_RestrictionMode.c
new file mode 100644
index 0000000..7fe5700
--- /dev/null
+++ b/src/policy_manager/stm/zipc/src/StateTransitionor/RestrictionMode/ZREM_RestrictionMode.c
@@ -0,0 +1,168 @@
+/************************************************************/
+/* ZREM_RestrictionMode.c */
+/* RestrictionMode State transition model source file */
+/* ZIPC Designer Version 1.2.0 */
+/************************************************************/
+#include "../ZST_include.h"
+
+/* State management variable */
+static uint8_t ZREM_RestrictionModeState[ZREM_RESTRICTIONMODESTATENOMAX];
+
+static void ZREM_RestrictionModes0e1( void );
+static void ZREM_RestrictionModes0e2( void );
+static void ZREM_RestrictionModes1e0( void );
+static void ZREM_RestrictionModes0Event( void );
+static void ZREM_RestrictionModes1Event( void );
+static void ZREM_RestrictionModes2Event( void );
+
+/****************************************/
+/* Action function */
+/* STM : RestrictionMode */
+/* State : restriction_mode_off( No 0 ) */
+/* Event : evt_restriction_mode_1_on( No 1 ) */
+/****************************************/
+static void ZREM_RestrictionModes0e1( void )
+{
+ ZREM_RestrictionModeState[ZREM_RESTRICTIONMODE] = ( uint8_t )ZREM_RESTRICTIONMODES1;
+ stm_rem_start_activity_restriction_mode_1_on();
+}
+
+/****************************************/
+/* Action function */
+/* STM : RestrictionMode */
+/* State : restriction_mode_off( No 0 ) */
+/* Event : evt_restriction_mode_2_on( No 2 ) */
+/****************************************/
+static void ZREM_RestrictionModes0e2( void )
+{
+ ZREM_RestrictionModeState[ZREM_RESTRICTIONMODE] = ( uint8_t )ZREM_RESTRICTIONMODES2;
+ stm_rem_start_activity_restriction_mode_2_on();
+}
+
+/****************************************/
+/* Action function */
+/* STM : RestrictionMode */
+/* State : restriction_mode_1_on( No 1 ) */
+/* Event : evt_restriction_mode_off( No 0 ) */
+/****************************************/
+static void ZREM_RestrictionModes1e0( void )
+{
+ ZREM_RestrictionModeState[ZREM_RESTRICTIONMODE] = ( uint8_t )ZREM_RESTRICTIONMODES0;
+ stm_rem_start_activity_restriction_mode_off();
+}
+
+/****************************************/
+/* Event appraisal function */
+/* STM : RestrictionMode */
+/* State : restriction_mode_off( No 0 ) */
+/****************************************/
+static void ZREM_RestrictionModes0Event( void )
+{
+ /*evt_restriction_mode_1_on*/
+ if( g_stm_event == StmEvtNoRestrictionMode1On )
+ {
+ ZREM_RestrictionModes0e1();
+ }
+ /*evt_restriction_mode_2_on*/
+ else if( g_stm_event == StmEvtNoRestrictionMode2On )
+ {
+ ZREM_RestrictionModes0e2();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+}
+
+/****************************************/
+/* Event appraisal function */
+/* STM : RestrictionMode */
+/* State : restriction_mode_1_on( No 1 ) */
+/****************************************/
+static void ZREM_RestrictionModes1Event( void )
+{
+ /*evt_restriction_mode_off*/
+ if( g_stm_event == StmEvtNoRestrictionModeOff )
+ {
+ ZREM_RestrictionModes1e0();
+ }
+ /*evt_restriction_mode_2_on*/
+ else if( g_stm_event == StmEvtNoRestrictionMode2On )
+ {
+ ZREM_RestrictionModes0e2();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+}
+
+/****************************************/
+/* Event appraisal function */
+/* STM : RestrictionMode */
+/* State : restriction_mode_2_on( No 2 ) */
+/****************************************/
+static void ZREM_RestrictionModes2Event( void )
+{
+ /*evt_restriction_mode_off*/
+ if( g_stm_event == StmEvtNoRestrictionModeOff )
+ {
+ ZREM_RestrictionModes1e0();
+ }
+ /*evt_restriction_mode_1_on*/
+ else if( g_stm_event == StmEvtNoRestrictionMode1On )
+ {
+ ZREM_RestrictionModes0e1();
+ }
+ else
+ {
+ /*Else and default design have not done.*/
+ /*Please confirm the STM and design else and default.*/
+ }
+}
+
+/****************************************/
+/* Event call function */
+/* STM : RestrictionMode */
+/****************************************/
+void stm_rem_event_call( void )
+{
+ stm_rem_start_stm();
+ switch( ZREM_RestrictionModeState[ZREM_RESTRICTIONMODE] )
+ {
+ case ZREM_RESTRICTIONMODES0:
+ ZREM_RestrictionModes0Event();
+ break;
+ case ZREM_RESTRICTIONMODES1:
+ ZREM_RestrictionModes1Event();
+ break;
+ case ZREM_RESTRICTIONMODES2:
+ ZREM_RestrictionModes2Event();
+ break;
+ default:
+ /*Not accessible to this else (default).*/
+ break;
+ }
+}
+
+/****************************************/
+/* Initial function */
+/* STM : RestrictionMode */
+/****************************************/
+void stm_rem_initialize( void )
+{
+ ZREM_RestrictionModeState[ZREM_RESTRICTIONMODE] = ( uint8_t )ZREM_RESTRICTIONMODES0;
+ stm_rem_start_activity_restriction_mode_off();
+}
+
+/****************************************/
+/* Terminate function */
+/* STM : RestrictionMode */
+/****************************************/
+void ZREM_RestrictionModeTerminate( void )
+{
+ ZREM_RestrictionModeState[ZREM_RESTRICTIONMODE] = ( uint8_t )ZREM_RESTRICTIONMODETERMINATE;
+}
+
diff --git a/src/policy_manager/stm/zipc/src/StateTransitionor/RestrictionMode/ZREM_RestrictionMode.h b/src/policy_manager/stm/zipc/src/StateTransitionor/RestrictionMode/ZREM_RestrictionMode.h
new file mode 100644
index 0000000..f2c2026
--- /dev/null
+++ b/src/policy_manager/stm/zipc/src/StateTransitionor/RestrictionMode/ZREM_RestrictionMode.h
@@ -0,0 +1,46 @@
+/************************************************************/
+/* ZREM_RestrictionMode.h */
+/* RestrictionMode State transition model header file */
+/* ZIPC Designer Version 1.2.0 */
+/************************************************************/
+#ifndef ZHEADER_ZREM_RESTRICTIONMODE_H
+#define ZHEADER_ZREM_RESTRICTIONMODE_H
+
+/*State management variable access define*/
+#define ZREM_RESTRICTIONMODE ( 0U )
+#define ZREM_RESTRICTIONMODES0 ( 0U )
+#define ZREM_RESTRICTIONMODES1 ( 1U )
+#define ZREM_RESTRICTIONMODES2 ( 2U )
+#define ZREM_RESTRICTIONMODESTATENOMAX ( 1U )
+
+/*End state define*/
+#define ZREM_RESTRICTIONMODEEND ( 3U )
+/*Terminate state define*/
+#define ZREM_RESTRICTIONMODETERMINATE ( ZREM_RESTRICTIONMODEEND + 1U )
+
+/*State no define*/
+#define ZREM_RESTRICTIONMODES0STATENO ( 0U )
+#define ZREM_RESTRICTIONMODES1STATENO ( 1U )
+#define ZREM_RESTRICTIONMODES2STATENO ( 2U )
+
+/*State serial no define*/
+#define ZREM_RESTRICTIONMODES0STATESERIALNO ( 0U )
+#define ZREM_RESTRICTIONMODES1STATESERIALNO ( 1U )
+#define ZREM_RESTRICTIONMODES2STATESERIALNO ( 2U )
+
+/*Event no define*/
+#define ZREM_RESTRICTIONMODEE0EVENTNO ( 0U )
+#define ZREM_RESTRICTIONMODEE1EVENTNO ( 1U )
+#define ZREM_RESTRICTIONMODEE2EVENTNO ( 2U )
+
+/*Event serial no define*/
+#define ZREM_RESTRICTIONMODEE0EVENTSERIALNO ( 0U )
+#define ZREM_RESTRICTIONMODEE1EVENTSERIALNO ( 1U )
+#define ZREM_RESTRICTIONMODEE2EVENTSERIALNO ( 2U )
+
+/*Extern function*/
+extern void stm_rem_event_call( void );
+extern void stm_rem_initialize( void );
+extern void ZREM_RestrictionModeTerminate( void );
+
+#endif
diff --git a/src/policy_manager/stm/zipc/src/StateTransitionor/RestrictionMode/ZREM_RestrictionMode_func.c b/src/policy_manager/stm/zipc/src/StateTransitionor/RestrictionMode/ZREM_RestrictionMode_func.c
new file mode 100644
index 0000000..94807f8
--- /dev/null
+++ b/src/policy_manager/stm/zipc/src/StateTransitionor/RestrictionMode/ZREM_RestrictionMode_func.c
@@ -0,0 +1,53 @@
+/************************************************************/
+/* ZREM_RestrictionMode_func.c */
+/* Function and variable source file */
+/* ZIPC Designer Version 1.2.0 */
+/************************************************************/
+#include "../ZST_include.h"
+
+/*************************************************************
+ Function definition
+*************************************************************/
+
+/*
+ * @name stm_rem_start_activity_restriction_mode_1_on
+ */
+void stm_rem_start_activity_restriction_mode_1_on() {
+ g_stm_crr_state.mode[StmModeNoRestrictionMode].state = StmRestrictionModeSttNo1On;
+ g_stm_crr_state.mode[StmModeNoRestrictionMode].changed = STM_TRUE;
+}
+
+/*
+ * @name stm_rem_start_activity_restriction_mode_2_on
+ */
+void stm_rem_start_activity_restriction_mode_2_on() {
+ g_stm_crr_state.mode[StmModeNoRestrictionMode].state = StmRestrictionModeSttNo2On;
+ g_stm_crr_state.mode[StmModeNoRestrictionMode].changed = STM_TRUE;
+}
+
+/*
+ * @name stm_rem_start_activity_restriction_mode_off
+ */
+void stm_rem_start_activity_restriction_mode_off() {
+ g_stm_crr_state.mode[StmModeNoRestrictionMode].state = StmRestrictionModeSttNoOff;
+ g_stm_crr_state.mode[StmModeNoRestrictionMode].changed = STM_TRUE;
+}
+
+/*
+ * @name stm_rem_initialize_variable
+ */
+void stm_rem_initialize_variable() {
+ g_stm_prv_state.mode[StmModeNoRestrictionMode].state = StmRestrictionModeSttNoOff;
+ g_stm_prv_state.mode[StmModeNoRestrictionMode].changed = STM_FALSE;
+
+ g_stm_crr_state.mode[StmModeNoRestrictionMode].state = StmRestrictionModeSttNoOff;
+ g_stm_crr_state.mode[StmModeNoRestrictionMode].changed = STM_FALSE;
+}
+
+/*
+ * @name stm_rem_start_stm
+ */
+void stm_rem_start_stm() {
+ g_stm_prv_state.mode[StmModeNoRestrictionMode].state = g_stm_crr_state.mode[StmModeNoRestrictionMode].state;
+ g_stm_crr_state.mode[StmModeNoRestrictionMode].changed = STM_FALSE;
+}
diff --git a/src/policy_manager/stm/zipc/src/StateTransitionor/RestrictionMode/ZREM_RestrictionMode_func.h b/src/policy_manager/stm/zipc/src/StateTransitionor/RestrictionMode/ZREM_RestrictionMode_func.h
new file mode 100644
index 0000000..f85ab14
--- /dev/null
+++ b/src/policy_manager/stm/zipc/src/StateTransitionor/RestrictionMode/ZREM_RestrictionMode_func.h
@@ -0,0 +1,15 @@
+/************************************************************/
+/* ZREM_RestrictionMode_func.h */
+/* Function and variable header file */
+/* ZIPC Designer Version 1.2.0 */
+/************************************************************/
+#ifndef ZHEADER_ZREM_RESTRICTIONMODE_FUNC_H
+#define ZHEADER_ZREM_RESTRICTIONMODE_FUNC_H
+
+extern void stm_rem_start_activity_restriction_mode_1_on();
+extern void stm_rem_start_activity_restriction_mode_2_on();
+extern void stm_rem_start_activity_restriction_mode_off();
+extern void stm_rem_initialize_variable();
+extern void stm_rem_start_stm();
+
+#endif
diff --git a/src/policy_manager/stm/zipc/src/StateTransitionor/ZST_StateTransitionor_def.h b/src/policy_manager/stm/zipc/src/StateTransitionor/ZST_StateTransitionor_def.h
new file mode 100644
index 0000000..cad7a26
--- /dev/null
+++ b/src/policy_manager/stm/zipc/src/StateTransitionor/ZST_StateTransitionor_def.h
@@ -0,0 +1,160 @@
+/************************************************************/
+/* ZST_StateTransitionor_def.h */
+/* Define header file */
+/* ZIPC Designer Version 1.2.0 */
+/************************************************************/
+#ifndef ZHEADER_ZST_STATETRANSITIONOR_DEF_H
+#define ZHEADER_ZST_STATETRANSITIONOR_DEF_H
+
+/*************************************************************
+ Define definition
+*************************************************************/
+
+
+#define STM_TRUE 1
+#define STM_FALSE 0
+
+#define STM_CREATE_EVENT_ID(evt, ctg, area) \
+ ((evt) | ((ctg) << 8) | ((area) << 16))
+
+#define STM_GET_EVENT_FROM_ID(id) \
+ ((id) & 0xFF)
+
+#define STM_GET_CATEGORY_FROM_ID(id) \
+ (((id) >> 8) & 0xFF)
+
+#define STM_GET_AREA_FROM_ID(id) \
+ (((id) >> 16) & 0xFF)
+
+// Event number
+enum StmEvtNo {
+ StmEvtNoNone = 0,
+ StmEvtNoActivate,
+ StmEvtNoDeactivate,
+ StmEvtNoRestrictionModeOff,
+ StmEvtNoRestrictionMode1On,
+ StmEvtNoRestrictionMode2On,
+ StmEvtNoUndo,
+
+ StmEvtNoNum,
+
+ StmEvtNoMin = StmEvtNoNone,
+ StmEvtNoMax = StmEvtNoNum - 1,
+};
+
+// Category number
+enum StmCtgNo {
+ StmCtgNoNone = 0,
+ StmCtgNoHomescreen,
+ StmCtgNoMap,
+ StmCtgNoGeneral,
+ StmCtgNoSplitable,
+ StmCtgNoPopUp,
+ StmCtgNoSystemAlert,
+ StmCtgNoRestriction,
+ StmCtgNoSystem,
+ StmCtgNoSoftwareKeyboard,
+
+ StmCtgNoNum,
+
+ StmCtgNoMin = StmCtgNoNone,
+ StmCtgNoMax = StmCtgNoNum - 1,
+};
+
+// Area number
+enum StmAreaNo {
+ StmAreaNoNone = 0,
+ StmAreaNoFullscreen,
+ StmAreaNoNormal,
+ StmAreaNoSplitMain,
+ StmAreaNoSplitSub,
+ StmAreaNoOnScreen,
+ StmAreaNoRestrictionNormal,
+ StmAreaNoRestrictionSplitMain,
+ StmAreaNoRestrictionSplitSub,
+ StmAreaNoSoftwareKyeboard,
+
+ StmAreaNoNum,
+
+ StmAreaNoMin = StmAreaNoNone,
+ StmAreaNoMax = StmAreaNoNum - 1,
+};
+
+// Layer number
+enum StmLayerNo {
+ StmLayerNoHomescreen = 0,
+ StmLayerNoApps,
+ StmLayerNoNearHomescreen,
+ StmLayerNoRestriction,
+ StmLayerNoOnScreen,
+
+ StmLayerNoNum,
+
+ StmLayerNoMin = StmLayerNoHomescreen,
+ StmLayerNoMax = StmLayerNoNum - 1,
+};
+
+// Layout kind number
+enum StmLayoutNo {
+ StmLayoutNoNone = 0,
+ StmLayoutNoPopUp,
+ StmLayoutNoSysAlt,
+ StmLayoutNoMapNml,
+ StmLayoutNoMapSpl,
+ StmLayoutNoMapFll,
+ StmLayoutNoSplNml,
+ StmLayoutNoSplSpl,
+ StmLayoutNoGenNml,
+ StmLayoutNoHms,
+ StmLayoutNoRstNml,
+ StmLayoutNoRstSplMain,
+ StmLayoutNoRstSplSub,
+ StmLayoutNoSysNml,
+ StmLayoutNoSftKbd,
+
+ StmLayoutNoNum,
+
+ StmLayoutNoMin = StmLayoutNoNone,
+ StmLayoutNoMax = StmLayoutNoNum - 1,
+};
+
+// Mode kind number
+enum StmModeNo {
+ StmModeNoRestrictionMode = 0,
+
+ StmModeNoNum,
+
+ StmModeNoMin = StmModeNoRestrictionMode,
+ StmModeNoMax = StmModeNoNum - 1,
+};
+
+// Enum for mode state
+enum StmRestrictionModeSttNo {
+ StmRestrictionModeSttNoOff = 0,
+ StmRestrictionModeSttNo1On,
+ StmRestrictionModeSttNo2On,
+};
+
+// String for state
+extern const char* kStmEventName[];
+extern const char* kStmCategoryName[];
+extern const char* kStmAreaName[];
+extern const char* kStmLayoutName[];
+extern const char* kStmLayerName[];
+extern const char* kStmModeName[];
+extern const char** kStmModeStateNameList[];
+
+// Struct for state
+typedef struct StmBaseState {
+ int changed;
+ int state;
+} StmBaseState;
+
+typedef struct StmState {
+ StmBaseState mode[StmModeNoNum];
+ StmBaseState layer[StmLayerNoNum];
+} StmState;
+
+
+
+#endif
diff --git a/src/policy_manager/stm/zipc/src/StateTransitionor/ZST_StateTransitionor_func.c b/src/policy_manager/stm/zipc/src/StateTransitionor/ZST_StateTransitionor_func.c
new file mode 100644
index 0000000..77db170
--- /dev/null
+++ b/src/policy_manager/stm/zipc/src/StateTransitionor/ZST_StateTransitionor_func.c
@@ -0,0 +1,187 @@
+/************************************************************/
+/* ZST_StateTransitionor_func.c */
+/* Function and variable source file */
+/* ZIPC Designer Version 1.2.0 */
+/************************************************************/
+#include "ZST_include.h"
+
+/*************************************************************
+ Function definition
+*************************************************************/
+
+#include <string.h>
+
+
+const char* kStmEventName[] = {
+ "none",
+ "activate",
+ "deactivate",
+ "restriction_mode_off",
+ "restriction_mode_1_on",
+ "restriction_mode_2_on",
+ "undo",
+};
+
+const char* kStmCategoryName[] = {
+ "none",
+ "homescreen",
+ "map",
+ "general",
+ "splitable",
+ "pop_up",
+ "system_alert",
+ "restriction",
+ "system",
+ "software_keyboard",
+};
+
+const char* kStmAreaName[] = {
+ "none",
+ "fullscreen",
+ "normal.full",
+ "split.main",
+ "split.sub",
+ "on_screen",
+ "restriction.normal",
+ "restriction.split.main",
+ "restriction.split.sub",
+ "software_keyboard",
+};
+
+const char* kStmLayoutName[] = {
+ "none",
+ "pop_up",
+ "system_alert",
+ "map.normal",
+ "map.split",
+ "map.fullscreen",
+ "splitable.normal",
+ "splitable.split",
+ "general.normal",
+ "homescreen",
+ "restriction.normal",
+ "restriction.split.main",
+ "restriction.split.sub",
+ "system.normal",
+ "software_keyboard",
+};
+
+const char* kStmLayerName[] = {
+ "homescreen",
+ "apps",
+ "near_homescreen",
+ "restriction",
+ "on_screen",
+};
+
+const char* kStmModeName[] = {
+ "trans_gear",
+ "parking_brake",
+ "accel_pedal",
+ "running",
+ "lamp",
+ "lightstatus_brake",
+ "restriction_mode",
+};
+
+const char* kStmRestrictionModeStateName[] = {
+ "off",
+ "1on",
+ "2on",
+};
+
+const char** kStmModeStateNameList[] = {
+ kStmRestrictionModeStateName,
+};
+
+
+//=================================
+// API
+//=================================
+/**
+ * Initialize STM
+ */
+void stmInitialize() {
+ // Initialize previous state
+ memset(&g_stm_prv_state, 0, sizeof(g_stm_prv_state));
+
+ // Initialize current state
+ g_stm_crr_state = g_stm_prv_state;
+
+ /* Initialize restriction mode state */
+ stm_rem_initialize();
+ stm_rem_initialize_variable();
+
+ // Initialize homecsreen layer
+ stm_hsl_initialize();
+ stm_hsl_initialize_variable();
+
+ // Initialize apps layer
+ stm_apl_initialize();
+ stm_apl_initialize_variable();
+
+ // Initialize near_homecsreen layer
+ stm_nhl_initialize();
+ stm_nhl_initialize_variable();
+
+ /* Initialize restriction layer */
+ stm_rel_initialize();
+ stm_rel_initialize_variable();
+
+ g_stm_map_is_activated = STM_FALSE;
+}
+
+/**
+ * Transition State
+ */
+int stmTransitionState(int event_id, StmState* state) {
+ g_stm_event = STM_GET_EVENT_FROM_ID(event_id);
+ g_stm_category = STM_GET_CATEGORY_FROM_ID(event_id);
+ g_stm_area = STM_GET_AREA_FROM_ID(event_id);
+
+ // restriction mode
+ stm_rem_event_call();
+
+ // homescreen layer
+ stm_hsl_event_call();
+
+ // apps layer
+ stm_apl_event_call();
+
+ // near_homecsreen layer
+ stm_nhl_event_call();
+
+ // restriction layer
+ stm_rel_event_call();
+
+ // on_screen layer
+ stm_osl_event_call();
+
+ // Copy current state for return
+ memcpy(state, &g_stm_crr_state, sizeof(g_stm_crr_state));
+
+ return 0;
+}
+
+/**
+ * Undo State
+ */
+void stmUndoState() {
+ g_stm_event = StmEvtNoUndo;
+
+ // apps layer
+ stm_apl_event_call();
+
+ // near_homecsreen layer
+ stm_nhl_event_call();
+
+ // restriction layer
+ stm_rel_event_call();
+
+ // on_screen layer
+ stm_osl_event_call();
+
+ g_stm_crr_state = g_stm_prv_state;
+}
+
+
diff --git a/src/policy_manager/stm/zipc/src/StateTransitionor/ZST_StateTransitionor_func.h b/src/policy_manager/stm/zipc/src/StateTransitionor/ZST_StateTransitionor_func.h
new file mode 100644
index 0000000..b8b46ab
--- /dev/null
+++ b/src/policy_manager/stm/zipc/src/StateTransitionor/ZST_StateTransitionor_func.h
@@ -0,0 +1,13 @@
+/************************************************************/
+/* ZST_StateTransitionor_func.h */
+/* Function and variable header file */
+/* ZIPC Designer Version 1.2.0 */
+/************************************************************/
+#ifndef ZHEADER_ZST_STATETRANSITIONOR_FUNC_H
+#define ZHEADER_ZST_STATETRANSITIONOR_FUNC_H
+
+extern void stmInitialize();
+extern int stmTransitionState(int event_id, StmState* state);
+extern void stmUndoState();
+
+#endif
diff --git a/src/policy_manager/stm/zipc/src/StateTransitionor/ZST_StateTransitionor_var.c b/src/policy_manager/stm/zipc/src/StateTransitionor/ZST_StateTransitionor_var.c
new file mode 100644
index 0000000..b3a2273
--- /dev/null
+++ b/src/policy_manager/stm/zipc/src/StateTransitionor/ZST_StateTransitionor_var.c
@@ -0,0 +1,56 @@
+/************************************************************/
+/* ZST_StateTransitionor_var.c */
+/* Function and variable source file */
+/* ZIPC Designer Version 1.2.0 */
+/************************************************************/
+#include "ZST_include.h"
+
+/*************************************************************
+ Variable definition
+*************************************************************/
+
+// Current state
+StmState g_stm_crr_state;
+
+// Previous state
+StmState g_stm_prv_state;
+
+/**
+ * g_stm_event
+ */
+int g_stm_event;
+
+/**
+ * g_stm_category
+ */
+int g_stm_category;
+
+/**
+ * g_stm_area
+ */
+int g_stm_area;
+
+/**
+ * g_stm_map_is_activated
+ */
+int g_stm_map_is_activated;
+
+/**
+ * g_prv_apps_state_rest_mode_1
+ */
+int g_prv_apps_state_rest_mode_1;
+
+/**
+ * g_prv_near_homescreen_state_rest_mode_1
+ */
+int g_prv_near_homescreen_state_rest_mode_1;
+
+/**
+ * g_prv_restriction_state_rest_mode_1
+ */
+int g_prv_restriction_state_rest_mode_1;
+
+/**
+ * g_prv_on_screen_state_rest_mode_1
+ */
+int g_prv_on_screen_state_rest_mode_1;
diff --git a/src/policy_manager/stm/zipc/src/StateTransitionor/ZST_StateTransitionor_var.h b/src/policy_manager/stm/zipc/src/StateTransitionor/ZST_StateTransitionor_var.h
new file mode 100644
index 0000000..57b52ee
--- /dev/null
+++ b/src/policy_manager/stm/zipc/src/StateTransitionor/ZST_StateTransitionor_var.h
@@ -0,0 +1,20 @@
+/************************************************************/
+/* ZST_StateTransitionor_var.h */
+/* Function and variable header file */
+/* ZIPC Designer Version 1.2.0 */
+/************************************************************/
+#ifndef ZHEADER_ZST_STATETRANSITIONOR_VAR_H
+#define ZHEADER_ZST_STATETRANSITIONOR_VAR_H
+
+extern StmState g_stm_crr_state;
+extern StmState g_stm_prv_state;
+extern int g_stm_event;
+extern int g_stm_category;
+extern int g_stm_area;
+extern int g_stm_map_is_activated;
+extern int g_prv_apps_state_rest_mode_1;
+extern int g_prv_near_homescreen_state_rest_mode_1;
+extern int g_prv_restriction_state_rest_mode_1;
+extern int g_prv_on_screen_state_rest_mode_1;
+
+#endif
diff --git a/src/policy_manager/stm/zipc/src/StateTransitionor/ZST_include.h b/src/policy_manager/stm/zipc/src/StateTransitionor/ZST_include.h
new file mode 100644
index 0000000..e3d1572
--- /dev/null
+++ b/src/policy_manager/stm/zipc/src/StateTransitionor/ZST_include.h
@@ -0,0 +1,29 @@
+/************************************************************/
+/* ZST_include.h */
+/* Functional block ST include file */
+/* ZIPC Designer Version 1.2.0 */
+/************************************************************/
+
+#ifndef ZHEADER_ZST_INCLUDE_H
+#define ZHEADER_ZST_INCLUDE_H
+
+#include "../Common/ZCommonInclude.h"
+#include "../Common/MisraCType.h"
+#include "../Common/Event.h"
+#include "ZST_StateTransitionor_def.h"
+#include "ZST_StateTransitionor_func.h"
+#include "ZST_StateTransitionor_var.h"
+#include "AppsLayer/ZAPL_Apps_func.h"
+#include "OnScreenlayer/ZOSL_OnScreen_func.h"
+#include "HomeScreenLayer/ZHSL_HomeScreen_func.h"
+#include "RestrictionLayer/ZREL_Restriction_func.h"
+#include "RestrictionMode/ZREM_RestrictionMode_func.h"
+#include "NearHomeScreen/ZNHL_NearHomeScreen_func.h"
+#include "AppsLayer/ZAPL_AppsLayer.h"
+#include "OnScreenlayer/ZOSL_OslMain.h"
+#include "HomeScreenLayer/ZHSL_HomeScreen.h"
+#include "RestrictionLayer/ZREL_RelMain.h"
+#include "RestrictionMode/ZREM_RestrictionMode.h"
+#include "NearHomeScreen/ZNHL_NearHomescreen.h"
+
+#endif
diff --git a/src/policy_manager/stm/zipc/src/include/stm.h b/src/policy_manager/stm/zipc/src/include/stm.h
new file mode 100644
index 0000000..dadfad3
--- /dev/null
+++ b/src/policy_manager/stm/zipc/src/include/stm.h
@@ -0,0 +1,22 @@
+/*
+ * Copyright (c) 2018 TOYOTA MOTOR CORPORATION
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef TMCAGLWM_STM_HPP
+#define TMCAGLWM_STM_HPP
+
+#include "../StateTransitionor/ZST_include.h"
+
+#endif // TMCAGLWM_STM_HPP