• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2022 Huawei Device Co., Ltd.
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at
6  *
7  *     http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15 
16 #ifndef RESSCHED_INTERFACES_INNERKITS_RESSCHED_CLIENT_INCLUDE_RES_TYPE_H
17 #define RESSCHED_INTERFACES_INNERKITS_RESSCHED_CLIENT_INCLUDE_RES_TYPE_H
18 
19 #include <cstdint>
20 #include <map>
21 #include <string>
22 
23 namespace OHOS {
24 namespace ResourceSchedule {
25 namespace ResType {
26 enum : uint32_t {
27     // screen status, value 0 means screen off, value 1 means screen on, else are invalid.
28     RES_TYPE_SCREEN_STATUS = 0,
29     // app state change event; value means app state; payload:pid,uid,bundleName
30     RES_TYPE_APP_STATE_CHANGE = 1,
31     // ability state change event; value means ability state; payload:pid,uid,bundleName
32     RES_TYPE_ABILITY_STATE_CHANGE = 2,
33     // extension state change event; value means extension state; payload:pid,uid,bundleName
34     RES_TYPE_EXTENSION_STATE_CHANGE = 3,
35     // process state event; value 0:created, 1:died; payload:pid,uid,bundleName
36     RES_TYPE_PROCESS_STATE_CHANGE = 4,
37     // window focused event; value 0:focused, 1:unfocused; payload:pid,uid,bundleName,windowId,windowType,displayId
38     RES_TYPE_WINDOW_FOCUS = 5,
39     // transient task event; value 0:start, 1:finish; payload:pid,uid,bundleName
40     RES_TYPE_TRANSIENT_TASK = 6,
41     // continuous task event; value 0:start, 1:finish; payload:pid,uid,abilityName
42     RES_TYPE_CONTINUOUS_TASK = 7,
43     /* cgroup change event;
44      * value 0:set thread group sched; 1:set thread sched
45      * payload: pid,uid,name,oldGroup,newGroup
46      */
47     RES_TYPE_CGROUP_ADJUSTER = 8,
48     // ace gestures click_recognizer; value 1 touch event, value 2 click event
49     RES_TYPE_CLICK_RECOGNIZE = 9,
50     // ace pipeline_context.cpp::PushPage(); value 0: push_page_start, 1: push_page_complete
51     RES_TYPE_PUSH_PAGE = 10,
52     // ace slide event recognize; value 1: slide on; 0: slide off
53     RES_TYPE_SLIDE_RECOGNIZE = 11,
54     // window visibility change, value 1: isVisible, 0: not isVisible, payload:pid,uid,windowId,windowType
55     RES_TYPE_WINDOW_VISIBILITY_CHANGE = 12,
56     // report mmi_service service; value mmi_service tid; payload:uid,pid
57     RES_TYPE_REPORT_MMI_PROCESS = 13,
58     // report render thread; value render tid; payload:uid,pid
59     RES_TYPE_REPORT_RENDER_THREAD = 14,
60     // app install and uninstall event; value 0: uninstall, 1: install; payload:uid,bundleName
61     RES_TYPE_APP_INSTALL_UNINSTALL = 15,
62     // net connect state; value 0:unknow, 1:idle, 2:connecting, 3:connected, 4:disconnecting, 5:disconnected
63     RES_TYPE_WIFI_CONNECT_STATE_CHANGE = 16,
64     // user switch, value means the userId which switch to.
65     RES_TYPE_USER_SWITCH = 17,
66     // user remove, value means the userId which is removed.
67     RES_TYPE_USER_REMOVE = 18,
68     // screen unlock, value 0 means unlock, value 1 means locked.
69     RES_TYPE_SCREEN_LOCK = 19,
70     // bluetooth a2dp connect state, value 1: connected, 3: disconnected.
71     RES_TYPE_BLUETOOTH_A2DP_CONNECT_STATE_CHANGE = 20,
72     // network latency request, value 0: low latency, 1: normal latency, payload: identity
73     RES_TYPE_NETWORK_LATENCY_REQUEST = 21,
74     // call state update; value 0 : active, value 1 : holding, value 2 : dialing, value 3 : alerting,
75     // value 4 : incoming, value 5 : waiting, value 6 : disconnected, value 7 : disconnecting, value 8 : idle
76     RES_TYPE_CALL_STATE_UPDATE = 22,
77     // Other process modify the thread Qos, value for client name id, payload: tid : qos , clientpid, pid
78     RES_TYPE_THREAD_QOS_CHANGE = 23,
79     // audio render state change; value -1 : RENDERER_INVALID, value 0 : RENDERER_NEW, value 1 : RENDERER_PREPARED,
80     // value 2 : RENDERER_RUNNING, value 3 : RENDERER_STOPPED, value 4 : RENDERER_RELEASED, value 5 : RENDERER_PAUSED
81     // payload:uid,sessionId
82     RES_TYPE_AUDIO_RENDER_STATE_CHANGE = 24,
83     // audio ring mode change; value 0 : RINGER_MODE_NORMAL, value 1 : RINGER_MODE_SILENT
84     // value 2 : RINGER_MODE_VIBRATE
85     RES_TYPE_AUDIO_RING_MODE_CHANGE = 25,
86     // audio volume key change; value volume, payload volumeType eg.
87     // type -1 : STREAM_DEFAULT, type 0 : STREAM_VOICE_CALL, type 1 : STREAM_MUSIC, type 2 : STREAM_RING,
88     // type 3 : STREAM_MEDIA, type 4 : STREAM_VOICE_ASSISTANT,  type 5 : STREAM_SYSTEM, type 6 : STREAM_ALARM,
89     // type 7 : STREAM_NOTIFICATION, type 8 : STREAM_BLUETOOTH_SCO, type 9 : STREAM_ENFORCED_AUDIBLE,
90     // type 10 : STREAM_DTMF, type 11 : STREAM_TTS, type 12 : STREAM_ACCESSIBILITY, type 13 : STREAM_RECORDING
91     RES_TYPE_AUDIO_VOLUME_KEY_CHANGE = 26,
92     // app_ability_start_event : a very early app startup stub, when the app process has not been pulled up.
93     // stub position : ability_runtime ability_manager_service.cpp::StartAbilityInner().
94     // specifically : ability type is PAGE and ability launchMode is not SPECIFIED.
95     RES_TYPE_APP_ABILITY_START = 27,
96     // ace pipeline_context.cpp::PopPage(); value means nothing
97     RES_TYPE_POP_PAGE = 28,
98     // ace web gesture event recognize; value means nothing
99     RES_TYPE_WEB_GESTURE = 29,
100     // info from msdp, means device still state change(enter or exit)
101     RES_TYPE_DEVICE_STILL_STATE_CHANGE = 30,
102     // window resize event; value 0: resize window , value 1: stop resizing window.
103     RES_TYPE_RESIZE_WINDOW = 31,
104     // window move event; value 0: move window, value 1: stop moving window.
105     RES_TYPE_MOVE_WINDOW = 32,
106     // animation transition event; value 0: animation begin, value 1: animation end.
107     RES_TYPE_SHOW_REMOTE_ANIMATION = 33,
108     // slide normal event; value 0: slide normal begin, value 1: slide normal end.
109     RES_TYPE_SLIDE_NORMAL = 34,
110 };
111 
112 static const std::map<uint32_t, std::string> resTypeToStr = {
113     { RES_TYPE_SCREEN_STATUS, "SCREEN_STATUS" },
114     { RES_TYPE_APP_STATE_CHANGE, "APP_STATE_CHANGE" },
115     { RES_TYPE_ABILITY_STATE_CHANGE, "ABILITY_STATE_CHANGE" },
116     { RES_TYPE_EXTENSION_STATE_CHANGE, "EXTENSION_STATE_CHANGE" },
117     { RES_TYPE_PROCESS_STATE_CHANGE, "PROCESS_STATE_CHANGE" },
118     { RES_TYPE_WINDOW_FOCUS, "WINDOW_FOCUS" },
119     { RES_TYPE_TRANSIENT_TASK, "TRANSIENT_TASK" },
120     { RES_TYPE_CONTINUOUS_TASK, "CONTINUOUS_TASK" },
121     { RES_TYPE_CGROUP_ADJUSTER, "CGROUP_ADJUSTER" },
122     { RES_TYPE_CLICK_RECOGNIZE, "CLICK_RECOGNIZE" },
123     { RES_TYPE_PUSH_PAGE, "PUSH_PAGE" },
124     { RES_TYPE_SLIDE_RECOGNIZE, "SLIDE_RECOGNIZE" },
125     { RES_TYPE_WINDOW_VISIBILITY_CHANGE, "WINDOW_VISIBILITY_CHANGE" },
126     { RES_TYPE_REPORT_MMI_PROCESS, "REPORT_MMI_PROCESS" },
127     { RES_TYPE_REPORT_RENDER_THREAD, "REPORT_RENDER_THREAD" },
128     { RES_TYPE_APP_INSTALL_UNINSTALL, "APP_INSTALL_UNINSTALL" },
129     { RES_TYPE_WIFI_CONNECT_STATE_CHANGE, "WIFI_CONNECT_STATE_CHANGE" },
130     { RES_TYPE_USER_SWITCH, "USER_SWITCH" },
131     { RES_TYPE_USER_REMOVE, "USER_REMOVE" },
132     { RES_TYPE_SCREEN_LOCK, "SCREEN_LOCK" },
133     { RES_TYPE_BLUETOOTH_A2DP_CONNECT_STATE_CHANGE, "BLUETOOTH_A2DP_CONNECT_STATE_CHANGE" },
134     { RES_TYPE_NETWORK_LATENCY_REQUEST, "NETWORK_LATENCY_REQUEST" },
135     { RES_TYPE_CALL_STATE_UPDATE, "CALL_STATE_UPDATE" },
136     { RES_TYPE_THREAD_QOS_CHANGE, "THREAD_QOS_CHANGE" },
137     { RES_TYPE_AUDIO_RENDER_STATE_CHANGE, "AUDIO_RENDER_STATE_CHANGE" },
138     { RES_TYPE_AUDIO_RING_MODE_CHANGE, "AUDIO_RING_MODE_CHANGE" },
139     { RES_TYPE_AUDIO_VOLUME_KEY_CHANGE, "AUDIO_VOLUME_KEY_CHANGE" },
140     { RES_TYPE_APP_ABILITY_START, "APP_ABILITY_START" },
141     { RES_TYPE_POP_PAGE, "POP_PAGE" },
142     { RES_TYPE_WEB_GESTURE, "WEB_GESTURE" },
143     { RES_TYPE_DEVICE_STILL_STATE_CHANGE, "DEVICE_STILL_STATE_CHANGE" },
144     { RES_TYPE_RESIZE_WINDOW, "RES_TYPE_RESIZE_WINDOW" },
145     { RES_TYPE_MOVE_WINDOW, "RES_TYPE_MOVE_WINDOW" },
146     { RES_TYPE_SHOW_REMOTE_ANIMATION, "RES_TYPE_SHOW_REMOTE_ANIMATION" },
147     { RES_TYPE_SLIDE_NORMAL, "RES_TYPE_SLIDE_NORMAL" }
148 };
149 
150 /**
151  * @brief Screen status
152  */
153 enum ScreenStatus : int64_t {
154     SCREEN_OFF = 0,
155     SCREEN_ON = 1,
156 };
157 
158 /**
159  * @brief App install status
160  */
161 enum AppInstallStatus : int64_t {
162     APP_UNINSTALL = 0,
163     APP_INSTALL = 1,
164 };
165 
166 /**
167  * @brief Screen lock status
168  */
169 enum ScreenLockStatus : int64_t {
170     SCREEN_UNLOCK = 0,
171     SCREEN_LOCK = 1,
172 };
173 
174 /**
175  * @brief Process status
176  */
177 enum ProcessStatus : int64_t {
178     PROCESS_CREATED = 0,
179     PROCESS_DIED = 1,
180 };
181 
182 /**
183  * @brief Transient task status
184  */
185 enum TransientTaskStatus : int64_t {
186     TRANSIENT_TASK_START = 0,
187     TRANSIENT_TASK_END = 1,
188 };
189 
190 /**
191  * @brief Continuous task status
192  */
193 enum ContinuousTaskStatus : int64_t {
194     CONTINUOUS_TASK_START = 0,
195     CONTINUOUS_TASK_END = 1,
196 };
197 
198 /**
199  * @brief Window focus status
200  */
201 enum WindowFocusStatus : int64_t {
202     WINDOW_FOCUS = 0,
203     WINDOW_UNFOCUS = 1,
204 };
205 
206 /**
207  * @brief Window visibility status
208  */
209 enum WindowVisibilityStatus : int64_t {
210     INVISIBLE = 0,
211     VISIBLE = 1,
212 };
213 
214 /**
215  * @brief Slide event status
216  */
217 enum SlideEventStatus : int64_t {
218     SLIDE_EVENT_OFF = 0,
219     SLIDE_EVENT_ON = 1,
220 };
221 
222 /**
223  * @brief Click event type
224  */
225 enum ClickEventType : int64_t {
226     INVALID_EVENT = 0,
227     TOUCH_EVENT = 1,
228     CLICK_EVENT = 2,
229 };
230 
231 /**
232  * @brief PushPage event type
233  */
234 enum PushPageType : int64_t {
235     PUSH_PAGE_START = 0,
236     PUSH_PAGE_COMPLETE = 1,
237 };
238 
239 /**
240  * @brief App Start type
241  */
242 enum AppStartType : int64_t {
243     APP_WARM_START = 0,
244     APP_COLD_START = 1,
245 };
246 
247 /**
248  * @brief Window resize type
249  */
250 enum WindowResizeType : int64_t {
251     WINDOW_RESIZING = 0,
252     WINDOW_RESIZE_STOP = 1,
253 };
254 
255 /**
256  * @brief Window move type
257  */
258 enum WindowMoveType : int64_t {
259     WINDOW_MOVING = 0,
260     WINDOW_MOVE_STOP = 1,
261 };
262 
263 /**
264  * @brief Animation Change Status
265  */
266 enum ShowRemoteAnimationStatus : int64_t {
267     ANIMATION_BEGIN = 0,
268     ANIMATION_END = 1,
269 };
270 
271 /**
272  * @brief Slide normal Status
273  */
274 enum SlideNormalStatus : int64_t {
275     SLIDE_NORMAL_BEGIN = 0,
276     SLIDE_NORMAL_END = 1,
277 };
278 } // namespace ResType
279 } // namespace ResourceSchedule
280 } // namespace OHOS
281 
282 #endif // RESSCHED_INTERFACES_INNERKITS_RESSCHED_CLIENT_INCLUDE_RES_TYPE_H
283