| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2010 Apple Inc. All rights reserved. | 2 * Copyright (C) 2010 Apple Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
| 6 * are met: | 6 * are met: |
| 7 * * Redistributions of source code must retain the above copyright | 7 * * Redistributions of source code must retain the above copyright |
| 8 * notice, this list of conditions and the following disclaimer. | 8 * notice, this list of conditions and the following disclaimer. |
| 9 * * Redistributions in binary form must reproduce the above copyright | 9 * * Redistributions in binary form must reproduce the above copyright |
| 10 * notice, this list of conditions and the following disclaimer in the | 10 * notice, this list of conditions and the following disclaimer in the |
| (...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 98 m_canProvideGamma(canProvideGamma) {} | 98 m_canProvideGamma(canProvideGamma) {} |
| 99 | 99 |
| 100 DeviceMotionData* DeviceMotionData::create() { | 100 DeviceMotionData* DeviceMotionData::create() { |
| 101 return new DeviceMotionData; | 101 return new DeviceMotionData; |
| 102 } | 102 } |
| 103 | 103 |
| 104 DeviceMotionData* DeviceMotionData::create( | 104 DeviceMotionData* DeviceMotionData::create( |
| 105 Acceleration* acceleration, | 105 Acceleration* acceleration, |
| 106 Acceleration* accelerationIncludingGravity, | 106 Acceleration* accelerationIncludingGravity, |
| 107 RotationRate* rotationRate, | 107 RotationRate* rotationRate, |
| 108 bool canProvideInterval, | |
| 109 double interval) { | 108 double interval) { |
| 110 return new DeviceMotionData(acceleration, accelerationIncludingGravity, | 109 return new DeviceMotionData(acceleration, accelerationIncludingGravity, |
| 111 rotationRate, canProvideInterval, interval); | 110 rotationRate, interval); |
| 112 } | 111 } |
| 113 | 112 |
| 114 DeviceMotionData* DeviceMotionData::create(const DeviceMotionEventInit& init) { | 113 DeviceMotionData* DeviceMotionData::create(const DeviceMotionEventInit& init) { |
| 115 return DeviceMotionData::create( | 114 return DeviceMotionData::create( |
| 116 init.hasAcceleration() | 115 init.hasAcceleration() |
| 117 ? DeviceMotionData::Acceleration::create(init.acceleration()) | 116 ? DeviceMotionData::Acceleration::create(init.acceleration()) |
| 118 : nullptr, | 117 : nullptr, |
| 119 init.hasAccelerationIncludingGravity() | 118 init.hasAccelerationIncludingGravity() |
| 120 ? DeviceMotionData::Acceleration::create( | 119 ? DeviceMotionData::Acceleration::create( |
| 121 init.accelerationIncludingGravity()) | 120 init.accelerationIncludingGravity()) |
| 122 : nullptr, | 121 : nullptr, |
| 123 init.hasRotationRate() | 122 init.hasRotationRate() |
| 124 ? DeviceMotionData::RotationRate::create(init.rotationRate()) | 123 ? DeviceMotionData::RotationRate::create(init.rotationRate()) |
| 125 : nullptr, | 124 : nullptr, |
| 126 init.hasInterval(), init.hasInterval() ? init.interval() : 0); | 125 init.hasInterval() ? init.interval() : 0); |
| 127 } | 126 } |
| 128 | 127 |
| 129 DeviceMotionData* DeviceMotionData::create(const WebDeviceMotionData& data) { | 128 DeviceMotionData* DeviceMotionData::create(const WebDeviceMotionData& data) { |
| 130 return DeviceMotionData::create( | 129 return DeviceMotionData::create( |
| 131 DeviceMotionData::Acceleration::create( | 130 DeviceMotionData::Acceleration::create( |
| 132 data.hasAccelerationX, data.accelerationX, data.hasAccelerationY, | 131 data.hasAccelerationX, data.accelerationX, data.hasAccelerationY, |
| 133 data.accelerationY, data.hasAccelerationZ, data.accelerationZ), | 132 data.accelerationY, data.hasAccelerationZ, data.accelerationZ), |
| 134 DeviceMotionData::Acceleration::create( | 133 DeviceMotionData::Acceleration::create( |
| 135 data.hasAccelerationIncludingGravityX, | 134 data.hasAccelerationIncludingGravityX, |
| 136 data.accelerationIncludingGravityX, | 135 data.accelerationIncludingGravityX, |
| 137 data.hasAccelerationIncludingGravityY, | 136 data.hasAccelerationIncludingGravityY, |
| 138 data.accelerationIncludingGravityY, | 137 data.accelerationIncludingGravityY, |
| 139 data.hasAccelerationIncludingGravityZ, | 138 data.hasAccelerationIncludingGravityZ, |
| 140 data.accelerationIncludingGravityZ), | 139 data.accelerationIncludingGravityZ), |
| 141 DeviceMotionData::RotationRate::create( | 140 DeviceMotionData::RotationRate::create( |
| 142 data.hasRotationRateAlpha, data.rotationRateAlpha, | 141 data.hasRotationRateAlpha, data.rotationRateAlpha, |
| 143 data.hasRotationRateBeta, data.rotationRateBeta, | 142 data.hasRotationRateBeta, data.rotationRateBeta, |
| 144 data.hasRotationRateGamma, data.rotationRateGamma), | 143 data.hasRotationRateGamma, data.rotationRateGamma), |
| 145 true, data.interval); | 144 data.interval); |
| 146 } | 145 } |
| 147 | 146 |
| 148 DeviceMotionData::DeviceMotionData() | 147 DeviceMotionData::DeviceMotionData() : m_interval(0) {} |
| 149 : m_canProvideInterval(false), m_interval(0) {} | |
| 150 | 148 |
| 151 DeviceMotionData::DeviceMotionData(Acceleration* acceleration, | 149 DeviceMotionData::DeviceMotionData(Acceleration* acceleration, |
| 152 Acceleration* accelerationIncludingGravity, | 150 Acceleration* accelerationIncludingGravity, |
| 153 RotationRate* rotationRate, | 151 RotationRate* rotationRate, |
| 154 bool canProvideInterval, | |
| 155 double interval) | 152 double interval) |
| 156 : m_acceleration(acceleration), | 153 : m_acceleration(acceleration), |
| 157 m_accelerationIncludingGravity(accelerationIncludingGravity), | 154 m_accelerationIncludingGravity(accelerationIncludingGravity), |
| 158 m_rotationRate(rotationRate), | 155 m_rotationRate(rotationRate), |
| 159 m_canProvideInterval(canProvideInterval), | |
| 160 m_interval(interval) {} | 156 m_interval(interval) {} |
| 161 | 157 |
| 162 DEFINE_TRACE(DeviceMotionData) { | 158 DEFINE_TRACE(DeviceMotionData) { |
| 163 visitor->trace(m_acceleration); | 159 visitor->trace(m_acceleration); |
| 164 visitor->trace(m_accelerationIncludingGravity); | 160 visitor->trace(m_accelerationIncludingGravity); |
| 165 visitor->trace(m_rotationRate); | 161 visitor->trace(m_rotationRate); |
| 166 } | 162 } |
| 167 | 163 |
| 168 bool DeviceMotionData::canProvideEventData() const { | 164 bool DeviceMotionData::canProvideEventData() const { |
| 169 const bool hasAcceleration = | 165 const bool hasAcceleration = |
| 170 m_acceleration && | 166 m_acceleration && |
| 171 (m_acceleration->canProvideX() || m_acceleration->canProvideY() || | 167 (m_acceleration->canProvideX() || m_acceleration->canProvideY() || |
| 172 m_acceleration->canProvideZ()); | 168 m_acceleration->canProvideZ()); |
| 173 const bool hasAccelerationIncludingGravity = | 169 const bool hasAccelerationIncludingGravity = |
| 174 m_accelerationIncludingGravity && | 170 m_accelerationIncludingGravity && |
| 175 (m_accelerationIncludingGravity->canProvideX() || | 171 (m_accelerationIncludingGravity->canProvideX() || |
| 176 m_accelerationIncludingGravity->canProvideY() || | 172 m_accelerationIncludingGravity->canProvideY() || |
| 177 m_accelerationIncludingGravity->canProvideZ()); | 173 m_accelerationIncludingGravity->canProvideZ()); |
| 178 const bool hasRotationRate = | 174 const bool hasRotationRate = |
| 179 m_rotationRate && | 175 m_rotationRate && |
| 180 (m_rotationRate->canProvideAlpha() || m_rotationRate->canProvideBeta() || | 176 (m_rotationRate->canProvideAlpha() || m_rotationRate->canProvideBeta() || |
| 181 m_rotationRate->canProvideGamma()); | 177 m_rotationRate->canProvideGamma()); |
| 182 | 178 |
| 183 return hasAcceleration || hasAccelerationIncludingGravity || hasRotationRate; | 179 return hasAcceleration || hasAccelerationIncludingGravity || hasRotationRate; |
| 184 } | 180 } |
| 185 | 181 |
| 186 } // namespace blink | 182 } // namespace blink |
| OLD | NEW |