1 /* 2 * Copyright (c) 2023-2024 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 OHOS_DP_DISTRIBUTED_DEVICE_PROFILE_ENUMS_H 17 #define OHOS_DP_DISTRIBUTED_DEVICE_PROFILE_ENUMS_H 18 19 #include <unordered_map> 20 21 namespace OHOS { 22 namespace DistributedDeviceProfile { 23 enum class DPInterfaceCode : uint32_t { 24 MIN = 0, 25 PUT_ACL_PROFILE = 7, // new ipc code 26 UPDATE_ACL_PROFILE = 8, 27 GET_TRUST_DEVICE_PROFILE = 9, 28 GET_ALL_TRUST_DEVICE_PROFILE = 10, 29 GET_ACL_PROFILE = 11, 30 GET_ALL_ACL_PROFILE = 12, 31 DELETE_ACL_PROFILE = 13, 32 PUT_SERVICE_PROFILE = 14, 33 PUT_SERVICE_PROFILE_BATCH = 15, 34 PUT_CHAR_PROFILE = 16, 35 PUT_CHAR_PROFILE_BATCH = 17, 36 GET_DEVICE_PROFILE_NEW = 18, 37 GET_SERVICE_PROFILE = 19, 38 GET_CHAR_PROFILE = 20, 39 DEL_SERVICE_PROFILE = 21, 40 DEL_CHAR_PROFILE = 22, 41 SUBSCRIBE_DEVICE_PROFILE = 23, 42 UNSUBSCRIBE_DEVICE_PROFILE = 24, 43 SYNC_DEVICE_PROFILE_NEW = 25, 44 SEND_SUBSCRIBE_INFOS = 26, 45 ON_SYNC_COMPLETED = 27, 46 ON_TRUST_DEVICE_PROFILE_ADD = 28, 47 ON_TRUST_DEVICE_PROFILE_UPDATE = 29, 48 ON_TRUST_DEVICE_PROFILE_DELETE = 30, 49 ON_DEVICE_PROFILE_ADD = 31, 50 ON_DEVICE_PROFILE_UPDATE = 32, 51 ON_DEVICE_PROFILE_DELETE = 33, 52 ON_SERVICE_PROFILE_ADD = 34, 53 ON_SERVICE_PROFILE_UPDATE = 35, 54 ON_SERVICE_PROFILE_DELETE = 36, 55 ON_CHAR_PROFILE_ADD = 37, 56 ON_CHAR_PROFILE_UPDATE = 38, 57 ON_CHAR_PROFILE_DELETE = 39, 58 ON_DEVICE_PROFILE_INITED = 40, 59 SUBSCRIBE_DEVICE_PROFILE_INITED = 41, 60 UNSUBSCRIBE_DEVICE_PROFILE_INITED = 42, 61 MAX = 43 62 }; 63 64 enum class DeviceIdType : uint32_t { 65 MIN = 0, 66 UDID = 1, 67 UUID = 2, 68 SN = 3, 69 MAX = 4 70 }; 71 enum class AuthenticationType : uint32_t { 72 MIN = 0, 73 TEMPORARY = 1, 74 PERMANENT = 2, 75 MAX = 3 76 }; 77 enum class BindType : uint32_t { 78 MIN = 0, 79 SAME_ACCOUNT = 1, 80 POINT_TO_POINT = 256, 81 COMPATIBLE = 512, 82 DIFF_ACCOUNT = 1282, 83 MAX = 1283 84 }; 85 enum class BindLevel : uint32_t { 86 MIN = 0, 87 DEVICE = 1, 88 SERVICE = 2, 89 APP = 3, 90 MAX = 4 91 }; 92 enum class Status : int32_t { 93 MIN = -1, 94 INACTIVE = 0, 95 ACTIVE = 1, 96 MAX = 2 97 }; 98 enum SyncStatus { 99 SUCCEEDED = 0, 100 FAILED = 1, 101 }; 102 enum class SyncMode : int64_t { 103 MIN = -1, 104 PULL = 0, 105 PUSH = 1, 106 PUSH_PULL = 2, 107 MAX = 3, 108 }; 109 enum ProfileType { 110 PROFILE_TYPE_MIN = 0x00, 111 TRUST_DEVICE_PROFILE = 0x10, 112 ACCESS_CONTROL_PROFILE = 0x20, 113 DEVICE_PROFILE = 0x30, 114 SERVICE_PROFILE = 0x40, 115 CHAR_PROFILE = 0x50, 116 PROFILE_TYPE_MAX = 0x60 117 }; 118 enum ChangeType { 119 CHANGE_TYPE_MIN = 0, 120 ADD = 1, 121 UPDATE = 2, 122 DELETE = 3, 123 CHANGE_TYPE_MAX = 4 124 }; 125 enum ProfileChangeType { 126 PROFILE_CHANGE_TYPE_MIN = 0, 127 TRUST_DEVICE_PROFILE_ADD = 1, 128 TRUST_DEVICE_PROFILE_UPDATE = 2, 129 TRUST_DEVICE_PROFILE_DELETE = 3, 130 DEVICE_PROFILE_ADD = 4, 131 DEVICE_PROFILE_UPDATE = 5, 132 DEVICE_PROFILE_DELETE = 6, 133 SERVICE_PROFILE_ADD = 7, 134 SERVICE_PROFILE_UPDATE = 8, 135 SERVICE_PROFILE_DELETE = 9, 136 CHAR_PROFILE_ADD = 10, 137 CHAR_PROFILE_UPDATE = 11, 138 CHAR_PROFILE_DELETE = 12, 139 PROFILE_CHANGE_TYPE_MAX = 13 140 }; 141 enum StaticCapabilityFlag { 142 CAPABILITY_FLAG_MIN = -1, 143 CAPABILITY_FLAG_DMS = 0, 144 CAPABILITY_FLAG_PASTE_BOARD = 1, 145 CAPABILITY_FLAG_COLLABORATION_FWK = 2, 146 CAPABILITY_FLAG_DEVICE_STATUS = 3, 147 CAPABILITY_FLAG_MAX = 4, 148 }; 149 enum class SwitchFlag : int32_t { 150 SWITCH_FLAG_MIN = -1, 151 SWITCH_FLAG_KEY_MOUSE_EDGE_CROSSING = 0, 152 SWITCH_FLAG_KEY_DISTRIBUTED_PASTEBOARD = 1, 153 SWITCH_FLAG_DCSHARESWITCH = 2, 154 SWITCH_FLAG_MAX = 3 155 }; 156 const std::unordered_map<std::string, SwitchFlag> SWITCH_SERVICE_MAP = { 157 { "SwitchStatus_Key_Mouse_Edge_Crossing", SwitchFlag::SWITCH_FLAG_KEY_MOUSE_EDGE_CROSSING }, 158 { "SwitchStatus_Key_Distributed_Pasteboard", SwitchFlag::SWITCH_FLAG_KEY_DISTRIBUTED_PASTEBOARD }, 159 { "SwitchStatus_DcShareSwitch", SwitchFlag::SWITCH_FLAG_DCSHARESWITCH } 160 }; 161 const std::unordered_map<std::string, StaticCapabilityFlag> CAPABILITY_FLAG_MAP = { 162 { "dmsfwk_svr_id", StaticCapabilityFlag::CAPABILITY_FLAG_DMS }, 163 { "pasteboardService", StaticCapabilityFlag::CAPABILITY_FLAG_PASTE_BOARD }, 164 { "collaborationFwk", StaticCapabilityFlag::CAPABILITY_FLAG_COLLABORATION_FWK }, 165 { "deviceStatus", StaticCapabilityFlag::CAPABILITY_FLAG_DEVICE_STATUS }, 166 }; 167 } // namespace DistributedDeviceProfile 168 } // namespace OHOS 169 #endif // OHOS_DP_DISTRIBUTED_DEVICE_PROFILE_ENUMS_H 170