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

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

Issue 16136005: Update remaining files to use WeakPtr<T>::get() instead of "operator T*" (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 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 unified diff | Download patch | Annotate | Revision Log
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 #include "device/bluetooth/bluetooth_adapter_factory.h" 5 #include "device/bluetooth/bluetooth_adapter_factory.h"
6 6
7 #include <vector> 7 #include <vector>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/lazy_instance.h" 10 #include "base/lazy_instance.h"
(...skipping 26 matching lines...) Expand all
37 AdapterCallbackList; 37 AdapterCallbackList;
38 38
39 // List of adapter callbacks to be called once the adapter is initialized. 39 // List of adapter callbacks to be called once the adapter is initialized.
40 // Since Google C++ Style (and clang's static analyzer) forbids us having 40 // Since Google C++ Style (and clang's static analyzer) forbids us having
41 // exit-time destructors we use a lazy instance for it. 41 // exit-time destructors we use a lazy instance for it.
42 base::LazyInstance<AdapterCallbackList> adapter_callbacks = 42 base::LazyInstance<AdapterCallbackList> adapter_callbacks =
43 LAZY_INSTANCE_INITIALIZER; 43 LAZY_INSTANCE_INITIALIZER;
44 44
45 void RunAdapterCallbacks() { 45 void RunAdapterCallbacks() {
46 CHECK(default_adapter.Get().get()); 46 CHECK(default_adapter.Get().get());
47 scoped_refptr<BluetoothAdapter> adapter(default_adapter.Get()); 47 scoped_refptr<BluetoothAdapter> adapter(default_adapter.Get().get());
48 for (std::vector<BluetoothAdapterFactory::AdapterCallback>::const_iterator 48 for (std::vector<BluetoothAdapterFactory::AdapterCallback>::const_iterator
49 iter = adapter_callbacks.Get().begin(); 49 iter = adapter_callbacks.Get().begin();
50 iter != adapter_callbacks.Get().end(); 50 iter != adapter_callbacks.Get().end();
51 ++iter) { 51 ++iter) {
52 iter->Run(adapter); 52 iter->Run(adapter);
53 } 53 }
54 adapter_callbacks.Get().clear(); 54 adapter_callbacks.Get().clear();
55 } 55 }
56 56
57 } // namespace 57 } // namespace
(...skipping 25 matching lines...) Expand all
83 new_adapter->Init(); 83 new_adapter->Init();
84 default_adapter.Get() = new_adapter->weak_ptr_factory_.GetWeakPtr(); 84 default_adapter.Get() = new_adapter->weak_ptr_factory_.GetWeakPtr();
85 #elif defined(OS_MACOSX) 85 #elif defined(OS_MACOSX)
86 BluetoothAdapterMac* new_adapter = new BluetoothAdapterMac(); 86 BluetoothAdapterMac* new_adapter = new BluetoothAdapterMac();
87 new_adapter->Init(); 87 new_adapter->Init();
88 default_adapter.Get() = new_adapter->weak_ptr_factory_.GetWeakPtr(); 88 default_adapter.Get() = new_adapter->weak_ptr_factory_.GetWeakPtr();
89 #endif 89 #endif
90 } 90 }
91 91
92 if (default_adapter.Get()->IsInitialized()) { 92 if (default_adapter.Get()->IsInitialized()) {
93 callback.Run(scoped_refptr<BluetoothAdapter>(default_adapter.Get())); 93 callback.Run(scoped_refptr<BluetoothAdapter>(default_adapter.Get().get()));
94 } else { 94 } else {
95 adapter_callbacks.Get().push_back(callback); 95 adapter_callbacks.Get().push_back(callback);
96 } 96 }
97 } 97 }
98 98
99 // static 99 // static
100 scoped_refptr<BluetoothAdapter> BluetoothAdapterFactory::MaybeGetAdapter() { 100 scoped_refptr<BluetoothAdapter> BluetoothAdapterFactory::MaybeGetAdapter() {
101 return scoped_refptr<BluetoothAdapter>(default_adapter.Get()); 101 return scoped_refptr<BluetoothAdapter>(default_adapter.Get().get());
102 } 102 }
103 103
104 } // namespace device 104 } // namespace device
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698