OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 module mus.mojom; | 5 module mus.mojom; |
6 | 6 |
| 7 import "cc/ipc/compositor_frame_metadata.mojom"; |
7 import "cc/ipc/returned_resource.mojom"; | 8 import "cc/ipc/returned_resource.mojom"; |
8 import "cc/ipc/transferable_resource.mojom"; | 9 import "cc/ipc/transferable_resource.mojom"; |
9 import "components/mus/public/interfaces/quads.mojom"; | 10 import "components/mus/public/interfaces/quads.mojom"; |
10 import "ui/gfx/geometry/mojo/geometry.mojom"; | 11 import "ui/gfx/geometry/mojo/geometry.mojom"; |
11 import "gpu/ipc/common/mailbox_holder.mojom"; | 12 import "gpu/ipc/common/mailbox_holder.mojom"; |
12 import "gpu/ipc/common/sync_token.mojom"; | 13 import "gpu/ipc/common/sync_token.mojom"; |
13 | 14 |
14 // See cc/output/compositor_frame_metadata.h. | |
15 struct CompositorFrameMetadata { | |
16 float device_scale_factor; | |
17 }; | |
18 | |
19 // See src/cc/output/compositor_frame.h. | 15 // See src/cc/output/compositor_frame.h. |
20 struct CompositorFrame { | 16 struct CompositorFrame { |
21 CompositorFrameMetadata metadata; | 17 cc.mojom.CompositorFrameMetadata metadata; |
22 array<cc.mojom.TransferableResource> resources; | 18 array<cc.mojom.TransferableResource> resources; |
23 array<Pass> passes; | 19 array<Pass> passes; |
24 }; | 20 }; |
25 | 21 |
26 // A Surface is an interface for receiving CompositorFrame structs. This is a | 22 // A Surface is an interface for receiving CompositorFrame structs. This is a |
27 // separate interface to allow CompositorFrames to be delivered from | 23 // separate interface to allow CompositorFrames to be delivered from |
28 // supplementary (not main) threads of a mojo app. | 24 // supplementary (not main) threads of a mojo app. |
29 interface Surface { | 25 interface Surface { |
30 // After the submitted frame is drawn for the first time, the receiver will | 26 // After the submitted frame is drawn for the first time, the receiver will |
31 // respond to the SubmitFrame message. Clients should use this acknowledgement | 27 // respond to the SubmitFrame message. Clients should use this acknowledgement |
32 // to ratelimit frame submissions. | 28 // to ratelimit frame submissions. |
33 SubmitCompositorFrame(CompositorFrame frame) => (); | 29 SubmitCompositorFrame(CompositorFrame frame) => (); |
34 }; | 30 }; |
35 | 31 |
36 interface SurfaceClient { | 32 interface SurfaceClient { |
37 ReturnResources(array<cc.mojom.ReturnedResource> resources); | 33 ReturnResources(array<cc.mojom.ReturnedResource> resources); |
38 }; | 34 }; |
OLD | NEW |