// 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.

module gfx.mojom;

[Stable]
struct Point {
  int32 x;
  int32 y;
};

[Stable]
struct PointF {
  float x;
  float y;
};

struct Point3F {
  float x;
  float y;
  float z;
};

[Stable]
struct Size {
  int32 width;
  int32 height;
};

struct SizeF {
  float width;
  float height;
};

struct Rect {
  int32 x;
  int32 y;
  int32 width;
  int32 height;
};

struct RectF {
  float x;
  float y;
  float width;
  float height;
};

struct Insets {
  int32 top;
  int32 left;
  int32 bottom;
  int32 right;
};

struct InsetsF {
  float top;
  float left;
  float bottom;
  float right;
};

struct Vector2d {
  int32 x;
  int32 y;
};

struct Vector2dF {
  float x;
  float y;
};

struct Vector3dF {
  float x;
  float y;
  float z;
};

struct ScrollOffset {
  float x;
  float y;
};

struct Quaternion {
  double x;
  double y;
  double z;
  double w;
};
