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

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

Issue 778443002: bluetooth: Make device/bluetooth a shared library component. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@lkcr
Patch Set: Set DelayLoadDLL settings on shared library as well Created 6 years 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
« no previous file with comments | « device/bluetooth/bluetooth_adapter_chromeos.h ('k') | device/bluetooth/bluetooth_adapter_mac.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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_ADAPTER_FACTORY_H_ 5 #ifndef DEVICE_BLUETOOTH_BLUETOOTH_ADAPTER_FACTORY_H_
6 #define DEVICE_BLUETOOTH_BLUETOOTH_ADAPTER_FACTORY_H_ 6 #define DEVICE_BLUETOOTH_BLUETOOTH_ADAPTER_FACTORY_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 "device/bluetooth/bluetooth_adapter.h" 10 #include "device/bluetooth/bluetooth_adapter.h"
11 #include "device/bluetooth/bluetooth_export.h"
11 12
12 namespace device { 13 namespace device {
13 14
14 // A factory class for building a Bluetooth adapter on platforms where Bluetooth 15 // A factory class for building a Bluetooth adapter on platforms where Bluetooth
15 // is available. 16 // is available.
16 class BluetoothAdapterFactory { 17 class DEVICE_BLUETOOTH_EXPORT BluetoothAdapterFactory {
17 public: 18 public:
18 typedef base::Callback<void(scoped_refptr<BluetoothAdapter> adapter)> 19 typedef base::Callback<void(scoped_refptr<BluetoothAdapter> adapter)>
19 AdapterCallback; 20 AdapterCallback;
20 21
21 // Returns true if the Bluetooth adapter is available for the current 22 // Returns true if the Bluetooth adapter is available for the current
22 // platform. 23 // platform.
23 static bool IsBluetoothAdapterAvailable(); 24 static bool IsBluetoothAdapterAvailable();
24 25
25 // Returns the shared instance of the default adapter, creating and 26 // Returns the shared instance of the default adapter, creating and
26 // initializing it if necessary. |callback| is called with the adapter 27 // initializing it if necessary. |callback| is called with the adapter
27 // instance passed only once the adapter is fully initialized and ready to 28 // instance passed only once the adapter is fully initialized and ready to
28 // use. 29 // use.
29 static void GetAdapter(const AdapterCallback& callback); 30 static void GetAdapter(const AdapterCallback& callback);
30 31
31 // Sets the shared instance of the default adapter for testing purposes only, 32 // Sets the shared instance of the default adapter for testing purposes only,
32 // no reference is retained after completion of the call, removing the last 33 // no reference is retained after completion of the call, removing the last
33 // reference will reset the factory. 34 // reference will reset the factory.
34 static void SetAdapterForTesting(scoped_refptr<BluetoothAdapter> adapter); 35 static void SetAdapterForTesting(scoped_refptr<BluetoothAdapter> adapter);
35 36
36 // Returns true iff the implementation has a (non-NULL) shared instance of the 37 // Returns true iff the implementation has a (non-NULL) shared instance of the
37 // adapter. Exposed for testing. 38 // adapter. Exposed for testing.
38 static bool HasSharedInstanceForTesting(); 39 static bool HasSharedInstanceForTesting();
39 }; 40 };
40 41
41 } // namespace device 42 } // namespace device
42 43
43 #endif // DEVICE_BLUETOOTH_BLUETOOTH_ADAPTER_FACTORY_H_ 44 #endif // DEVICE_BLUETOOTH_BLUETOOTH_ADAPTER_FACTORY_H_
OLDNEW
« no previous file with comments | « device/bluetooth/bluetooth_adapter_chromeos.h ('k') | device/bluetooth/bluetooth_adapter_mac.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698