OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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/generic_sensor/linux/sensor_device_manager.h" | 5 #include "device/generic_sensor/linux/sensor_device_manager.h" |
6 | 6 |
7 #include "base/strings/string_number_conversions.h" | 7 #include "base/strings/string_number_conversions.h" |
8 #include "base/threading/thread_restrictions.h" | 8 #include "base/threading/thread_restrictions.h" |
9 #include "base/threading/thread_task_runner_handle.h" | 9 #include "base/threading/thread_task_runner_handle.h" |
10 #include "device/generic_sensor/linux/sensor_data_linux.h" | 10 #include "device/generic_sensor/linux/sensor_data_linux.h" |
11 | 11 |
12 namespace device { | 12 namespace device { |
13 | 13 |
14 namespace { | 14 namespace { |
15 | 15 |
16 std::string StringOrEmptyIfNull(const char* value) { | 16 std::string StringOrEmptyIfNull(const char* value) { |
17 return value ? value : std::string(); | 17 return value ? value : std::string(); |
18 } | 18 } |
19 | 19 |
20 } // namespace | 20 } // namespace |
21 | 21 |
22 SensorDeviceManager::SensorDeviceManager() | 22 SensorDeviceManager::SensorDeviceManager() |
23 : observer_(this), | 23 : observer_(this), |
24 delegate_(nullptr), | 24 delegate_(nullptr), |
25 task_runner_(base::ThreadTaskRunnerHandle::Get()) { | 25 task_runner_(base::ThreadTaskRunnerHandle::Get()) { |
26 thread_checker_.DetachFromThread(); | 26 DETACH_FROM_THREAD(thread_checker_); |
27 } | 27 } |
28 | 28 |
29 SensorDeviceManager::~SensorDeviceManager() { | 29 SensorDeviceManager::~SensorDeviceManager() { |
30 DCHECK(thread_checker_.CalledOnValidThread()); | 30 DCHECK_CALLED_ON_VALID_THREAD(thread_checker_); |
31 } | 31 } |
32 | 32 |
33 void SensorDeviceManager::Start(Delegate* delegate) { | 33 void SensorDeviceManager::Start(Delegate* delegate) { |
34 DCHECK(thread_checker_.CalledOnValidThread()); | 34 DCHECK_CALLED_ON_VALID_THREAD(thread_checker_); |
35 base::ThreadRestrictions::AssertIOAllowed(); | 35 base::ThreadRestrictions::AssertIOAllowed(); |
36 DCHECK(!delegate_); | 36 DCHECK(!delegate_); |
37 | 37 |
38 delegate_ = delegate; | 38 delegate_ = delegate; |
39 | 39 |
40 DeviceMonitorLinux* monitor = DeviceMonitorLinux::GetInstance(); | 40 DeviceMonitorLinux* monitor = DeviceMonitorLinux::GetInstance(); |
41 observer_.Add(monitor); | 41 observer_.Add(monitor); |
42 monitor->Enumerate( | 42 monitor->Enumerate( |
43 base::Bind(&SensorDeviceManager::OnDeviceAdded, base::Unretained(this))); | 43 base::Bind(&SensorDeviceManager::OnDeviceAdded, base::Unretained(this))); |
44 | 44 |
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
164 return; | 164 return; |
165 mojom::SensorType type = sensor->second; | 165 mojom::SensorType type = sensor->second; |
166 sensors_by_node_.erase(sensor); | 166 sensors_by_node_.erase(sensor); |
167 | 167 |
168 task_runner_->PostTask( | 168 task_runner_->PostTask( |
169 FROM_HERE, base::Bind(&SensorDeviceManager::Delegate::OnDeviceRemoved, | 169 FROM_HERE, base::Bind(&SensorDeviceManager::Delegate::OnDeviceRemoved, |
170 base::Unretained(delegate_), type, device_node)); | 170 base::Unretained(delegate_), type, device_node)); |
171 } | 171 } |
172 | 172 |
173 } // namespace device | 173 } // namespace device |
OLD | NEW |