| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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/sensors/data_fetcher_shared_memory.h" | 5 #include "device/sensors/data_fetcher_shared_memory.h" |
| 6 | 6 |
| 7 #include <GuidDef.h> | 7 #include <GuidDef.h> |
| 8 #include <InitGuid.h> | 8 #include <InitGuid.h> |
| 9 #include <PortableDeviceTypes.h> | 9 #include <PortableDeviceTypes.h> |
| 10 #include <Sensors.h> | 10 #include <Sensors.h> |
| (...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 112 | 112 |
| 113 GetSensorValue(SENSOR_DATA_TYPE_TILT_X_DEGREES, new_data, &beta, &has_beta); | 113 GetSensorValue(SENSOR_DATA_TYPE_TILT_X_DEGREES, new_data, &beta, &has_beta); |
| 114 GetSensorValue(SENSOR_DATA_TYPE_TILT_Y_DEGREES, new_data, &gamma, | 114 GetSensorValue(SENSOR_DATA_TYPE_TILT_Y_DEGREES, new_data, &gamma, |
| 115 &has_gamma); | 115 &has_gamma); |
| 116 GetSensorValue(SENSOR_DATA_TYPE_TILT_Z_DEGREES, new_data, &alpha, | 116 GetSensorValue(SENSOR_DATA_TYPE_TILT_Z_DEGREES, new_data, &alpha, |
| 117 &has_alpha); | 117 &has_alpha); |
| 118 | 118 |
| 119 if (buffer_) { | 119 if (buffer_) { |
| 120 buffer_->seqlock.WriteBegin(); | 120 buffer_->seqlock.WriteBegin(); |
| 121 buffer_->data.alpha = alpha; | 121 buffer_->data.alpha = alpha; |
| 122 buffer_->data.hasAlpha = has_alpha; | 122 buffer_->data.has_alpha = has_alpha; |
| 123 buffer_->data.beta = beta; | 123 buffer_->data.beta = beta; |
| 124 buffer_->data.hasBeta = has_beta; | 124 buffer_->data.has_beta = has_beta; |
| 125 buffer_->data.gamma = gamma; | 125 buffer_->data.gamma = gamma; |
| 126 buffer_->data.hasGamma = has_gamma; | 126 buffer_->data.has_gamma = has_gamma; |
| 127 buffer_->data.absolute = has_alpha || has_beta || has_gamma; | 127 buffer_->data.absolute = has_alpha || has_beta || has_gamma; |
| 128 buffer_->data.allAvailableSensorsAreActive = true; | 128 buffer_->data.all_available_sensors_are_active = true; |
| 129 buffer_->seqlock.WriteEnd(); | 129 buffer_->seqlock.WriteEnd(); |
| 130 } | 130 } |
| 131 | 131 |
| 132 return true; | 132 return true; |
| 133 } | 133 } |
| 134 | 134 |
| 135 private: | 135 private: |
| 136 DeviceOrientationHardwareBuffer* const buffer_; | 136 DeviceOrientationHardwareBuffer* const buffer_; |
| 137 | 137 |
| 138 DISALLOW_COPY_AND_ASSIGN(SensorEventSinkOrientation); | 138 DISALLOW_COPY_AND_ASSIGN(SensorEventSinkOrientation); |
| (...skipping 26 matching lines...) Expand all Loading... |
| 165 &has_acceleration_including_gravity_x); | 165 &has_acceleration_including_gravity_x); |
| 166 GetSensorValue(SENSOR_DATA_TYPE_ACCELERATION_Y_G, new_data, | 166 GetSensorValue(SENSOR_DATA_TYPE_ACCELERATION_Y_G, new_data, |
| 167 &acceleration_including_gravity_y, | 167 &acceleration_including_gravity_y, |
| 168 &has_acceleration_including_gravity_y); | 168 &has_acceleration_including_gravity_y); |
| 169 GetSensorValue(SENSOR_DATA_TYPE_ACCELERATION_Z_G, new_data, | 169 GetSensorValue(SENSOR_DATA_TYPE_ACCELERATION_Z_G, new_data, |
| 170 &acceleration_including_gravity_z, | 170 &acceleration_including_gravity_z, |
| 171 &has_acceleration_including_gravity_z); | 171 &has_acceleration_including_gravity_z); |
| 172 | 172 |
| 173 if (buffer_) { | 173 if (buffer_) { |
| 174 buffer_->seqlock.WriteBegin(); | 174 buffer_->seqlock.WriteBegin(); |
| 175 buffer_->data.accelerationIncludingGravityX = | 175 buffer_->data.acceleration_including_gravity_x = |
| 176 -acceleration_including_gravity_x * kMeanGravity; | 176 -acceleration_including_gravity_x * kMeanGravity; |
| 177 buffer_->data.hasAccelerationIncludingGravityX = | 177 buffer_->data.has_acceleration_including_gravity_x = |
| 178 has_acceleration_including_gravity_x; | 178 has_acceleration_including_gravity_x; |
| 179 buffer_->data.accelerationIncludingGravityY = | 179 buffer_->data.acceleration_including_gravity_y = |
| 180 -acceleration_including_gravity_y * kMeanGravity; | 180 -acceleration_including_gravity_y * kMeanGravity; |
| 181 buffer_->data.hasAccelerationIncludingGravityY = | 181 buffer_->data.has_acceleration_including_gravity_y = |
| 182 has_acceleration_including_gravity_y; | 182 has_acceleration_including_gravity_y; |
| 183 buffer_->data.accelerationIncludingGravityZ = | 183 buffer_->data.acceleration_including_gravity_z = |
| 184 -acceleration_including_gravity_z * kMeanGravity; | 184 -acceleration_including_gravity_z * kMeanGravity; |
| 185 buffer_->data.hasAccelerationIncludingGravityZ = | 185 buffer_->data.has_acceleration_including_gravity_z = |
| 186 has_acceleration_including_gravity_z; | 186 has_acceleration_including_gravity_z; |
| 187 // TODO(timvolodine): consider setting this after all | 187 // TODO(timvolodine): consider setting this after all |
| 188 // sensors have fired. | 188 // sensors have fired. |
| 189 buffer_->data.allAvailableSensorsAreActive = true; | 189 buffer_->data.all_available_sensors_are_active = true; |
| 190 buffer_->seqlock.WriteEnd(); | 190 buffer_->seqlock.WriteEnd(); |
| 191 } | 191 } |
| 192 | 192 |
| 193 } else if (IsEqualIID(sensor_type, SENSOR_TYPE_GYROMETER_3D)) { | 193 } else if (IsEqualIID(sensor_type, SENSOR_TYPE_GYROMETER_3D)) { |
| 194 double alpha, beta, gamma; | 194 double alpha, beta, gamma; |
| 195 bool has_alpha, has_beta, has_gamma; | 195 bool has_alpha, has_beta, has_gamma; |
| 196 | 196 |
| 197 GetSensorValue(SENSOR_DATA_TYPE_ANGULAR_VELOCITY_X_DEGREES_PER_SECOND, | 197 GetSensorValue(SENSOR_DATA_TYPE_ANGULAR_VELOCITY_X_DEGREES_PER_SECOND, |
| 198 new_data, &alpha, &has_alpha); | 198 new_data, &alpha, &has_alpha); |
| 199 GetSensorValue(SENSOR_DATA_TYPE_ANGULAR_VELOCITY_Y_DEGREES_PER_SECOND, | 199 GetSensorValue(SENSOR_DATA_TYPE_ANGULAR_VELOCITY_Y_DEGREES_PER_SECOND, |
| 200 new_data, &beta, &has_beta); | 200 new_data, &beta, &has_beta); |
| 201 GetSensorValue(SENSOR_DATA_TYPE_ANGULAR_VELOCITY_Z_DEGREES_PER_SECOND, | 201 GetSensorValue(SENSOR_DATA_TYPE_ANGULAR_VELOCITY_Z_DEGREES_PER_SECOND, |
| 202 new_data, &gamma, &has_gamma); | 202 new_data, &gamma, &has_gamma); |
| 203 | 203 |
| 204 if (buffer_) { | 204 if (buffer_) { |
| 205 buffer_->seqlock.WriteBegin(); | 205 buffer_->seqlock.WriteBegin(); |
| 206 buffer_->data.rotationRateAlpha = alpha; | 206 buffer_->data.rotation_rate_alpha = alpha; |
| 207 buffer_->data.hasRotationRateAlpha = has_alpha; | 207 buffer_->data.has_rotation_rate_alpha = has_alpha; |
| 208 buffer_->data.rotationRateBeta = beta; | 208 buffer_->data.rotation_rate_beta = beta; |
| 209 buffer_->data.hasRotationRateBeta = has_beta; | 209 buffer_->data.has_rotation_rate_beta = has_beta; |
| 210 buffer_->data.rotationRateGamma = gamma; | 210 buffer_->data.rotation_rate_gamma = gamma; |
| 211 buffer_->data.hasRotationRateGamma = has_gamma; | 211 buffer_->data.has_rotation_rate_gamma = has_gamma; |
| 212 buffer_->data.allAvailableSensorsAreActive = true; | 212 buffer_->data.all_available_sensors_are_active = true; |
| 213 buffer_->seqlock.WriteEnd(); | 213 buffer_->seqlock.WriteEnd(); |
| 214 } | 214 } |
| 215 } | 215 } |
| 216 | 216 |
| 217 return true; | 217 return true; |
| 218 } | 218 } |
| 219 | 219 |
| 220 private: | 220 private: |
| 221 DeviceMotionHardwareBuffer* const buffer_; | 221 DeviceMotionHardwareBuffer* const buffer_; |
| 222 | 222 |
| (...skipping 225 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 448 } | 448 } |
| 449 } | 449 } |
| 450 | 450 |
| 451 void DataFetcherSharedMemory::SetBufferAvailableState( | 451 void DataFetcherSharedMemory::SetBufferAvailableState( |
| 452 ConsumerType consumer_type, | 452 ConsumerType consumer_type, |
| 453 bool enabled) { | 453 bool enabled) { |
| 454 switch (consumer_type) { | 454 switch (consumer_type) { |
| 455 case CONSUMER_TYPE_ORIENTATION: | 455 case CONSUMER_TYPE_ORIENTATION: |
| 456 if (orientation_buffer_) { | 456 if (orientation_buffer_) { |
| 457 orientation_buffer_->seqlock.WriteBegin(); | 457 orientation_buffer_->seqlock.WriteBegin(); |
| 458 orientation_buffer_->data.allAvailableSensorsAreActive = enabled; | 458 orientation_buffer_->data.all_available_sensors_are_active = enabled; |
| 459 orientation_buffer_->seqlock.WriteEnd(); | 459 orientation_buffer_->seqlock.WriteEnd(); |
| 460 } | 460 } |
| 461 break; | 461 break; |
| 462 case CONSUMER_TYPE_ORIENTATION_ABSOLUTE: | 462 case CONSUMER_TYPE_ORIENTATION_ABSOLUTE: |
| 463 if (orientation_absolute_buffer_) { | 463 if (orientation_absolute_buffer_) { |
| 464 orientation_absolute_buffer_->seqlock.WriteBegin(); | 464 orientation_absolute_buffer_->seqlock.WriteBegin(); |
| 465 orientation_absolute_buffer_->data.allAvailableSensorsAreActive = | 465 orientation_absolute_buffer_->data.all_available_sensors_are_active = |
| 466 enabled; | 466 enabled; |
| 467 orientation_absolute_buffer_->seqlock.WriteEnd(); | 467 orientation_absolute_buffer_->seqlock.WriteEnd(); |
| 468 } | 468 } |
| 469 break; | 469 break; |
| 470 case CONSUMER_TYPE_MOTION: | 470 case CONSUMER_TYPE_MOTION: |
| 471 if (motion_buffer_) { | 471 if (motion_buffer_) { |
| 472 motion_buffer_->seqlock.WriteBegin(); | 472 motion_buffer_->seqlock.WriteBegin(); |
| 473 motion_buffer_->data.allAvailableSensorsAreActive = enabled; | 473 motion_buffer_->data.all_available_sensors_are_active = enabled; |
| 474 motion_buffer_->seqlock.WriteEnd(); | 474 motion_buffer_->seqlock.WriteEnd(); |
| 475 } | 475 } |
| 476 break; | 476 break; |
| 477 default: | 477 default: |
| 478 NOTREACHED(); | 478 NOTREACHED(); |
| 479 } | 479 } |
| 480 } | 480 } |
| 481 | 481 |
| 482 } // namespace device | 482 } // namespace device |
| OLD | NEW |