// Copyright 2016 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 cc.mojom;

import "mojo/common/time.mojom";

enum BeginFrameArgsType {
  INVALID,
  NORMAL,
  MISSED,
  BEGIN_FRAME_ARGS_TYPE_MAX
};

// See cc/output/begin_frame_args.h.
struct BeginFrameArgs {
  mojo.common.mojom.TimeTicks frame_time;
  mojo.common.mojom.TimeTicks deadline;
  mojo.common.mojom.TimeDelta interval;
  uint64 sequence_number;
  uint32 source_id;
  BeginFrameArgsType type;
  bool on_critical_path;
};
