bluetooth_low_energy_central_manager_delegate.h 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. // Copyright 2015 The Chromium Authors. All rights reserved.
  2. // Use of this source code is governed by a BSD-style license that can be
  3. // found in the LICENSE file.
  4. #ifndef DEVICE_BLUETOOTH_BLUETOOTH_LOW_ENERGY_CENTRAL_MANAGER_DELEGATE_H_
  5. #define DEVICE_BLUETOOTH_BLUETOOTH_LOW_ENERGY_CENTRAL_MANAGER_DELEGATE_H_
  6. #import <CoreBluetooth/CoreBluetooth.h>
  7. #include <memory>
  8. #include "build/build_config.h"
  9. #if !BUILDFLAG(IS_IOS)
  10. #import <IOBluetooth/IOBluetooth.h>
  11. #endif
  12. namespace device {
  13. class BluetoothAdapterMac;
  14. class BluetoothLowEnergyCentralManagerBridge;
  15. class BluetoothLowEnergyDiscoveryManagerMac;
  16. } // namespace device
  17. // This class will serve as the Objective-C delegate of CBCentralManager.
  18. @interface BluetoothLowEnergyCentralManagerDelegate
  19. : NSObject<CBCentralManagerDelegate> {
  20. std::unique_ptr<device::BluetoothLowEnergyCentralManagerBridge> _bridge;
  21. }
  22. - (instancetype)initWithDiscoveryManager:
  23. (device::BluetoothLowEnergyDiscoveryManagerMac*)
  24. discovery_manager
  25. andAdapter:(device::BluetoothAdapterMac*)adapter;
  26. @end
  27. #endif // DEVICE_BLUETOOTH_BLUETOOTH_LOW_ENERGY_CENTRAL_MANAGER_DELEGATE_H_