 Chromium Code Reviews
 Chromium Code Reviews Issue 2370343002:
  [sensors] Ambient light sensor implementation for ChromeOS and Linux.  (Closed)
    
  
    Issue 2370343002:
  [sensors] Ambient light sensor implementation for ChromeOS and Linux.  (Closed) 
  | 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/sensor_provider_impl.h" | 5 #include "device/generic_sensor/sensor_provider_impl.h" | 
| 6 | 6 | 
| 7 #include <utility> | 7 #include <utility> | 
| 8 | 8 | 
| 9 #include "device/generic_sensor/platform_sensor_provider.h" | 9 #include "device/generic_sensor/platform_sensor_provider.h" | 
| 10 #include "device/generic_sensor/sensor_impl.h" | 10 #include "device/generic_sensor/sensor_impl.h" | 
| (...skipping 14 matching lines...) Expand all Loading... | |
| 25 mojom::SensorClientRequest client, | 25 mojom::SensorClientRequest client, | 
| 26 const SensorProviderImpl::GetSensorCallback& callback) { | 26 const SensorProviderImpl::GetSensorCallback& callback) { | 
| 27 base::ThreadTaskRunnerHandle::Get()->PostTask( | 27 base::ThreadTaskRunnerHandle::Get()->PostTask( | 
| 28 FROM_HERE, base::Bind(RunCallback, base::Passed(&init_params), | 28 FROM_HERE, base::Bind(RunCallback, base::Passed(&init_params), | 
| 29 base::Passed(&client), callback)); | 29 base::Passed(&client), callback)); | 
| 30 } | 30 } | 
| 31 | 31 | 
| 32 } // namespace | 32 } // namespace | 
| 33 | 33 | 
| 34 // static | 34 // static | 
| 35 void SensorProviderImpl::Create(mojom::SensorProviderRequest request) { | 35 void SensorProviderImpl::Create( | 
| 36 scoped_refptr<base::SingleThreadTaskRunner> task_runner, | |
| 37 mojom::SensorProviderRequest request) { | |
| 36 PlatformSensorProvider* provider = PlatformSensorProvider::GetInstance(); | 38 PlatformSensorProvider* provider = PlatformSensorProvider::GetInstance(); | 
| 37 if (provider) { | 39 if (provider) { | 
| 40 provider->SetTaskRunner(task_runner); | |
| 
Mikhail
2016/10/28 11:29:03
1) this is better to be a ctor partameter
2) it sh
 | |
| 38 mojo::MakeStrongBinding(base::WrapUnique(new SensorProviderImpl(provider)), | 41 mojo::MakeStrongBinding(base::WrapUnique(new SensorProviderImpl(provider)), | 
| 39 std::move(request)); | 42 std::move(request)); | 
| 40 } | 43 } | 
| 41 } | 44 } | 
| 42 | 45 | 
| 43 SensorProviderImpl::SensorProviderImpl(PlatformSensorProvider* provider) | 46 SensorProviderImpl::SensorProviderImpl(PlatformSensorProvider* provider) | 
| 44 : provider_(provider), weak_ptr_factory_(this) { | 47 : provider_(provider), weak_ptr_factory_(this) { | 
| 45 DCHECK(provider_); | 48 DCHECK(provider_); | 
| 46 } | 49 } | 
| 47 | 50 | 
| (...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 89 init_params->mode = sensor->GetReportingMode(); | 92 init_params->mode = sensor->GetReportingMode(); | 
| 90 init_params->default_configuration = sensor->GetDefaultConfiguration(); | 93 init_params->default_configuration = sensor->GetDefaultConfiguration(); | 
| 91 | 94 | 
| 92 NotifySensorCreated(std::move(init_params), sensor_impl->GetClient(), | 95 NotifySensorCreated(std::move(init_params), sensor_impl->GetClient(), | 
| 93 callback); | 96 callback); | 
| 94 | 97 | 
| 95 mojo::MakeStrongBinding(std::move(sensor_impl), std::move(sensor_request)); | 98 mojo::MakeStrongBinding(std::move(sensor_impl), std::move(sensor_request)); | 
| 96 } | 99 } | 
| 97 | 100 | 
| 98 } // namespace device | 101 } // namespace device | 
| OLD | NEW |