Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1536)

Unified Diff: device/bluetooth/bluetooth_low_energy_discovery_manager_mac.mm

Issue 1165053003: Adding support for Low Energy device discovery to BluetoothAdapterMac (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: removing references to CBCentralManager Created 5 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: device/bluetooth/bluetooth_low_energy_discovery_manager_mac.mm
diff --git a/device/bluetooth/bluetooth_low_energy_discovery_manager_mac.mm b/device/bluetooth/bluetooth_low_energy_discovery_manager_mac.mm
index 11d40caa6261d6a8db61b30986e5b5ab3fcfbe9e..104911d7c0b5f376e57041c93a4efb76f0048518 100644
--- a/device/bluetooth/bluetooth_low_energy_discovery_manager_mac.mm
+++ b/device/bluetooth/bluetooth_low_energy_discovery_manager_mac.mm
@@ -79,7 +79,6 @@ class BluetoothLowEnergyDiscoveryManagerMacDelegate {
BluetoothLowEnergyDiscoveryManagerMac::
~BluetoothLowEnergyDiscoveryManagerMac() {
- ClearDevices();
}
bool BluetoothLowEnergyDiscoveryManagerMac::IsDiscovering() const {
@@ -88,7 +87,6 @@ bool BluetoothLowEnergyDiscoveryManagerMac::IsDiscovering() const {
void BluetoothLowEnergyDiscoveryManagerMac::StartDiscovery(
BluetoothDevice::UUIDList services_uuids) {
- ClearDevices();
discovering_ = true;
pending_ = true;
services_uuids_ = services_uuids;
@@ -137,23 +135,17 @@ void BluetoothLowEnergyDiscoveryManagerMac::DiscoveredPeripheral(
CBPeripheral* peripheral,
NSDictionary* advertisementData,
int rssi) {
- // Look for existing device.
- auto iter = devices_.find(
- BluetoothLowEnergyDeviceMac::GetPeripheralIdentifier(peripheral));
- if (iter == devices_.end()) {
- // A device has been added.
- BluetoothLowEnergyDeviceMac* device =
- new BluetoothLowEnergyDeviceMac(peripheral, advertisementData, rssi);
- devices_.insert(devices_.begin(),
- std::make_pair(device->GetIdentifier(), device));
- observer_->DeviceFound(device);
- return;
- }
+ observer_->LowEnergyDeviceUpdated(peripheral, advertisementData, rssi);
+}
- // A device has an update.
- BluetoothLowEnergyDeviceMac* old_device = iter->second;
- old_device->Update(peripheral, advertisementData, rssi);
- observer_->DeviceUpdated(old_device);
+void BluetoothLowEnergyDiscoveryManagerMac::SetManager(
+ CBCentralManager* manager) {
+ // This method should not be called on OS X < 10.7.
scheib 2015/06/17 16:55:08 How about, "setDelegate is only available in OSX 1
krstnmnlsn 2015/06/17 20:18:41 Done.
+ if (base::mac::IsOSLionOrLater()) {
+ SEL selector = NSSelectorFromString(@"setDelegate:");
+ [manager performSelector:selector withObject:bridge_];
+ manager_.reset(manager);
+ }
scheib 2015/06/17 16:55:08 Either return a bool indicating if this was succes
krstnmnlsn 2015/06/17 20:18:41 I like the CHECK idea.
}
BluetoothLowEnergyDiscoveryManagerMac*
@@ -176,7 +168,3 @@ BluetoothLowEnergyDiscoveryManagerMac::BluetoothLowEnergyDiscoveryManagerMac(
}
discovering_ = false;
}
-
-void BluetoothLowEnergyDiscoveryManagerMac::ClearDevices() {
- STLDeleteValues(&devices_);
-}

Powered by Google App Engine
This is Rietveld 408576698