// Copyright 2017 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 "cc/ipc/copy_output_result.mojom";
import "cc/ipc/texture_mailbox.mojom";
import "mojo/common/unguessable_token.mojom";
import "ui/gfx/geometry/mojo/geometry.mojom";

// See cc/output/copy_output_request.h.
struct CopyOutputRequest {
  mojo.common.mojom.UnguessableToken? source;
  bool force_bitmap_result;
  gfx.mojom.Rect? area;
  TextureMailbox? texture_mailbox;
  CopyOutputResultSender result_sender;
};

// When the display compositor is ready to respond to the CopyOutputRequest,
// it uses this interface to send back the result.
interface CopyOutputResultSender {
  SendResult(CopyOutputResult result);
};
