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 IMS_REG_TYPES_H 17 #define IMS_REG_TYPES_H 18 19 #include <stdint.h> 20 21 namespace OHOS { 22 namespace Telephony { 23 const int16_t VALUE_MAXIMUM_LIMIT = 3; 24 const int16_t INFO_MAXIMUM_LIMIT = 31; 25 const int16_t DATA_LENGTH_ONE = 1; 26 const int16_t DATA_LENGTH_TWO = 2; 27 28 /** 29 * @brief IMS register status 30 */ 31 enum ImsRegState { 32 IMS_UNREGISTERED, 33 IMS_REGISTERED, 34 }; 35 36 /** 37 * @brief IMS register technology 38 */ 39 enum ImsRegTech { 40 IMS_REG_TECH_NONE = 0, 41 IMS_REG_TECH_LTE = 1, 42 IMS_REG_TECH_IWLAN = 2, 43 IMS_REG_TECH_NR = 3, 44 }; 45 46 /** 47 * @brief IMS service type 48 */ 49 enum ImsServiceType { 50 TYPE_VOICE = 0, 51 TYPE_VIDEO = 1, 52 TYPE_UT = 2, 53 TYPE_SMS = 3, 54 }; 55 56 /** 57 * @brief IMS register information 58 */ 59 struct ImsRegInfo { 60 ImsRegState imsRegState = IMS_UNREGISTERED; 61 ImsRegTech imsRegTech = IMS_REG_TECH_NONE; 62 }; 63 } // namespace Telephony 64 } // namespace OHOS 65 #endif // IMS_REG_TYPES_H