1 /* 2 * Copyright (C) 2021 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_BLUETOOTH_STANDARD_HOST_STUB_H 17 #define OHOS_BLUETOOTH_STANDARD_HOST_STUB_H 18 19 #include <map> 20 21 #include "i_bluetooth_host.h" 22 #include "iremote_stub.h" 23 24 namespace OHOS { 25 namespace Bluetooth { 26 class BluetoothHostStub : public IRemoteStub<IBluetoothHost> { 27 public: 28 BluetoothHostStub(); 29 virtual ~BluetoothHostStub(); 30 31 virtual int OnRemoteRequest( 32 uint32_t code, MessageParcel &data, MessageParcel &reply, MessageOption &option) override; 33 34 private: 35 ErrCode RegisterObserverInner(MessageParcel &data, MessageParcel &reply); 36 ErrCode DeregisterObserverInner(MessageParcel &data, MessageParcel &reply); 37 ErrCode EnableBtInner(MessageParcel &data, MessageParcel &reply); 38 int32_t DisableBtInner(MessageParcel &data, MessageParcel &reply); 39 ErrCode SatelliteControlInner(MessageParcel &data, MessageParcel &reply); 40 ErrCode GetProfileInner(MessageParcel &data, MessageParcel &reply); 41 ErrCode GetBleRemoteInner(MessageParcel &data, MessageParcel &reply); 42 int32_t BluetoothFactoryResetInner(MessageParcel &data, MessageParcel &reply); 43 ErrCode GetBtStateInner(MessageParcel &data, MessageParcel &reply); 44 int32_t GetLocalAddressInner(MessageParcel &data, MessageParcel &reply); 45 int32_t DisableBleInner(MessageParcel &data, MessageParcel &reply); 46 int32_t EnableBleInner(MessageParcel &data, MessageParcel &reply); 47 ErrCode IsBrEnabledInner(MessageParcel &data, MessageParcel &reply); 48 ErrCode IsBleEnabledInner(MessageParcel &data, MessageParcel &reply); 49 ErrCode GetProfileListInner(MessageParcel &data, MessageParcel &reply); 50 ErrCode GetMaxNumConnectedAudioDevicesInner(MessageParcel &data, MessageParcel &reply); 51 int32_t GetBtConnectionStateInner(MessageParcel &data, MessageParcel &reply); 52 int32_t GetBtProfileConnStateInner(MessageParcel &data, MessageParcel &reply); 53 ErrCode GetLocalDeviceClassInner(MessageParcel &data, MessageParcel &reply); 54 ErrCode SetLocalDeviceClassInner(MessageParcel &data, MessageParcel &reply); 55 int32_t GetLocalNameInner(MessageParcel &data, MessageParcel &reply); 56 int32_t SetLocalNameInner(MessageParcel &data, MessageParcel &reply); 57 int32_t GetBtScanModeInner(MessageParcel &data, MessageParcel &reply); 58 int32_t SetBtScanModeInner(MessageParcel &data, MessageParcel &reply); 59 ErrCode GetBondableModeInner(MessageParcel &data, MessageParcel &reply); 60 ErrCode SetBondableModeInner(MessageParcel &data, MessageParcel &reply); 61 int32_t StartBtDiscoveryInner(MessageParcel &data, MessageParcel &reply); 62 int32_t CancelBtDiscoveryInner(MessageParcel &data, MessageParcel &reply); 63 ErrCode IsBtDiscoveringInner(MessageParcel &data, MessageParcel &reply); 64 ErrCode GetBtDiscoveryEndMillisInner(MessageParcel &data, MessageParcel &reply); 65 int32_t GetPairedDevicesInner(MessageParcel &data, MessageParcel &reply); 66 int32_t RemovePairInner(MessageParcel &data, MessageParcel &reply); 67 ErrCode RemoveAllPairsInner(MessageParcel &data, MessageParcel &reply); 68 ErrCode RegisterRemoteDeviceObserverInner(MessageParcel &data, MessageParcel &reply); 69 ErrCode DeregisterRemoteDeviceObserverInner(MessageParcel &data, MessageParcel &reply); 70 ErrCode GetBleMaxAdvertisingDataLengthInner(MessageParcel &data, MessageParcel &reply); 71 ErrCode GetDeviceTypeInner(MessageParcel &data, MessageParcel &reply); 72 ErrCode GetPhonebookPermissionInner(MessageParcel &data, MessageParcel &reply); 73 ErrCode SetPhonebookPermissionInner(MessageParcel &data, MessageParcel &reply); 74 ErrCode GetMessagePermissionInner(MessageParcel &data, MessageParcel &reply); 75 ErrCode SetMessagePermissionInner(MessageParcel &data, MessageParcel &reply); 76 ErrCode GetPowerModeInner(MessageParcel &data, MessageParcel &reply); 77 int32_t GetDeviceNameInner(MessageParcel &data, MessageParcel &reply); 78 ErrCode GetDeviceAliasInner(MessageParcel &data, MessageParcel &reply); 79 ErrCode SetDeviceAliasInner(MessageParcel &data, MessageParcel &reply); 80 int32_t GetRemoteDeviceBatteryInfoInner(MessageParcel &data, MessageParcel &reply); 81 ErrCode GetPairStateInner(MessageParcel &data, MessageParcel &reply); 82 int32_t StartPairInner(MessageParcel &data, MessageParcel &reply); 83 ErrCode CancelPairingInner(MessageParcel &data, MessageParcel &reply); 84 ErrCode IsBondedFromLocalInner(MessageParcel &data, MessageParcel &reply); 85 ErrCode IsAclConnectedInner(MessageParcel &data, MessageParcel &reply); 86 ErrCode IsAclEncryptedInner(MessageParcel &data, MessageParcel &reply); 87 int32_t GetDeviceClassInner(MessageParcel &data, MessageParcel &reply); 88 ErrCode SetDevicePinInner(MessageParcel &data, MessageParcel &reply); 89 int32_t SetDevicePairingConfirmationInner(MessageParcel &data, MessageParcel &reply); 90 ErrCode SetDevicePasskeyInner(MessageParcel &data, MessageParcel &reply); 91 ErrCode PairRequestReplyInner(MessageParcel &data, MessageParcel &reply); 92 ErrCode ReadRemoteRssiValueInner(MessageParcel &data, MessageParcel &reply); 93 ErrCode GetLocalSupportedUuidsInner(MessageParcel &data, MessageParcel &reply); 94 ErrCode GetDeviceUuidsInner(MessageParcel &data, MessageParcel &reply); 95 ErrCode GetLocalProfileUuidsInner(MessageParcel &data, MessageParcel &reply); 96 int32_t SetFastScanInner(MessageParcel &data, MessageParcel &reply); 97 ErrCode RegisterBleAdapterObserverInner(MessageParcel &data, MessageParcel &reply); 98 ErrCode DeregisterBleAdapterObserverInner(MessageParcel &data, MessageParcel &reply); 99 ErrCode RegisterBlePeripheralCallbackInner(MessageParcel &data, MessageParcel &reply); 100 ErrCode DeregisterBlePeripheralCallbackInner(MessageParcel &data, MessageParcel &reply); 101 ErrCode GetRandomAddressInner(MessageParcel &data, MessageParcel &reply); 102 ErrCode SyncRandomAddressInner(MessageParcel &data, MessageParcel &reply); 103 ErrCode StartCrediblePairInner(MessageParcel &data, MessageParcel &reply); 104 int32_t ConnectAllowedProfilesInner(MessageParcel &data, MessageParcel &reply); 105 int32_t DisconnectAllowedProfilesInner(MessageParcel &data, MessageParcel &reply); 106 int32_t SetDeviceCustomTypeInner(MessageParcel &data, MessageParcel &reply); 107 int32_t RegisterBtResourceManagerObserverInner(MessageParcel &data, MessageParcel &reply); 108 int32_t DeregisterBtResourceManagerObserverInner(MessageParcel &data, MessageParcel &reply); 109 int32_t UpdateVirtualDeviceInner(MessageParcel &data, MessageParcel &reply); 110 int32_t IsSupportVirtualAutoConnectInner(MessageParcel &data, MessageParcel &reply); 111 int32_t SetVirtualAutoConnectTypeInner(MessageParcel &data, MessageParcel &reply); 112 int32_t SetFastScanLevelInner(MessageParcel &data, MessageParcel &reply); 113 int32_t EnableBluetoothToRestrictModeInner(MessageParcel &data, MessageParcel &reply); 114 115 static const std::map<uint32_t, std::function<ErrCode(BluetoothHostStub *, MessageParcel &, MessageParcel &)>> 116 memberFuncMap_; 117 118 DISALLOW_COPY_AND_MOVE(BluetoothHostStub); 119 }; 120 } // namespace Bluetooth 121 } // namespace OHOS 122 #endif // OHOS_BLUETOOTH_STANDARD_HOST_STUB_H