| 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 #ifndef SensorProxy_h | 5 #ifndef SensorProxy_h |
| 6 #define SensorProxy_h | 6 #define SensorProxy_h |
| 7 | 7 |
| 8 #include "device/generic_sensor/public/interfaces/sensor.mojom-blink.h" | 8 #include "device/generic_sensor/public/interfaces/sensor.mojom-blink.h" |
| 9 #include "device/generic_sensor/public/interfaces/sensor_provider.mojom-blink.h" | 9 #include "device/generic_sensor/public/interfaces/sensor_provider.mojom-blink.h" |
| 10 #include "mojo/public/cpp/bindings/binding.h" | 10 #include "mojo/public/cpp/bindings/binding.h" |
| (...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 52 void suspend(); | 52 void suspend(); |
| 53 void resume(); | 53 void resume(); |
| 54 | 54 |
| 55 device::mojom::blink::SensorType type() const { return m_type; } | 55 device::mojom::blink::SensorType type() const { return m_type; } |
| 56 device::mojom::blink::ReportingMode reportingMode() const { return m_mode; } | 56 device::mojom::blink::ReportingMode reportingMode() const { return m_mode; } |
| 57 | 57 |
| 58 struct Reading { | 58 struct Reading { |
| 59 double timestamp; | 59 double timestamp; |
| 60 double reading[3]; | 60 double reading[3]; |
| 61 }; | 61 }; |
| 62 static_assert(sizeof(Reading) == device::mojom::blink::SensorReadBuffer::kRe
adBufferSize, "Check reading size"); | 62 static_assert(sizeof(Reading) == device::mojom::blink::SensorInitParams::kRe
adBufferSize, "Check reading size"); |
| 63 | 63 |
| 64 const Reading& reading() const { return m_reading; } | 64 const Reading& reading() const { return m_reading; } |
| 65 | 65 |
| 66 const device::mojom::blink::SensorConfiguration* defaultConfig() const; |
| 67 |
| 66 // Updates internal reading from shared buffer. | 68 // Updates internal reading from shared buffer. |
| 67 void updateInternalReading(); | 69 void updateInternalReading(); |
| 68 | 70 |
| 69 DECLARE_VIRTUAL_TRACE(); | 71 DECLARE_VIRTUAL_TRACE(); |
| 70 | 72 |
| 71 private: | 73 private: |
| 72 friend class SensorProviderProxy; | 74 friend class SensorProviderProxy; |
| 73 SensorProxy(device::mojom::blink::SensorType, SensorProviderProxy*); | 75 SensorProxy(device::mojom::blink::SensorType, SensorProviderProxy*); |
| 74 | 76 |
| 75 // device::mojom::blink::SensorClient overrides. | 77 // device::mojom::blink::SensorClient overrides. |
| 76 void RaiseError() override; | 78 void RaiseError() override; |
| 77 void SensorReadingChanged() override; | 79 void SensorReadingChanged() override; |
| 78 | 80 |
| 79 // Generic handler for a fatal error. | 81 // Generic handler for a fatal error. |
| 80 void handleSensorError(); | 82 void handleSensorError(); |
| 81 | 83 |
| 82 void onSensorCreated(device::mojom::blink::SensorReadBufferPtr, device::mojo
m::blink::SensorClientRequest); | 84 void onSensorCreated(device::mojom::blink::SensorInitParamsPtr, device::mojo
m::blink::SensorClientRequest); |
| 83 | 85 |
| 84 device::mojom::blink::SensorType m_type; | 86 device::mojom::blink::SensorType m_type; |
| 85 device::mojom::blink::ReportingMode m_mode; | 87 device::mojom::blink::ReportingMode m_mode; |
| 86 Member<SensorProviderProxy> m_provider; | 88 Member<SensorProviderProxy> m_provider; |
| 87 using ObserversSet = HeapHashSet<WeakMember<Observer>>; | 89 using ObserversSet = HeapHashSet<WeakMember<Observer>>; |
| 88 ObserversSet m_observers; | 90 ObserversSet m_observers; |
| 89 | 91 |
| 90 device::mojom::blink::SensorPtr m_sensor; | 92 device::mojom::blink::SensorPtr m_sensor; |
| 93 device::mojom::blink::SensorConfigurationPtr m_defaultConfig; |
| 91 mojo::Binding<device::mojom::blink::SensorClient> m_clientBinding; | 94 mojo::Binding<device::mojom::blink::SensorClient> m_clientBinding; |
| 95 |
| 92 enum State { | 96 enum State { |
| 93 Uninitialized, | 97 Uninitialized, |
| 94 Initializing, | 98 Initializing, |
| 95 Initialized | 99 Initialized |
| 96 }; | 100 }; |
| 97 State m_state; | 101 State m_state; |
| 98 mojo::ScopedSharedBufferHandle m_sharedBufferHandle; | 102 mojo::ScopedSharedBufferHandle m_sharedBufferHandle; |
| 99 mojo::ScopedSharedBufferMapping m_sharedBuffer; | 103 mojo::ScopedSharedBufferMapping m_sharedBuffer; |
| 100 Reading m_reading; | 104 Reading m_reading; |
| 101 bool m_suspended; | 105 bool m_suspended; |
| 102 }; | 106 }; |
| 103 | 107 |
| 104 } // namespace blink | 108 } // namespace blink |
| 105 | 109 |
| 106 #endif // SensorProxy_h | 110 #endif // SensorProxy_h |
| OLD | NEW |