Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(29)

Side by Side Diff: cc/ipc/quads_struct_traits.h

Issue 2285433002: Use compositor_frame typemap in Blink (Closed)
Patch Set: Adapt to new change after rebase Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « cc/ipc/filter_operations_struct_traits.h ('k') | cc/ipc/quads_struct_traits.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 #ifndef CC_IPC_QUADS_STRUCT_TRAITS_H_ 5 #ifndef CC_IPC_QUADS_STRUCT_TRAITS_H_
6 #define CC_IPC_QUADS_STRUCT_TRAITS_H_ 6 #define CC_IPC_QUADS_STRUCT_TRAITS_H_
7 7
8 #include "cc/ipc/filter_operation_struct_traits.h" 8 #include "cc/ipc/filter_operation_struct_traits.h"
9 #include "cc/ipc/filter_operations_struct_traits.h" 9 #include "cc/ipc/filter_operations_struct_traits.h"
10 #include "cc/ipc/quads.mojom.h" 10 #include "cc/ipc/quads.mojom-shared.h"
11 #include "cc/ipc/render_pass_id_struct_traits.h" 11 #include "cc/ipc/render_pass_id_struct_traits.h"
12 #include "cc/ipc/shared_quad_state_struct_traits.h" 12 #include "cc/ipc/shared_quad_state_struct_traits.h"
13 #include "cc/ipc/surface_id_struct_traits.h" 13 #include "cc/ipc/surface_id_struct_traits.h"
14 #include "cc/quads/debug_border_draw_quad.h" 14 #include "cc/quads/debug_border_draw_quad.h"
15 #include "cc/quads/picture_draw_quad.h" 15 #include "cc/quads/picture_draw_quad.h"
16 #include "cc/quads/render_pass_draw_quad.h" 16 #include "cc/quads/render_pass_draw_quad.h"
17 #include "cc/quads/solid_color_draw_quad.h" 17 #include "cc/quads/solid_color_draw_quad.h"
18 #include "cc/quads/stream_video_draw_quad.h" 18 #include "cc/quads/stream_video_draw_quad.h"
19 #include "cc/quads/surface_draw_quad.h" 19 #include "cc/quads/surface_draw_quad.h"
20 #include "cc/quads/texture_draw_quad.h" 20 #include "cc/quads/texture_draw_quad.h"
21 #include "cc/quads/tile_draw_quad.h" 21 #include "cc/quads/tile_draw_quad.h"
22 #include "cc/quads/yuv_video_draw_quad.h" 22 #include "cc/quads/yuv_video_draw_quad.h"
23 #include "ui/gfx/geometry/mojo/geometry_struct_traits.h" 23 #include "ui/gfx/geometry/mojo/geometry_struct_traits.h"
24 24
25 namespace mojo { 25 namespace mojo {
26 26
27 cc::DrawQuad* AllocateAndConstruct( 27 cc::DrawQuad* AllocateAndConstruct(
28 cc::mojom::DrawQuadState::DataView::Tag material, 28 cc::mojom::DrawQuadStateDataView::Tag material,
29 cc::QuadList* list); 29 cc::QuadList* list);
30 30
31 template <> 31 template <>
32 struct UnionTraits<cc::mojom::DrawQuadStateDataView, cc::DrawQuad> { 32 struct UnionTraits<cc::mojom::DrawQuadStateDataView, cc::DrawQuad> {
33 static cc::mojom::DrawQuadState::DataView::Tag GetTag( 33 static cc::mojom::DrawQuadStateDataView::Tag GetTag(
34 const cc::DrawQuad& quad) { 34 const cc::DrawQuad& quad) {
35 switch (quad.material) { 35 switch (quad.material) {
36 case cc::DrawQuad::INVALID: 36 case cc::DrawQuad::INVALID:
37 break; 37 break;
38 case cc::DrawQuad::DEBUG_BORDER: 38 case cc::DrawQuad::DEBUG_BORDER:
39 return cc::mojom::DrawQuadState::DataView::Tag::DEBUG_BORDER_QUAD_STATE; 39 return cc::mojom::DrawQuadStateDataView::Tag::DEBUG_BORDER_QUAD_STATE;
40 case cc::DrawQuad::PICTURE_CONTENT: 40 case cc::DrawQuad::PICTURE_CONTENT:
41 break; 41 break;
42 case cc::DrawQuad::RENDER_PASS: 42 case cc::DrawQuad::RENDER_PASS:
43 return cc::mojom::DrawQuadState::DataView::Tag::RENDER_PASS_QUAD_STATE; 43 return cc::mojom::DrawQuadStateDataView::Tag::RENDER_PASS_QUAD_STATE;
44 case cc::DrawQuad::SOLID_COLOR: 44 case cc::DrawQuad::SOLID_COLOR:
45 return cc::mojom::DrawQuadState::DataView::Tag::SOLID_COLOR_QUAD_STATE; 45 return cc::mojom::DrawQuadStateDataView::Tag::SOLID_COLOR_QUAD_STATE;
46 case cc::DrawQuad::STREAM_VIDEO_CONTENT: 46 case cc::DrawQuad::STREAM_VIDEO_CONTENT:
47 return cc::mojom::DrawQuadState::DataView::Tag::STREAM_VIDEO_QUAD_STATE; 47 return cc::mojom::DrawQuadStateDataView::Tag::STREAM_VIDEO_QUAD_STATE;
48 case cc::DrawQuad::SURFACE_CONTENT: 48 case cc::DrawQuad::SURFACE_CONTENT:
49 return cc::mojom::DrawQuadState::DataView::Tag::SURFACE_QUAD_STATE; 49 return cc::mojom::DrawQuadStateDataView::Tag::SURFACE_QUAD_STATE;
50 case cc::DrawQuad::TEXTURE_CONTENT: 50 case cc::DrawQuad::TEXTURE_CONTENT:
51 return cc::mojom::DrawQuadState::DataView::Tag::TEXTURE_QUAD_STATE; 51 return cc::mojom::DrawQuadStateDataView::Tag::TEXTURE_QUAD_STATE;
52 case cc::DrawQuad::TILED_CONTENT: 52 case cc::DrawQuad::TILED_CONTENT:
53 return cc::mojom::DrawQuadState::DataView::Tag::TILE_QUAD_STATE; 53 return cc::mojom::DrawQuadStateDataView::Tag::TILE_QUAD_STATE;
54 case cc::DrawQuad::YUV_VIDEO_CONTENT: 54 case cc::DrawQuad::YUV_VIDEO_CONTENT:
55 return cc::mojom::DrawQuadState::DataView::Tag::YUV_VIDEO_QUAD_STATE; 55 return cc::mojom::DrawQuadStateDataView::Tag::YUV_VIDEO_QUAD_STATE;
56 } 56 }
57 NOTREACHED(); 57 NOTREACHED();
58 return cc::mojom::DrawQuadState::DataView::Tag::DEBUG_BORDER_QUAD_STATE; 58 return cc::mojom::DrawQuadStateDataView::Tag::DEBUG_BORDER_QUAD_STATE;
59 } 59 }
60 60
61 static const cc::DrawQuad& debug_border_quad_state(const cc::DrawQuad& quad) { 61 static const cc::DrawQuad& debug_border_quad_state(const cc::DrawQuad& quad) {
62 return quad; 62 return quad;
63 } 63 }
64 64
65 static const cc::DrawQuad& render_pass_quad_state(const cc::DrawQuad& quad) { 65 static const cc::DrawQuad& render_pass_quad_state(const cc::DrawQuad& quad) {
66 return quad; 66 return quad;
67 } 67 }
68 68
(...skipping 14 matching lines...) Expand all
83 } 83 }
84 84
85 static const cc::DrawQuad& stream_video_quad_state(const cc::DrawQuad& quad) { 85 static const cc::DrawQuad& stream_video_quad_state(const cc::DrawQuad& quad) {
86 return quad; 86 return quad;
87 } 87 }
88 88
89 static const cc::DrawQuad& yuv_video_quad_state(const cc::DrawQuad& quad) { 89 static const cc::DrawQuad& yuv_video_quad_state(const cc::DrawQuad& quad) {
90 return quad; 90 return quad;
91 } 91 }
92 92
93 static bool Read(cc::mojom::DrawQuadState::DataView data, cc::DrawQuad* out) { 93 static bool Read(cc::mojom::DrawQuadStateDataView data, cc::DrawQuad* out) {
94 switch (data.tag()) { 94 switch (data.tag()) {
95 case cc::mojom::DrawQuadState::DataView::Tag::DEBUG_BORDER_QUAD_STATE: 95 case cc::mojom::DrawQuadStateDataView::Tag::DEBUG_BORDER_QUAD_STATE:
96 return data.ReadDebugBorderQuadState(out); 96 return data.ReadDebugBorderQuadState(out);
97 case cc::mojom::DrawQuadState::DataView::Tag::RENDER_PASS_QUAD_STATE: 97 case cc::mojom::DrawQuadStateDataView::Tag::RENDER_PASS_QUAD_STATE:
98 return data.ReadRenderPassQuadState(out); 98 return data.ReadRenderPassQuadState(out);
99 case cc::mojom::DrawQuadState::DataView::Tag::SOLID_COLOR_QUAD_STATE: 99 case cc::mojom::DrawQuadStateDataView::Tag::SOLID_COLOR_QUAD_STATE:
100 return data.ReadSolidColorQuadState(out); 100 return data.ReadSolidColorQuadState(out);
101 case cc::mojom::DrawQuadState::DataView::Tag::SURFACE_QUAD_STATE: 101 case cc::mojom::DrawQuadStateDataView::Tag::SURFACE_QUAD_STATE:
102 return data.ReadSurfaceQuadState(out); 102 return data.ReadSurfaceQuadState(out);
103 case cc::mojom::DrawQuadState::DataView::Tag::TEXTURE_QUAD_STATE: 103 case cc::mojom::DrawQuadStateDataView::Tag::TEXTURE_QUAD_STATE:
104 return data.ReadTextureQuadState(out); 104 return data.ReadTextureQuadState(out);
105 case cc::mojom::DrawQuadState::DataView::Tag::TILE_QUAD_STATE: 105 case cc::mojom::DrawQuadStateDataView::Tag::TILE_QUAD_STATE:
106 return data.ReadTileQuadState(out); 106 return data.ReadTileQuadState(out);
107 case cc::mojom::DrawQuadState::DataView::Tag::STREAM_VIDEO_QUAD_STATE: 107 case cc::mojom::DrawQuadStateDataView::Tag::STREAM_VIDEO_QUAD_STATE:
108 return data.ReadStreamVideoQuadState(out); 108 return data.ReadStreamVideoQuadState(out);
109 case cc::mojom::DrawQuadState::DataView::Tag::YUV_VIDEO_QUAD_STATE: 109 case cc::mojom::DrawQuadStateDataView::Tag::YUV_VIDEO_QUAD_STATE:
110 return data.ReadYuvVideoQuadState(out); 110 return data.ReadYuvVideoQuadState(out);
111 } 111 }
112 NOTREACHED(); 112 NOTREACHED();
113 return false; 113 return false;
114 } 114 }
115 }; 115 };
116 116
117 template <> 117 template <>
118 struct StructTraits<cc::mojom::DebugBorderQuadStateDataView, cc::DrawQuad> { 118 struct StructTraits<cc::mojom::DebugBorderQuadStateDataView, cc::DrawQuad> {
119 static uint32_t color(const cc::DrawQuad& input) { 119 static uint32_t color(const cc::DrawQuad& input) {
(...skipping 357 matching lines...) Expand 10 before | Expand all | Expand 10 after
477 dq.shared_quad_state = current_sqs; 477 dq.shared_quad_state = current_sqs;
478 return dq; 478 return dq;
479 } 479 }
480 480
481 static size_t GetSize(const cc::QuadList& input) { return input.size(); } 481 static size_t GetSize(const cc::QuadList& input) { return input.size(); }
482 }; 482 };
483 483
484 } // namespace mojo 484 } // namespace mojo
485 485
486 #endif // CC_IPC_QUADS_STRUCT_TRAITS_H_ 486 #endif // CC_IPC_QUADS_STRUCT_TRAITS_H_
OLDNEW
« no previous file with comments | « cc/ipc/filter_operations_struct_traits.h ('k') | cc/ipc/quads_struct_traits.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698