WebGeolocationPosition.h [plain text]
#ifndef WebGeolocationPosition_h
#define WebGeolocationPosition_h
#include "APIObject.h"
#include <WebCore/GeolocationPosition.h>
#include <wtf/RefPtr.h>
namespace IPC {
class Decoder;
class Encoder;
}
namespace WebKit {
class WebGeolocationPosition : public API::ObjectImpl<API::Object::Type::GeolocationPosition> {
public:
static Ref<WebGeolocationPosition> create(WebCore::GeolocationPosition&&);
virtual ~WebGeolocationPosition();
double timestamp() const { return m_corePosition.timestamp; }
double latitude() const { return m_corePosition.latitude; }
double longitude() const { return m_corePosition.longitude; }
double accuracy() const { return m_corePosition.accuracy; }
Optional<double> altitude() const { return m_corePosition.altitude; }
Optional<double> altitudeAccuracy() const { return m_corePosition.altitudeAccuracy; }
Optional<double> heading() const { return m_corePosition.heading; }
Optional<double> speed() const { return m_corePosition.speed; }
const WebCore::GeolocationPosition& corePosition() const { return m_corePosition; }
private:
explicit WebGeolocationPosition(WebCore::GeolocationPosition&& geolocationPosition)
: m_corePosition(WTFMove(geolocationPosition))
{
}
WebCore::GeolocationPosition m_corePosition;
};
}
#endif // WebGeolocationPosition_h