1 /* 2 * Copyright (c) 2022-2025 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_DM_CALLBACK_H 17 #define OHOS_DM_CALLBACK_H 18 19 #include "dm_device_info.h" 20 #include "dm_device_profile_info.h" 21 22 namespace OHOS { 23 namespace DistributedHardware { 24 class DmInitCallback { 25 public: ~DmInitCallback()26 virtual ~DmInitCallback() 27 { 28 } 29 virtual void OnRemoteDied() = 0; 30 }; 31 32 class DeviceStateCallback { 33 public: ~DeviceStateCallback()34 virtual ~DeviceStateCallback() 35 { 36 } 37 virtual void OnDeviceOnline(const DmDeviceInfo &deviceInfo) = 0; 38 virtual void OnDeviceOffline(const DmDeviceInfo &deviceInfo) = 0; 39 virtual void OnDeviceChanged(const DmDeviceInfo &deviceInfo) = 0; 40 virtual void OnDeviceReady(const DmDeviceInfo &deviceInfo) = 0; 41 }; 42 43 class DeviceStatusCallback { 44 public: ~DeviceStatusCallback()45 virtual ~DeviceStatusCallback() 46 { 47 } 48 virtual void OnDeviceOnline(const DmDeviceBasicInfo &deviceBasicInfo) = 0; 49 virtual void OnDeviceOffline(const DmDeviceBasicInfo &deviceBasicInfo) = 0; 50 virtual void OnDeviceChanged(const DmDeviceBasicInfo &deviceBasicInfo) = 0; 51 virtual void OnDeviceReady(const DmDeviceBasicInfo &deviceBasicInfo) = 0; 52 }; 53 54 class DiscoveryCallback { 55 public: ~DiscoveryCallback()56 virtual ~DiscoveryCallback() 57 { 58 } 59 virtual void OnDiscoverySuccess(uint16_t subscribeId) = 0; 60 virtual void OnDiscoveryFailed(uint16_t subscribeId, int32_t failedReason) = 0; OnDeviceFound(uint16_t subscribeId,const DmDeviceInfo & deviceInfo)61 virtual void OnDeviceFound(uint16_t subscribeId, const DmDeviceInfo &deviceInfo) {}; OnDeviceFound(uint16_t subscribeId,const DmDeviceBasicInfo & deviceBasicInfo)62 virtual void OnDeviceFound(uint16_t subscribeId, const DmDeviceBasicInfo &deviceBasicInfo) {}; 63 }; 64 65 class PublishCallback { 66 public: ~PublishCallback()67 virtual ~PublishCallback() 68 { 69 } 70 virtual void OnPublishResult(int32_t publishId, int32_t publishResult) = 0; 71 }; 72 73 class AuthenticateCallback { 74 public: ~AuthenticateCallback()75 virtual ~AuthenticateCallback() 76 { 77 } 78 virtual void OnAuthResult(const std::string &deviceId, const std::string &token, int32_t status, 79 int32_t reason) = 0; 80 }; 81 82 class BindTargetCallback { 83 public: ~BindTargetCallback()84 virtual ~BindTargetCallback() 85 { 86 } 87 virtual void OnBindResult(const PeerTargetId &targetId, int32_t result, int32_t status, std::string content) = 0; 88 }; 89 90 class UnbindTargetCallback { 91 public: ~UnbindTargetCallback()92 virtual ~UnbindTargetCallback() 93 { 94 } 95 virtual void OnUnbindResult(const PeerTargetId &targetId, int32_t result, std::string content) = 0; 96 }; 97 98 class VerifyAuthCallback { 99 public: ~VerifyAuthCallback()100 virtual ~VerifyAuthCallback() 101 { 102 } 103 virtual void OnVerifyAuthResult(const std::string &deviceId, int32_t resultCode, int32_t flag) = 0; 104 }; 105 106 class DeviceManagerUiCallback { 107 public: ~DeviceManagerUiCallback()108 virtual ~DeviceManagerUiCallback() 109 { 110 } 111 virtual void OnCall(const std::string ¶mJson) = 0; 112 }; 113 114 class GetDeviceProfileInfoListCallback { 115 public: ~GetDeviceProfileInfoListCallback()116 virtual ~GetDeviceProfileInfoListCallback() 117 {} 118 virtual void OnResult(const std::vector<DmDeviceProfileInfo> &deviceProfileInfos, int32_t code) = 0; 119 }; 120 121 class GetDeviceIconInfoCallback { 122 public: ~GetDeviceIconInfoCallback()123 virtual ~GetDeviceIconInfoCallback() {} 124 virtual void OnResult(const DmDeviceIconInfo &deviceIconInfo, int32_t code) = 0; 125 }; 126 127 class SetLocalDeviceNameCallback { 128 public: ~SetLocalDeviceNameCallback()129 virtual ~SetLocalDeviceNameCallback() {} 130 virtual void OnResult(int32_t code) = 0; 131 }; 132 133 class SetRemoteDeviceNameCallback { 134 public: ~SetRemoteDeviceNameCallback()135 virtual ~SetRemoteDeviceNameCallback() {} 136 virtual void OnResult(int32_t code) = 0; 137 }; 138 139 class CredentialCallback { 140 public: ~CredentialCallback()141 virtual ~CredentialCallback() 142 { 143 } 144 virtual void OnCredentialResult(int32_t &action, const std::string &credentialResult) = 0; 145 }; 146 147 class PinHolderCallback { 148 public: ~PinHolderCallback()149 virtual ~PinHolderCallback() 150 { 151 } 152 virtual void OnPinHolderCreate(const std::string &deviceId, DmPinType pinType, const std::string &payload) = 0; 153 virtual void OnPinHolderDestroy(DmPinType pinType, const std::string &payload) = 0; 154 virtual void OnCreateResult(int32_t result) = 0; 155 virtual void OnDestroyResult(int32_t result) = 0; 156 virtual void OnPinHolderEvent(DmPinHolderEvent event, int32_t result, const std::string &content) = 0; 157 }; 158 159 class DevTrustChangeCallback { 160 public: ~DevTrustChangeCallback()161 virtual ~DevTrustChangeCallback() 162 { 163 } 164 virtual void OnDeviceTrustChange(const std::string &udid, const std::string &uuid, DmAuthForm authForm) = 0; 165 }; 166 167 class DeviceScreenStatusCallback { 168 public: ~DeviceScreenStatusCallback()169 virtual ~DeviceScreenStatusCallback() 170 { 171 } 172 virtual void OnDeviceScreenStatus(const DmDeviceInfo &deviceInfo) = 0; 173 }; 174 175 class CredentialAuthStatusCallback { 176 public: ~CredentialAuthStatusCallback()177 virtual ~CredentialAuthStatusCallback() 178 { 179 } 180 virtual void OnCredentialAuthStatus(const std::string &deviceList, uint16_t deviceTypeId, int32_t errcode) = 0; 181 }; 182 } // namespace DistributedHardware 183 } // namespace OHOS 184 #endif // OHOS_DM_CALLBACK_H 185