1 /* 2 * Copyright (C) 2021 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 ENUM_CONVERT_H 17 #define ENUM_CONVERT_H 18 19 #include <string> 20 21 namespace OHOS { 22 namespace Telephony { 23 enum class TelephonyCardType { 24 UNKNOWN_CARD = -1, 25 SINGLE_MODE_SIM_CARD = 10, 26 SINGLE_MODE_USIM_CARD = 20, 27 SINGLE_MODE_RUIM_CARD = 30, 28 DUAL_MODE_CG_CARD = 40, 29 CT_NATIONAL_ROAMING_CARD = 41, 30 CU_DUAL_MODE_CARD = 42, 31 DUAL_MODE_TELECOM_LTE_CARD = 43, 32 DUAL_MODE_UG_CARD = 50, 33 SINGLE_MODE_ISIM_CARD = 60, 34 }; 35 36 enum class TelephonySimState { 37 SIM_STATE_UNKNOWN, 38 SIM_STATE_NOT_PRESENT, 39 SIM_STATE_LOCKED, 40 SIM_STATE_NOT_READY, 41 SIM_STATE_READY, 42 SIM_STATE_LOADED 43 }; 44 45 enum class TelephonyDataConnectionStatus { 46 DATA_STATE_DISCONNECTED = 11, 47 DATA_STATE_CONNECTING = 12, 48 DATA_STATE_CONNECTED = 13, 49 DATA_STATE_SUSPENDED = 14 50 }; 51 52 enum class TelephonyCallState { 53 CALL_STATUS_ACTIVE = 0, 54 CALL_STATUS_HOLDING, 55 CALL_STATUS_DIALING, 56 CALL_STATUS_ALERTING, 57 CALL_STATUS_INCOMING, 58 CALL_STATUS_WAITING, 59 CALL_STATUS_DISCONNECTED, 60 CALL_STATUS_DISCONNECTING, 61 CALL_STATUS_IDLE, 62 }; 63 64 enum class TelephonyRadioTech { 65 RADIO_TECHNOLOGY_UNKNOWN = 0, 66 RADIO_TECHNOLOGY_GSM = 1, 67 RADIO_TECHNOLOGY_1XRTT = 2, 68 RADIO_TECHNOLOGY_WCDMA = 3, 69 RADIO_TECHNOLOGY_HSPA = 4, 70 RADIO_TECHNOLOGY_HSPAP = 5, 71 RADIO_TECHNOLOGY_TD_SCDMA = 6, 72 RADIO_TECHNOLOGY_EVDO = 7, 73 RADIO_TECHNOLOGY_EHRPD = 8, 74 RADIO_TECHNOLOGY_LTE = 9, 75 RADIO_TECHNOLOGY_LTE_CA = 10, 76 RADIO_TECHNOLOGY_IWLAN = 11, 77 RADIO_TECHNOLOGY_NR = 12 78 }; 79 80 enum class TelephonyCellDataFlowType { 81 DATA_FLOW_TYPE_NONE = 0, 82 DATA_FLOW_TYPE_DOWN = 1, 83 DATA_FLOW_TYPE_UP = 2, 84 DATA_FLOW_TYPE_UP_DOWN = 3, 85 DATA_FLOW_TYPE_DORMANT = 4 86 }; 87 88 enum class TelephonyLockReason { 89 SIM_NONE, 90 SIM_PIN, 91 SIM_PUK, 92 SIM_PN_PIN, 93 SIM_PN_PUK, 94 SIM_PU_PIN, 95 SIM_PU_PUK, 96 SIM_PP_PIN, 97 SIM_PP_PUK, 98 SIM_PC_PIN, 99 SIM_PC_PUK, 100 SIM_SIM_PIN, 101 SIM_SIM_PUK, 102 }; 103 104 std::string GetBoolValue(int32_t value); 105 std::string GetSimState(int32_t state); 106 std::string GetCallState(int32_t state); 107 std::string GetCardType(int32_t type); 108 std::string GetCellularDataConnectionState(int32_t state); 109 std::string GetCellularDataFlow(int32_t flowData); 110 std::string GetCellularDataConnectionNetworkType(int32_t type); 111 std::string GetLockReason(int32_t reason); 112 } // namespace Telephony 113 } // namespace OHOS 114 115 #endif // ENUM_CONVERT_H 116