Add policy table generated by ZIPC for EXAMPLE sandbox/yuta-d/add_pm
authorYuta Doi <yuta-d@witz-inc.co.jp>
Wed, 11 Jul 2018 07:21:37 +0000 (16:21 +0900)
committerYuta Doi <yuta-d@witz-inc.co.jp>
Mon, 23 Jul 2018 13:04:25 +0000 (22:04 +0900)
To PolicyManager, add the source code of policy table
which is generated by ZIPC for EXAMPLE.

If use this example,
please comment out line 22 and uncomment line 23
in policy_manager/CMakeLists.txt as follows:
  #set(USE_STM_NAME stub)
  set(USE_STM_NAME zipc)

If try to show split layout,
please rename from roles.db.split to roles.db in policy_manager/db/.

Bug-AGL: SPEC-1537

Change-Id: I4b35f148313e0c5a12c59ed1c2f8eb6fbcf3ea6b
Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
35 files changed:
policy_manager/stm/zipc/CMakeLists.txt [new file with mode: 0644]
policy_manager/stm/zipc/include/stm.h [new file with mode: 0644]
policy_manager/stm/zipc/src/Common/Event.h [new file with mode: 0644]
policy_manager/stm/zipc/src/Common/MisraCType.h [new file with mode: 0644]
policy_manager/stm/zipc/src/Common/ZCommonInclude.h [new file with mode: 0644]
policy_manager/stm/zipc/src/StateTransitionor/AppsLayer/ZAPL_AppsLayer.c [new file with mode: 0644]
policy_manager/stm/zipc/src/StateTransitionor/AppsLayer/ZAPL_AppsLayer.h [new file with mode: 0644]
policy_manager/stm/zipc/src/StateTransitionor/AppsLayer/ZAPL_Apps_func.c [new file with mode: 0644]
policy_manager/stm/zipc/src/StateTransitionor/AppsLayer/ZAPL_Apps_func.h [new file with mode: 0644]
policy_manager/stm/zipc/src/StateTransitionor/HomeScreenLayer/ZHSL_HomeScreen.c [new file with mode: 0644]
policy_manager/stm/zipc/src/StateTransitionor/HomeScreenLayer/ZHSL_HomeScreen.h [new file with mode: 0644]
policy_manager/stm/zipc/src/StateTransitionor/HomeScreenLayer/ZHSL_HomeScreen_func.c [new file with mode: 0644]
policy_manager/stm/zipc/src/StateTransitionor/HomeScreenLayer/ZHSL_HomeScreen_func.h [new file with mode: 0644]
policy_manager/stm/zipc/src/StateTransitionor/NearHomeScreen/ZNHL_NearHomeScreen_func.c [new file with mode: 0644]
policy_manager/stm/zipc/src/StateTransitionor/NearHomeScreen/ZNHL_NearHomeScreen_func.h [new file with mode: 0644]
policy_manager/stm/zipc/src/StateTransitionor/NearHomeScreen/ZNHL_NearHomescreen.c [new file with mode: 0644]
policy_manager/stm/zipc/src/StateTransitionor/NearHomeScreen/ZNHL_NearHomescreen.h [new file with mode: 0644]
policy_manager/stm/zipc/src/StateTransitionor/OnScreenlayer/ZOSL_OnScreen_func.c [new file with mode: 0644]
policy_manager/stm/zipc/src/StateTransitionor/OnScreenlayer/ZOSL_OnScreen_func.h [new file with mode: 0644]
policy_manager/stm/zipc/src/StateTransitionor/OnScreenlayer/ZOSL_OslMain.c [new file with mode: 0644]
policy_manager/stm/zipc/src/StateTransitionor/OnScreenlayer/ZOSL_OslMain.h [new file with mode: 0644]
policy_manager/stm/zipc/src/StateTransitionor/RestrictionLayer/ZREL_RelMain.c [new file with mode: 0644]
policy_manager/stm/zipc/src/StateTransitionor/RestrictionLayer/ZREL_RelMain.h [new file with mode: 0644]
policy_manager/stm/zipc/src/StateTransitionor/RestrictionLayer/ZREL_Restriction_func.c [new file with mode: 0644]
policy_manager/stm/zipc/src/StateTransitionor/RestrictionLayer/ZREL_Restriction_func.h [new file with mode: 0644]
policy_manager/stm/zipc/src/StateTransitionor/RestrictionMode/ZREM_RestrictionMode.c [new file with mode: 0644]
policy_manager/stm/zipc/src/StateTransitionor/RestrictionMode/ZREM_RestrictionMode.h [new file with mode: 0644]
policy_manager/stm/zipc/src/StateTransitionor/RestrictionMode/ZREM_RestrictionMode_func.c [new file with mode: 0644]
policy_manager/stm/zipc/src/StateTransitionor/RestrictionMode/ZREM_RestrictionMode_func.h [new file with mode: 0644]
policy_manager/stm/zipc/src/StateTransitionor/ZST_StateTransitionor_def.h [new file with mode: 0644]
policy_manager/stm/zipc/src/StateTransitionor/ZST_StateTransitionor_func.c [new file with mode: 0644]
policy_manager/stm/zipc/src/StateTransitionor/ZST_StateTransitionor_func.h [new file with mode: 0644]
policy_manager/stm/zipc/src/StateTransitionor/ZST_StateTransitionor_var.c [new file with mode: 0644]
policy_manager/stm/zipc/src/StateTransitionor/ZST_StateTransitionor_var.h [new file with mode: 0644]
policy_manager/stm/zipc/src/StateTransitionor/ZST_include.h [new file with mode: 0644]

