| /* Copyright 2012 The Chromium Authors |

| * Use of this source code is governed by a BSD-style license that can be |

| * found in the LICENSE file. |

| */ |

| |

| /** |

| * This file defines the API to create a 2 dimensional point. |

| * 0,0 is the upper-left starting coordinate. |

| */ |

| |

| /** |

| * The PP_Point structure defines the integer x and y coordinates of a point. |

| */ |

| [assert_size(8), returnByValue] |

| struct PP_Point { |

| /** |

| * This value represents the horizontal coordinate of a point, starting with 0 |

| * as the left-most coordinate. |

| */ |

| int32_t x; |

| |

| /** |

| * This value represents the vertical coordinate of a point, starting with 0 |

| * as the top-most coordinate. |

| */ |

| int32_t y; |

| }; |

| |

| /** |

| * The PP_FloatPoint structure defines the floating-point x and y coordinates |

| * of a point. |

| */ |

| [assert_size(8), returnByValue] |

| struct PP_FloatPoint { |

| float_t x; |

| float_t y; |

| }; |

| |

| #inline c |

| /** |

| * @addtogroup Functions |

| * @{ |

| */ |

| |

| /** |

| * PP_MakePoint() creates a <code>PP_Point</code> given the x and y coordinates |

| * as int32_t values. |

| * |

| * @param[in] x An int32_t value representing a horizontal coordinate of a |

| * point, starting with 0 as the left-most coordinate. |

| * @param[in] y An int32_t value representing a vertical coordinate of a point, |

| * starting with 0 as the top-most coordinate. |

| * |

| * @return A <code>PP_Point</code> structure. |

| */ |

| PP_INLINE struct PP_Point PP_MakePoint(int32_t x, int32_t y) { |

| struct PP_Point ret; |

| ret.x = x; |

| ret.y = y; |

| return ret; |

| } |

| |

| PP_INLINE struct PP_FloatPoint PP_MakeFloatPoint(float x, float y) { |

| struct PP_FloatPoint ret; |

| ret.x = x; |

| ret.y = y; |

| return ret; |

| } |

| /** |

| * @} |

| */ |

| |

| #endinl |

| |