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