1/* 2 * Copyright (C) 2010 Apple Inc. All rights reserved. 3 * 4 * Redistribution and use in source and binary forms, with or without 5 * modification, are permitted provided that the following conditions 6 * are met: 7 * * Redistributions of source code must retain the above copyright 8 * notice, this list of conditions and the following disclaimer. 9 * * Redistributions in binary form must reproduce the above copyright 10 * notice, this list of conditions and the following disclaimer in the 11 * documentation and/or other materials provided with the distribution. 12 * 13 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS ``AS IS'' AND ANY 14 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 15 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 16 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR 17 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 18 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 19 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 20 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 21 * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 22 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 23 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 24 */ 25 26#include "config.h" 27#include "DeviceMotionData.h" 28 29namespace WebCore { 30 31PassRefPtr<DeviceMotionData::Acceleration> DeviceMotionData::Acceleration::create(bool canProvideX, double x, 32 bool canProvideY, double y, 33 bool canProvideZ, double z) 34{ 35 return adoptRef(new DeviceMotionData::Acceleration(canProvideX, x, canProvideY, y, canProvideZ, z)); 36} 37 38DeviceMotionData::Acceleration::Acceleration(bool canProvideX, double x, bool canProvideY, double y, bool canProvideZ, double z) 39 : m_x(x) 40 , m_y(y) 41 , m_z(z) 42 , m_canProvideX(canProvideX) 43 , m_canProvideY(canProvideY) 44 , m_canProvideZ(canProvideZ) 45 46{ 47} 48 49PassRefPtr<DeviceMotionData::RotationRate> DeviceMotionData::RotationRate::create(bool canProvideAlpha, double alpha, 50 bool canProvideBeta, double beta, 51 bool canProvideGamma, double gamma) 52{ 53 return adoptRef(new DeviceMotionData::RotationRate(canProvideAlpha, alpha, canProvideBeta, beta, canProvideGamma, gamma)); 54} 55 56DeviceMotionData::RotationRate::RotationRate(bool canProvideAlpha, double alpha, bool canProvideBeta, double beta, bool canProvideGamma, double gamma) 57 : m_alpha(alpha) 58 , m_beta(beta) 59 , m_gamma(gamma) 60 , m_canProvideAlpha(canProvideAlpha) 61 , m_canProvideBeta(canProvideBeta) 62 , m_canProvideGamma(canProvideGamma) 63{ 64} 65 66PassRefPtr<DeviceMotionData> DeviceMotionData::create() 67{ 68 return adoptRef(new DeviceMotionData); 69} 70 71PassRefPtr<DeviceMotionData> DeviceMotionData::create(PassRefPtr<Acceleration> acceleration, PassRefPtr<Acceleration> accelerationIncludingGravity, 72 PassRefPtr<RotationRate> rotationRate, bool canProvideInterval, double interval) 73{ 74 return adoptRef(new DeviceMotionData(acceleration, accelerationIncludingGravity, rotationRate, canProvideInterval, interval)); 75} 76 77DeviceMotionData::DeviceMotionData() 78 : m_canProvideInterval(false) 79{ 80} 81 82DeviceMotionData::DeviceMotionData(PassRefPtr<Acceleration> acceleration, PassRefPtr<Acceleration> accelerationIncludingGravity, 83 PassRefPtr<RotationRate> rotationRate, bool canProvideInterval, double interval) 84 : m_acceleration(acceleration) 85 , m_accelerationIncludingGravity(accelerationIncludingGravity) 86 , m_rotationRate(rotationRate) 87 , m_canProvideInterval(canProvideInterval) 88 , m_interval(interval) 89{ 90} 91 92} // namespace WebCore 93