diff --git a/policy_manager/stm/zipc/CMakeLists.txt b/policy_manager/stm/zipc/CMakeLists.txt
new file mode 100644 (file)
index 0000000..570ff3d
--- /dev/null
@@ -0,0 +1,72 @@
+#
+# 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.
+#
+
+set(TARGETS_STM pmstm)
+
+set(ST_DIR     src/StateTransitionor)
+set(ST_DIR_CMN src/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} STATIC
+   ${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
+)
diff --git a/policy_manager/stm/zipc/include/stm.h b/policy_manager/stm/zipc/include/stm.h
new file mode 100644 (file)
index 0000000..8444d66
--- /dev/null
@@ -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 "../src/StateTransitionor/ZST_include.h"
+
+#endif  // TMCAGLWM_STM_HPP
diff --git a/policy_manager/stm/zipc/src/Common/Event.h b/policy_manager/stm/zipc/src/Common/Event.h
new file mode 100644 (file)
index 0000000..3601b08
--- /dev/null
@@ -0,0 +1,6 @@
+#ifndef ZHEADER_EVENT_H
+#define ZHEADER_EVENT_H
+
+#define ZEVENT_NULL ( 0U )
+
+#endif
diff --git a/policy_manager/stm/zipc/src/Common/MisraCType.h b/policy_manager/stm/zipc/src/Common/MisraCType.h
new file mode 100644 (file)
index 0000000..5a535fb
--- /dev/null
@@ -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/policy_manager/stm/zipc/src/Common/ZCommonInclude.h b/policy_manager/stm/zipc/src/Common/ZCommonInclude.h
new file mode 100644 (file)
index 0000000..6b9b84b
--- /dev/null
@@ -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/policy_manager/stm/zipc/src/StateTransitionor/AppsLayer/ZAPL_AppsLayer.c b/policy_manager/stm/zipc/src/StateTransitionor/AppsLayer/ZAPL_AppsLayer.c
new file mode 100644 (file)
index 0000000..b6891e8
--- /dev/null
@@ -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/policy_manager/stm/zipc/src/StateTransitionor/AppsLayer/ZAPL_AppsLayer.h b/policy_manager/stm/zipc/src/StateTransitionor/AppsLayer/ZAPL_AppsLayer.h
new file mode 100644 (file)
index 0000000..4cbbc10
--- /dev/null
@@ -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/policy_manager/stm/zipc/src/StateTransitionor/AppsLayer/ZAPL_Apps_func.c b/policy_manager/stm/zipc/src/StateTransitionor/AppsLayer/ZAPL_Apps_func.c
new file mode 100644 (file)
index 0000000..b42df05
--- /dev/null
@@ -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/policy_manager/stm/zipc/src/StateTransitionor/AppsLayer/ZAPL_Apps_func.h b/policy_manager/stm/zipc/src/StateTransitionor/AppsLayer/ZAPL_Apps_func.h
new file mode 100644 (file)
index 0000000..6f741b5
--- /dev/null
@@ -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/policy_manager/stm/zipc/src/StateTransitionor/HomeScreenLayer/ZHSL_HomeScreen.c b/policy_manager/stm/zipc/src/StateTransitionor/HomeScreenLayer/ZHSL_HomeScreen.c
new file mode 100644 (file)
index 0000000..a4cd474
--- /dev/null
@@ -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/policy_manager/stm/zipc/src/StateTransitionor/HomeScreenLayer/ZHSL_HomeScreen.h b/policy_manager/stm/zipc/src/StateTransitionor/HomeScreenLayer/ZHSL_HomeScreen.h
new file mode 100644 (file)
index 0000000..ffa8552
--- /dev/null
@@ -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/policy_manager/stm/zipc/src/StateTransitionor/HomeScreenLayer/ZHSL_HomeScreen_func.c b/policy_manager/stm/zipc/src/StateTransitionor/HomeScreenLayer/ZHSL_HomeScreen_func.c
new file mode 100644 (file)
index 0000000..4d50ab0
--- /dev/null
@@ -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/policy_manager/stm/zipc/src/StateTransitionor/HomeScreenLayer/ZHSL_HomeScreen_func.h b/policy_manager/stm/zipc/src/StateTransitionor/HomeScreenLayer/ZHSL_HomeScreen_func.h
new file mode 100644 (file)
index 0000000..d5f4ab9
--- /dev/null
@@ -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/policy_manager/stm/zipc/src/StateTransitionor/NearHomeScreen/ZNHL_NearHomeScreen_func.c b/policy_manager/stm/zipc/src/StateTransitionor/NearHomeScreen/ZNHL_NearHomeScreen_func.c
new file mode 100644 (file)
index 0000000..c8ba22f
--- /dev/null
@@ -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/policy_manager/stm/zipc/src/StateTransitionor/NearHomeScreen/ZNHL_NearHomeScreen_func.h b/policy_manager/stm/zipc/src/StateTransitionor/NearHomeScreen/ZNHL_NearHomeScreen_func.h
new file mode 100644 (file)
index 0000000..d2b13f7
--- /dev/null
@@ -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/policy_manager/stm/zipc/src/StateTransitionor/NearHomeScreen/ZNHL_NearHomescreen.c b/policy_manager/stm/zipc/src/StateTransitionor/NearHomeScreen/ZNHL_NearHomescreen.c
new file mode 100644 (file)
index 0000000..cc3bbc7
--- /dev/null
@@ -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/policy_manager/stm/zipc/src/StateTransitionor/NearHomeScreen/ZNHL_NearHomescreen.h b/policy_manager/stm/zipc/src/StateTransitionor/NearHomeScreen/ZNHL_NearHomescreen.h
new file mode 100644 (file)
index 0000000..f23775e
--- /dev/null
@@ -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/policy_manager/stm/zipc/src/StateTransitionor/OnScreenlayer/ZOSL_OnScreen_func.c b/policy_manager/stm/zipc/src/StateTransitionor/OnScreenlayer/ZOSL_OnScreen_func.c
new file mode 100644 (file)
index 0000000..90a6f6f
--- /dev/null
@@ -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/policy_manager/stm/zipc/src/StateTransitionor/OnScreenlayer/ZOSL_OnScreen_func.h b/policy_manager/stm/zipc/src/StateTransitionor/OnScreenlayer/ZOSL_OnScreen_func.h
new file mode 100644 (file)
index 0000000..e85accb
--- /dev/null
@@ -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/policy_manager/stm/zipc/src/StateTransitionor/OnScreenlayer/ZOSL_OslMain.c b/policy_manager/stm/zipc/src/StateTransitionor/OnScreenlayer/ZOSL_OslMain.c
new file mode 100644 (file)
index 0000000..53a50e1
--- /dev/null
@@ -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/policy_manager/stm/zipc/src/StateTransitionor/OnScreenlayer/ZOSL_OslMain.h b/policy_manager/stm/zipc/src/StateTransitionor/OnScreenlayer/ZOSL_OslMain.h
new file mode 100644 (file)
index 0000000..ee45304
--- /dev/null
@@ -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/policy_manager/stm/zipc/src/StateTransitionor/RestrictionLayer/ZREL_RelMain.c b/policy_manager/stm/zipc/src/StateTransitionor/RestrictionLayer/ZREL_RelMain.c
new file mode 100644 (file)
index 0000000..6d07643
--- /dev/null
@@ -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/policy_manager/stm/zipc/src/StateTransitionor/RestrictionLayer/ZREL_RelMain.h b/policy_manager/stm/zipc/src/StateTransitionor/RestrictionLayer/ZREL_RelMain.h
new file mode 100644 (file)
index 0000000..ce82e7a
--- /dev/null
@@ -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/policy_manager/stm/zipc/src/StateTransitionor/RestrictionLayer/ZREL_Restriction_func.c b/policy_manager/stm/zipc/src/StateTransitionor/RestrictionLayer/ZREL_Restriction_func.c
new file mode 100644 (file)
index 0000000..5195f98
--- /dev/null
@@ -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/policy_manager/stm/zipc/src/StateTransitionor/RestrictionLayer/ZREL_Restriction_func.h b/policy_manager/stm/zipc/src/StateTransitionor/RestrictionLayer/ZREL_Restriction_func.h
new file mode 100644 (file)
index 0000000..5cd9b7d
--- /dev/null
@@ -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/policy_manager/stm/zipc/src/StateTransitionor/RestrictionMode/ZREM_RestrictionMode.c b/policy_manager/stm/zipc/src/StateTransitionor/RestrictionMode/ZREM_RestrictionMode.c
new file mode 100644 (file)
index 0000000..7fe5700
--- /dev/null
@@ -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/policy_manager/stm/zipc/src/StateTransitionor/RestrictionMode/ZREM_RestrictionMode.h b/policy_manager/stm/zipc/src/StateTransitionor/RestrictionMode/ZREM_RestrictionMode.h
new file mode 100644 (file)
index 0000000..f2c2026
--- /dev/null
@@ -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/policy_manager/stm/zipc/src/StateTransitionor/RestrictionMode/ZREM_RestrictionMode_func.c b/policy_manager/stm/zipc/src/StateTransitionor/RestrictionMode/ZREM_RestrictionMode_func.c
new file mode 100644 (file)
index 0000000..94807f8
--- /dev/null
@@ -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/policy_manager/stm/zipc/src/StateTransitionor/RestrictionMode/ZREM_RestrictionMode_func.h b/policy_manager/stm/zipc/src/StateTransitionor/RestrictionMode/ZREM_RestrictionMode_func.h
new file mode 100644 (file)
index 0000000..f85ab14
--- /dev/null
@@ -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/policy_manager/stm/zipc/src/StateTransitionor/ZST_StateTransitionor_def.h b/policy_manager/stm/zipc/src/StateTransitionor/ZST_StateTransitionor_def.h
new file mode 100644 (file)
index 0000000..cad7a26
--- /dev/null
@@ -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/policy_manager/stm/zipc/src/StateTransitionor/ZST_StateTransitionor_func.c b/policy_manager/stm/zipc/src/StateTransitionor/ZST_StateTransitionor_func.c
new file mode 100644 (file)
index 0000000..77db170
--- /dev/null
@@ -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/policy_manager/stm/zipc/src/StateTransitionor/ZST_StateTransitionor_func.h b/policy_manager/stm/zipc/src/StateTransitionor/ZST_StateTransitionor_func.h
new file mode 100644 (file)
index 0000000..b8b46ab
--- /dev/null
@@ -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/policy_manager/stm/zipc/src/StateTransitionor/ZST_StateTransitionor_var.c b/policy_manager/stm/zipc/src/StateTransitionor/ZST_StateTransitionor_var.c
new file mode 100644 (file)
index 0000000..b3a2273
--- /dev/null
@@ -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/policy_manager/stm/zipc/src/StateTransitionor/ZST_StateTransitionor_var.h b/policy_manager/stm/zipc/src/StateTransitionor/ZST_StateTransitionor_var.h
new file mode 100644 (file)
index 0000000..57b52ee
--- /dev/null
@@ -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/policy_manager/stm/zipc/src/StateTransitionor/ZST_include.h b/policy_manager/stm/zipc/src/StateTransitionor/ZST_include.h
new file mode 100644 (file)
index 0000000..e3d1572
--- /dev/null
@@ -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