aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/SkIPoint16.h
diff options
context:
space:
mode:
authorGravatar Mike Reed <reed@google.com>2018-04-04 15:39:46 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2018-04-04 20:16:58 +0000
commit1fda0247a77e5c7af57163750a3f7a04fddffdd5 (patch)
treef809560fa1f70bd5d6fc037154e763d9fdf5720e /src/core/SkIPoint16.h
parentcab7d0c118005221691f745df78dc46168e682e1 (diff)
move SkIPoint16 to private header
Bug: skia: Change-Id: Ib8045ac7cc24a44c4b70e73153c6faf098730b63 Reviewed-on: https://skia-review.googlesource.com/118721 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Cary Clark <caryclark@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
Diffstat (limited to 'src/core/SkIPoint16.h')
-rw-r--r--src/core/SkIPoint16.h56
1 files changed, 56 insertions, 0 deletions
diff --git a/src/core/SkIPoint16.h b/src/core/SkIPoint16.h
new file mode 100644
index 0000000000..27052b3f2a
--- /dev/null
+++ b/src/core/SkIPoint16.h
@@ -0,0 +1,56 @@
+/*
+ * Copyright 2018 Google Inc.
+ *
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ */
+
+#ifndef SkIPoint16_DEFINED
+#define SkIPoint16_DEFINED
+
+#include "SkTypes.h"
+
+/** \struct SkIPoint16
+ SkIPoint16 holds two 16 bit integer coordinates.
+ */
+struct SkIPoint16 {
+ int16_t fX; //!< x-axis value used by SkIPoint16
+
+ int16_t fY; //!< y-axis value used by SkIPoint16
+
+ /** Sets fX to x, fY to y. If SK_DEBUG is defined, asserts
+ if x or y does not fit in 16 bits.
+
+ @param x integer x-axis value of constructed SkIPoint
+ @param y integer y-axis value of constructed SkIPoint
+ @return SkIPoint16 (x, y)
+ */
+ static constexpr SkIPoint16 Make(int x, int y) {
+ return {SkToS16(x), SkToS16(y)};
+ }
+
+ /** Returns x-axis value of SkIPoint16.
+
+ @return fX
+ */
+ int16_t x() const { return fX; }
+
+ /** Returns y-axis value of SkIPoint.
+
+ @return fY
+ */
+ int16_t y() const { return fY; }
+
+ /** Sets fX to x and fY to y.
+
+ @param x new value for fX
+ @param y new value for fY
+ */
+ void set(int x, int y) {
+ fX = SkToS16(x);
+ fY = SkToS16(y);
+ }
+};
+
+#endif
+