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

Side by Side Diff: device/bluetooth/bluetooth_discovery_session.h

Issue 179123008: Migrate chrome.bluetooth API backend to use device::BluetoothDiscoverySession. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase/Reupload Created 6 years, 9 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef DEVICE_BLUETOOTH_BLUETOOTH_DISCOVERY_SESSION_H_ 5 #ifndef DEVICE_BLUETOOTH_BLUETOOTH_DISCOVERY_SESSION_H_
6 #define DEVICE_BLUETOOTH_BLUETOOTH_DISCOVERY_SESSION_H_ 6 #define DEVICE_BLUETOOTH_BLUETOOTH_DISCOVERY_SESSION_H_
7 7
8 #include "base/callback.h" 8 #include "base/callback.h"
9 #include "base/memory/ref_counted.h" 9 #include "base/memory/ref_counted.h"
10 #include "base/memory/weak_ptr.h" 10 #include "base/memory/weak_ptr.h"
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
52 // adapter may or may not stop device discovery, depending on whether or not 52 // adapter may or may not stop device discovery, depending on whether or not
53 // other active discovery sessions are present. Users are highly encouraged 53 // other active discovery sessions are present. Users are highly encouraged
54 // to call this method to end a discovery session, instead of relying on the 54 // to call this method to end a discovery session, instead of relying on the
55 // destructor, so that they can be notified of the result via the callback 55 // destructor, so that they can be notified of the result via the callback
56 // arguments. 56 // arguments.
57 void Stop(const base::Closure& callback, 57 void Stop(const base::Closure& callback,
58 const ErrorCallback& error_callback); 58 const ErrorCallback& error_callback);
59 59
60 private: 60 private:
61 friend class BluetoothAdapter; 61 friend class BluetoothAdapter;
62 explicit BluetoothDiscoverySession(BluetoothAdapter* adapter); 62 explicit BluetoothDiscoverySession(scoped_refptr<BluetoothAdapter> adapter);
63 63
64 // Internal callback invoked when a call to Stop has succeeded. 64 // Internal callback invoked when a call to Stop has succeeded.
65 void OnStop(const base::Closure& callback); 65 void OnStop(const base::Closure& callback);
66 66
67 // Marks this instance as inactive. Called by BluetoothAdapter to mark a 67 // Marks this instance as inactive. Called by BluetoothAdapter to mark a
68 // session as inactive in the case of an unexpected change to the adapter 68 // session as inactive in the case of an unexpected change to the adapter
69 // discovery state. 69 // discovery state.
70 void MarkAsInactive(); 70 void MarkAsInactive();
71 71
72 // Whether or not this instance represents an active discovery session. 72 // Whether or not this instance represents an active discovery session.
73 bool active_; 73 bool active_;
74 74
75 // The adapter that created this instance. 75 // The adapter that created this instance.
76 scoped_refptr<BluetoothAdapter> adapter_; 76 scoped_refptr<BluetoothAdapter> adapter_;
77 77
78 // Note: This should remain the last member so it'll be destroyed and 78 // Note: This should remain the last member so it'll be destroyed and
79 // invalidate its weak pointers before any other members are destroyed. 79 // invalidate its weak pointers before any other members are destroyed.
80 base::WeakPtrFactory<BluetoothDiscoverySession> weak_ptr_factory_; 80 base::WeakPtrFactory<BluetoothDiscoverySession> weak_ptr_factory_;
81 81
82 DISALLOW_COPY_AND_ASSIGN(BluetoothDiscoverySession); 82 DISALLOW_COPY_AND_ASSIGN(BluetoothDiscoverySession);
83 }; 83 };
84 84
85 } // namespace device 85 } // namespace device
86 86
87 #endif // DEVICE_BLUETOOTH_BLUETOOTH_DISCOVERY_SESSION_H_ 87 #endif // DEVICE_BLUETOOTH_BLUETOOTH_DISCOVERY_SESSION_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698