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 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 class DiscoveryCallback { 56 public: ~DiscoveryCallback()57 virtual ~DiscoveryCallback() 58 { 59 } 60 virtual void OnDiscoverySuccess(uint16_t subscribeId) = 0; 61 virtual void OnDiscoveryFailed(uint16_t subscribeId, int32_t failedReason) = 0; OnDeviceFound(uint16_t subscribeId,const DmDeviceInfo & deviceInfo)62 virtual void OnDeviceFound(uint16_t subscribeId, const DmDeviceInfo &deviceInfo) {}; OnDeviceFound(uint16_t subscribeId,const DmDeviceBasicInfo & deviceBasicInfo)63 virtual void OnDeviceFound(uint16_t subscribeId, const DmDeviceBasicInfo &deviceBasicInfo) {}; 64 }; 65 66 class PublishCallback { 67 public: ~PublishCallback()68 virtual ~PublishCallback() 69 { 70 } 71 virtual void OnPublishResult(int32_t publishId, int32_t publishResult) = 0; 72 }; 73 74 class AuthenticateCallback { 75 public: ~AuthenticateCallback()76 virtual ~AuthenticateCallback() 77 { 78 } 79 virtual void OnAuthResult(const std::string &deviceId, const std::string &token, int32_t status, 80 int32_t reason) = 0; 81 }; 82 83 class VerifyAuthCallback { 84 public: ~VerifyAuthCallback()85 virtual ~VerifyAuthCallback() 86 { 87 } 88 virtual void OnVerifyAuthResult(const std::string &deviceId, int32_t resultCode, int32_t flag) = 0; 89 }; 90 class DeviceManagerUiCallback { 91 public: ~DeviceManagerUiCallback()92 virtual ~DeviceManagerUiCallback() 93 { 94 } 95 virtual void OnCall(const std::string ¶mJson) = 0; 96 }; 97 98 class CredentialCallback { 99 public: ~CredentialCallback()100 virtual ~CredentialCallback() 101 { 102 } 103 virtual void OnCredentialResult(int32_t &action, const std::string &credentialResult) = 0; 104 }; 105 } // namespace DistributedHardware 106 } // namespace OHOS 107 #endif // OHOS_DM_CALLBACK_H 108