blob: 61d617624f6b3bb830d641fdf5d09a5ab6c141e9 [file] [log] [blame]
// Copyright 2014 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef DOMPointReadOnly_h
#define DOMPointReadOnly_h
#include "bindings/core/v8/ScriptWrappable.h"
#include "core/CoreExport.h"
#include "platform/heap/Handle.h"
namespace blink {
class DOMMatrixInit;
class DOMPoint;
class DOMPointInit;
class ExceptionState;
class ScriptState;
class ScriptValue;
class CORE_EXPORT DOMPointReadOnly : public GarbageCollected<DOMPointReadOnly>,
public ScriptWrappable {
DEFINE_WRAPPERTYPEINFO();
public:
static DOMPointReadOnly* create(double x, double y, double z, double w);
static DOMPointReadOnly* fromPoint(const DOMPointInit&);
double x() const { return m_x; }
double y() const { return m_y; }
double z() const { return m_z; }
double w() const { return m_w; }
DEFINE_INLINE_TRACE() {}
ScriptValue toJSONForBinding(ScriptState*) const;
DOMPoint* matrixTransform(DOMMatrixInit&, ExceptionState&);
protected:
DOMPointReadOnly(double x, double y, double z, double w);
double m_x;
double m_y;
double m_z;
double m_w;
};
} // namespace blink
#endif