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 STATS_HISYSEVENT_H 17 #define STATS_HISYSEVENT_H 18 19 #include <string> 20 21 namespace OHOS { 22 namespace PowerMgr { 23 class StatsHiSysEvent { 24 public: 25 enum HiSysEventType { 26 HISYSEVENT_TYPE_INVALID = -1, 27 HISYSEVENT_TYPE_POWER_RUNNINGLOCK, 28 HISYSEVENT_TYPE_SCREEN_STATE, 29 HISYSEVENT_TYPE_BRIGHTNESS_NIT, 30 HISYSEVENT_TYPE_BACKLIGHT_DISCOUNT, 31 HISYSEVENT_TYPE_AMBIENT_LIGHT, 32 HISYSEVENT_TYPE_BATTERY_CHANGED, 33 HISYSEVENT_TYPE_POWER_TEMPERATURE, 34 HISYSEVENT_TYPE_THERMAL_LEVEL_CHANGED, 35 HISYSEVENT_TYPE_POWER_WORKSCHEDULER, 36 HISYSEVENT_TYPE_WORK_ADD, 37 HISYSEVENT_TYPE_WORK_REMOVE, 38 HISYSEVENT_TYPE_WORK_START, 39 HISYSEVENT_TYPE_WORK_STOP, 40 HISYSEVENT_TYPE_TORCH_STATE, 41 HISYSEVENT_TYPE_CAMERA_CONNECT, 42 HISYSEVENT_TYPE_CAMERA_DISCONNECT, 43 HISYSEVENT_TYPE_FLASHLIGHT_ON, 44 HISYSEVENT_TYPE_FLASHLIGHT_OFF, 45 HISYSEVENT_TYPE_AUDIO_STREAM_CHANGE, 46 HISYSEVENT_TYPE_POWER_SENSOR_GRAVITY, 47 HISYSEVENT_TYPE_POWER_SENSOR_PROXIMITY, 48 HISYSEVENT_TYPE_GNSS_STATE, 49 HISYSEVENT_TYPE_BLUETOOTH_BR_SWITCH_STATE, 50 HISYSEVENT_TYPE_BLUETOOTH_DISCOVERY_STATE, 51 HISYSEVENT_TYPE_BLUETOOTH_BLE_STATE, 52 HISYSEVENT_TYPE_BLUETOOTH_BLE_SCAN_START, 53 HISYSEVENT_TYPE_BLUETOOTH_BLE_SCAN_STOP, 54 HISYSEVENT_TYPE_WIFI_CONNECTION, 55 HISYSEVENT_TYPE_WIFI_SCAN, 56 HISYSEVENT_TYPE_START_REMOTE_ABILITY, 57 HISYSEVENT_TYPE_MISC_TIME_STATISTIC_REPORT, 58 HISYSEVENT_TYPE_THERMAL_ACTION_TRIGGERED, 59 HISYSEVENT_TYPE_CALL_STATE, 60 HISYSEVENT_TYPE_DATA_CONNECTION_STATE, 61 HISYSEVENT_TYPE_END 62 }; 63 64 static constexpr const char* HISYSEVENT_LIST[HISYSEVENT_TYPE_END] = { 65 "POWER_RUNNINGLOCK", 66 "SCREEN_STATE", 67 "BRIGHTNESS_NIT", 68 "BACKLIGHT_DISCOUNT", 69 "AMBIENT_LIGHT", 70 "BATTERY_CHANGED", 71 "POWER_TEMPERATURE", 72 "THERMAL_LEVEL_CHANGED", 73 "POWER_WORKSCHEDULER", 74 "WORK_ADD", 75 "WORK_REMOVE", 76 "WORK_START", 77 "WORK_STOP", 78 "TORCH_STATE", 79 "CAMERA_CONNECT", 80 "CAMERA_DISCONNECT", 81 "FLASHLIGHT_ON", 82 "FLASHLIGHT_OFF", 83 "AUDIO_STREAM_CHANGE", 84 "POWER_SENSOR_GRAVITY", 85 "POWER_SENSOR_PROXIMITY", 86 "GNSS_STATE", 87 "BLUETOOTH_BR_SWITCH_STATE", 88 "BLUETOOTH_DISCOVERY_STATE", 89 "BLUETOOTH_BLE_STATE", 90 "BLUETOOTH_BLE_SCAN_START", 91 "BLUETOOTH_BLE_SCAN_STOP", 92 "WIFI_CONNECTION", 93 "WIFI_SCAN", 94 "START_REMOTE_ABILITY", 95 "MISC_TIME_STATISTIC_REPORT", 96 "THERMAL_ACTION_TRIGGERED", 97 "CALL_STATE", 98 "DATA_CONNECTION_STATE", 99 }; 100 101 static bool CheckHiSysEvent(const std::string& eventName); 102 }; 103 } // namespace PowerMgr 104 } // namespace OHOS 105 #endif // STATS_HISYSEVENT_H