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 "ui/mojo/geometry/geometry.mojom"; | 7 import "ui/mojo/geometry/geometry.mojom"; |
8 import "components/mus/public/interfaces/quads.mojom"; | 8 import "components/mus/public/interfaces/quads.mojom"; |
9 | 9 |
10 enum ResourceFormat { | 10 enum ResourceFormat { |
11 RGBA_8888, | 11 RGBA_8888, |
12 RGBA_4444, | 12 RGBA_4444, |
13 BGRA_8888, | 13 BGRA_8888, |
14 ALPHA_8, | 14 ALPHA_8, |
15 LUMINANCE_8, | 15 LUMINANCE_8, |
16 RGB_565, | 16 RGB_565, |
17 ETC1, | 17 ETC1, |
18 }; | 18 }; |
19 | 19 |
| 20 // See src/gpu/command_buffer/common/constants.h |
| 21 enum CommandBufferNamespace { |
| 22 INVALID = -1, |
| 23 |
| 24 GPU_IO, |
| 25 IN_PROCESS, |
| 26 MOJO, |
| 27 OLD_SYNC_POINTS, |
| 28 |
| 29 NUM_COMMAND_BUFFER_NAMESPACES |
| 30 }; |
| 31 |
| 32 // See src/gpu/command_buffer/common/sync_token.h |
| 33 struct SyncToken { |
| 34 bool verified_flush; |
| 35 CommandBufferNamespace namespace_id; |
| 36 uint64 command_buffer_id; |
| 37 uint64 release_count; |
| 38 }; |
| 39 |
20 // See src/cc/resources/returned_resource.h. | 40 // See src/cc/resources/returned_resource.h. |
21 struct ReturnedResource { | 41 struct ReturnedResource { |
22 uint32 id; | 42 uint32 id; |
23 uint32 sync_point; | 43 SyncToken sync_token; |
24 int32 count; | 44 int32 count; |
25 bool lost; | 45 bool lost; |
26 }; | 46 }; |
27 | 47 |
28 // See src/gpu/command_buffer/common/mailbox.h. | 48 // See src/gpu/command_buffer/common/mailbox.h. |
29 struct Mailbox { | 49 struct Mailbox { |
30 array<int8, 64> name; | 50 array<int8, 64> name; |
31 }; | 51 }; |
32 | 52 |
33 // See src/gpu/command_buffer/common/mailbox_holder.h. | 53 // See src/gpu/command_buffer/common/mailbox_holder.h. |
34 struct MailboxHolder { | 54 struct MailboxHolder { |
35 Mailbox mailbox; | 55 Mailbox mailbox; |
| 56 SyncToken sync_token; |
36 uint32 texture_target; | 57 uint32 texture_target; |
37 uint32 sync_point; | |
38 }; | 58 }; |
39 | 59 |
40 // A TransferableResource is a graphics resource such as a texture or a bitmap | 60 // A TransferableResource is a graphics resource such as a texture or a bitmap |
41 // in shared memory (software mode) that is shared between the window server and | 61 // in shared memory (software mode) that is shared between the window server and |
42 // a client. This data structure is used to manage reuse of | 62 // a client. This data structure is used to manage reuse of |
43 // the memory once it is no longer needed by the window server and GPU service. | 63 // the memory once it is no longer needed by the window server and GPU service. |
44 struct TransferableResource { | 64 struct TransferableResource { |
45 // |id| is an integer that uniquely identifies this resource in the client so | 65 // |id| is an integer that uniquely identifies this resource in the client so |
46 // that the window server can return this resource back to the client. | 66 // that the window server can return this resource back to the client. |
47 uint32 id; | 67 uint32 id; |
(...skipping 23 matching lines...) Expand all Loading... |
71 interface Surface { | 91 interface Surface { |
72 // After the submitted frame is drawn for the first time, the receiver will | 92 // After the submitted frame is drawn for the first time, the receiver will |
73 // respond to the SubmitFrame message. Clients should use this acknowledgement | 93 // respond to the SubmitFrame message. Clients should use this acknowledgement |
74 // to ratelimit frame submissions. | 94 // to ratelimit frame submissions. |
75 SubmitCompositorFrame(CompositorFrame frame) => (); | 95 SubmitCompositorFrame(CompositorFrame frame) => (); |
76 }; | 96 }; |
77 | 97 |
78 interface SurfaceClient { | 98 interface SurfaceClient { |
79 ReturnResources(array<ReturnedResource> resources); | 99 ReturnResources(array<ReturnedResource> resources); |
80 }; | 100 }; |
OLD | NEW |