Chromium Code Reviews| Index: Source/WebCore/platform/chromium/support/WebDeviceMotionData.cpp |
| diff --git a/Source/WebCore/platform/chromium/support/WebDeviceMotionData.cpp b/Source/WebCore/platform/chromium/support/WebDeviceMotionData.cpp |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..64824a1c68f77b28efc78fffba09eae26d0354b2 |
| --- /dev/null |
| +++ b/Source/WebCore/platform/chromium/support/WebDeviceMotionData.cpp |
| @@ -0,0 +1,121 @@ |
| +/* |
| + * Copyright (C) 2013 Google Inc. All rights reserved. |
| + * |
| + * Redistribution and use in source and binary forms, with or without |
| + * modification, are permitted provided that the following conditions |
| + * are met: |
| + * |
| + * 1. Redistributions of source code must retain the above copyright |
| + * notice, this list of conditions and the following disclaimer. |
| + * 2. Redistributions in binary form must reproduce the above copyright |
| + * notice, this list of conditions and the following disclaimer in the |
| + * documentation and/or other materials provided with the distribution. |
| + * |
| + * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY |
| + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
| + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE |
| + * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY |
| + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES |
| + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; |
| + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND |
| + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
| + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF |
| + * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| + */ |
| + |
| +#include "config.h" |
| +#include <public/WebDeviceMotionData.h> |
|
Peter Beverloo
2013/04/17 19:08:23
micro nit: newline between lines 26 and 27.
timvolodine
2013/04/18 12:37:38
hmm, unsure why this is needed. Other files in thi
|
| + |
| +#include "DeviceMotionData.h" |
| +#include "WebDeviceMotionEventPump.h" |
| + |
| +namespace WebKit { |
| + |
| +using WebCore::DeviceMotionData; |
| + |
| +WebDeviceMotionData::WebDeviceMotionData() : |
| + m_hasAccelerationX(false), |
| + m_hasAccelerationY(false), |
| + m_hasAccelerationZ(false), |
| + m_hasAccelerationIncludingGravityX(false), |
| + m_hasAccelerationIncludingGravityY(false), |
| + m_hasAccelerationIncludingGravityZ(false), |
| + m_hasRotationRateAlpha(false), |
| + m_hasRotationRateBeta(false), |
| + m_hasRotationRateGamma(false) |
| +{ |
| +} |
| + |
| +void WebDeviceMotionData::setAccelerationX(double acceleration) |
| +{ |
| + m_hasAccelerationX = true; |
| + m_accelerationX = acceleration; |
| +} |
| + |
| +void WebDeviceMotionData::setAccelerationY(double acceleration) |
| +{ |
| + m_hasAccelerationY = true; |
| + m_accelerationY = acceleration; |
| +} |
| + |
| +void WebDeviceMotionData::setAccelerationZ(double acceleration) |
| +{ |
| + m_hasAccelerationZ = true; |
| + m_accelerationZ = acceleration; |
| +} |
| + |
| +void WebDeviceMotionData::setAccelerationIncludingGravityX(double acceleration) |
| +{ |
| + m_hasAccelerationIncludingGravityX = true; |
| + m_accelerationIncludingGravityX = acceleration; |
| +} |
| + |
| +void WebDeviceMotionData::setAccelerationIncludingGravityY(double acceleration) |
| +{ |
| + m_hasAccelerationIncludingGravityY = true; |
| + m_accelerationIncludingGravityY = acceleration; |
| +} |
| + |
| +void WebDeviceMotionData::setAccelerationIncludingGravityZ(double acceleration) |
| +{ |
| + m_hasAccelerationIncludingGravityZ = true; |
| + m_accelerationIncludingGravityZ = acceleration; |
| +} |
| + |
| +void WebDeviceMotionData::setRotationRateAlpha(double rate) |
| +{ |
| + m_hasRotationRateAlpha = true; |
| + m_rotationRateAlpha = rate; |
| +} |
| + |
| +void WebDeviceMotionData::setRotationRateBeta(double rate) |
| +{ |
| + m_hasRotationRateBeta = true; |
| + m_rotationRateBeta = rate; |
| +} |
| + |
| +void WebDeviceMotionData::setRotationRateGamma(double rate) |
| +{ |
| + m_hasRotationRateGamma = true; |
| + m_rotationRateGamma = rate; |
| +} |
| + |
| +WebDeviceMotionData::operator PassRefPtr<WebCore::DeviceMotionData>() const |
| +{ |
| + return DeviceMotionData::create( |
| + DeviceMotionData::Acceleration::create( |
| + m_hasAccelerationX, m_accelerationX, |
| + m_hasAccelerationY, m_accelerationY, |
| + m_hasAccelerationZ, m_accelerationZ), |
| + DeviceMotionData::Acceleration::create( |
| + m_hasAccelerationIncludingGravityX, m_accelerationIncludingGravityX, |
| + m_hasAccelerationIncludingGravityY, m_accelerationIncludingGravityY, |
| + m_hasAccelerationIncludingGravityZ, m_accelerationIncludingGravityZ), |
| + DeviceMotionData::RotationRate::create( |
| + m_hasRotationRateAlpha, m_rotationRateAlpha, |
| + m_hasRotationRateBeta, m_rotationRateBeta, |
| + m_hasRotationRateGamma, m_rotationRateGamma), |
| + true, WebDeviceMotionEventPump::kPumpDelayMilliSeconds); |
| +} |
| + |
| +} // namespace WebKit |