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

Unified Diff: device/generic_sensor/platform_sensor_provider_base.cc

Issue 2533793002: [sensors](CrOS/Linux) Implement Sensor device manager for sensors (Closed)
Patch Set: comments Created 4 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 side-by-side diff with in-line comments
Download patch
Index: device/generic_sensor/platform_sensor_provider_base.cc
diff --git a/device/generic_sensor/platform_sensor_provider_base.cc b/device/generic_sensor/platform_sensor_provider_base.cc
index c3f30ceb648966f50954ee5717d6e42ac4686551..eac4ae721e5643a96c35d56a27df783189c2853f 100644
--- a/device/generic_sensor/platform_sensor_provider_base.cc
+++ b/device/generic_sensor/platform_sensor_provider_base.cc
@@ -32,8 +32,7 @@ void PlatformSensorProviderBase::CreateSensor(
return;
}
- mojo::ScopedSharedBufferMapping mapping = shared_buffer_handle_->MapAtOffset(
- kReadingBufferSize, SensorReadingSharedBuffer::GetOffset(type));
+ mojo::ScopedSharedBufferMapping mapping = GetScopedSharedBufferMapping(type);
if (!mapping) {
callback.Run(nullptr);
return;
@@ -78,6 +77,7 @@ void PlatformSensorProviderBase::RemoveSensor(mojom::SensorType type) {
DCHECK(CalledOnValidThread());
DCHECK(ContainsKey(sensor_map_, type));
sensor_map_.erase(type);
+ SensorRemoved(type);
if (sensor_map_.empty()) {
AllSensorsRemoved();
@@ -117,4 +117,20 @@ void PlatformSensorProviderBase::NotifySensorCreated(
requests_map_.erase(type);
}
+std::vector<mojom::SensorType>
+PlatformSensorProviderBase::GetPendingRequestTypes() {
+ std::vector<mojom::SensorType> request_types;
+ for (auto const& entry : requests_map_)
+ request_types.push_back(entry.first);
+ return request_types;
+}
+
+mojo::ScopedSharedBufferMapping
+PlatformSensorProviderBase::GetScopedSharedBufferMapping(
Mikhail 2016/12/09 08:15:56 pls rename it to 'MapSharedBufferForType()'
maksims (do not use this acc) 2016/12/09 10:22:42 Done.
+ mojom::SensorType type) {
+ mojo::ScopedSharedBufferMapping mapping = shared_buffer_handle_->MapAtOffset(
+ kReadingBufferSize, SensorReadingSharedBuffer::GetOffset(type));
Mikhail 2016/12/09 08:15:56 memset(mapping.get(), 0, kReadingBufferSize);
maksims (do not use this acc) 2016/12/09 10:22:42 Done.
+ return mapping;
+}
+
} // namespace device

Powered by Google App Engine
This is Rietveld 408576698