summaryrefslogtreecommitdiffstats
path: root/chromium/third_party/WebKit/public/platform/WebFloatPoint3D.h
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/third_party/WebKit/public/platform/WebFloatPoint3D.h')
-rw-r--r--chromium/third_party/WebKit/public/platform/WebFloatPoint3D.h93
1 files changed, 93 insertions, 0 deletions
diff --git a/chromium/third_party/WebKit/public/platform/WebFloatPoint3D.h b/chromium/third_party/WebKit/public/platform/WebFloatPoint3D.h
new file mode 100644
index 00000000000..9194890e4f7
--- /dev/null
+++ b/chromium/third_party/WebKit/public/platform/WebFloatPoint3D.h
@@ -0,0 +1,93 @@
+// 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 WebFloatPoint3D_h
+#define WebFloatPoint3D_h
+
+#include "WebCommon.h"
+
+#if INSIDE_BLINK
+#include "platform/geometry/FloatPoint3D.h"
+#else
+#include <ui/gfx/point3_f.h>
+#endif
+
+namespace blink {
+
+struct WebFloatPoint3D {
+ float x;
+ float y;
+ float z;
+
+ WebFloatPoint3D()
+ : x(0.0f)
+ , y(0.0f)
+ , z(0.0f)
+ {
+ }
+
+ WebFloatPoint3D(float x, float y, float z)
+ : x(x)
+ , y(y)
+ , z(z)
+ {
+ }
+
+#if INSIDE_BLINK
+ WebFloatPoint3D(const WebCore::FloatPoint3D& p)
+ : x(p.x())
+ , y(p.y())
+ , z(p.z())
+ {
+ }
+
+ WebFloatPoint3D& operator=(const WebCore::FloatPoint3D& p)
+ {
+ x = p.x();
+ y = p.y();
+ z = p.z();
+ return *this;
+ }
+
+ operator WebCore::FloatPoint3D() const
+ {
+ return WebCore::FloatPoint3D(x, y, z);
+ }
+#else
+ WebFloatPoint3D(const gfx::Point3F& p)
+ : x(p.x())
+ , y(p.y())
+ , z(p.z())
+ {
+ }
+
+ WebFloatPoint3D& operator=(const gfx::Point3F& p)
+ {
+ x = p.x();
+ y = p.y();
+ return *this;
+ }
+
+ operator gfx::Point3F() const
+ {
+ return gfx::Point3F(x, y, z);
+ }
+
+#endif
+};
+
+inline bool operator==(const WebFloatPoint3D& a, const WebFloatPoint3D& b)
+{
+ return a.x == b.x && a.y == b.y && a.z == b.z;
+}
+
+inline bool operator!=(const WebFloatPoint3D& a, const WebFloatPoint3D& b)
+{
+ return !(a == b);
+}
+
+} // namespace blink
+
+#endif