OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 cc.mojom; | 5 module cc.mojom; |
6 | 6 |
7 import "cc/ipc/filter_operations.mojom"; | 7 import "cc/ipc/filter_operations.mojom"; |
8 import "cc/ipc/render_pass_id.mojom"; | 8 import "cc/ipc/render_pass_id.mojom"; |
| 9 import "cc/ipc/shared_quad_state.mojom"; |
9 import "cc/ipc/surface_id.mojom"; | 10 import "cc/ipc/surface_id.mojom"; |
10 import "ui/gfx/geometry/mojo/geometry.mojom"; | 11 import "ui/gfx/geometry/mojo/geometry.mojom"; |
11 import "ui/gfx/mojo/transform.mojom"; | 12 import "ui/gfx/mojo/transform.mojom"; |
12 | 13 |
13 struct DebugBorderQuadState { | 14 struct DebugBorderQuadState { |
14 // Debug border color. | 15 // Debug border color. |
15 uint32 color; | 16 uint32 color; |
16 | 17 |
17 // Debug border width. | 18 // Debug border width. |
18 int32 width; | 19 int32 width; |
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
120 gfx.mojom.Rect opaque_rect; | 121 gfx.mojom.Rect opaque_rect; |
121 | 122 |
122 // Allows changing the rect that gets drawn to make it smaller. This value | 123 // Allows changing the rect that gets drawn to make it smaller. This value |
123 // should be clipped to |rect|. This rect lives in content space. | 124 // should be clipped to |rect|. This rect lives in content space. |
124 gfx.mojom.Rect visible_rect; | 125 gfx.mojom.Rect visible_rect; |
125 | 126 |
126 // Allows changing the rect that gets drawn to make it smaller. This value | 127 // Allows changing the rect that gets drawn to make it smaller. This value |
127 // should be clipped to |rect|. This rect lives in content space. | 128 // should be clipped to |rect|. This rect lives in content space. |
128 bool needs_blending; | 129 bool needs_blending; |
129 | 130 |
130 // Index into the containing pass' shared quad state array which has state | 131 // Optionally holds a SharedQuadState (transforms etc) shared by multiple |
131 // (transforms etc) shared by multiple quads. | 132 // quads. |
132 // TODO(fsamuel): This is not currently used because we store the | 133 SharedQuadState? sqs; |
133 // indicies to SharedQuadStates in a separate array. This is more expensive | |
134 // than storing them inline here, but we need support for context propagation | |
135 // in Mojo StructTraits in order to store the sqs index here. | |
136 //uint32 shared_quad_state_index; | |
137 | 134 |
138 // Only one of the following will be set, depending on the material. | 135 // Only one of the following will be set, depending on the material. |
139 DebugBorderQuadState? debug_border_quad_state; | 136 DebugBorderQuadState? debug_border_quad_state; |
140 RenderPassQuadState? render_pass_quad_state; | 137 RenderPassQuadState? render_pass_quad_state; |
141 SolidColorQuadState? solid_color_quad_state; | 138 SolidColorQuadState? solid_color_quad_state; |
142 SurfaceQuadState? surface_quad_state; | 139 SurfaceQuadState? surface_quad_state; |
143 TextureQuadState? texture_quad_state; | 140 TextureQuadState? texture_quad_state; |
144 TileQuadState? tile_quad_state; | 141 TileQuadState? tile_quad_state; |
145 StreamVideoQuadState? stream_video_quad_state; | 142 StreamVideoQuadState? stream_video_quad_state; |
146 YUVVideoQuadState? yuv_video_quad_state; | 143 YUVVideoQuadState? yuv_video_quad_state; |
147 }; | 144 }; |
148 | |
149 struct QuadList { | |
150 array<Material> quad_types; | |
151 array<DrawQuad> quads; | |
152 }; | |
153 | |
OLD | NEW |