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

Side by Side Diff: content/common/cc_messages.h

Issue 11308306: cc: Add CompositorFrame class with IPC param traits for it (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: forlanding Created 8 years 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 | Annotate | Revision Log
« no previous file with comments | « cc/transferable_resource.h ('k') | content/common/cc_messages.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 (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 // IPC Messages sent between compositor instances. 5 // IPC Messages sent between compositor instances.
6 6
7 #include "cc/checkerboard_draw_quad.h" 7 #include "cc/checkerboard_draw_quad.h"
8 #include "cc/compositor_frame_ack.h"
8 #include "cc/debug_border_draw_quad.h" 9 #include "cc/debug_border_draw_quad.h"
9 #include "cc/draw_quad.h" 10 #include "cc/draw_quad.h"
10 #include "cc/io_surface_draw_quad.h" 11 #include "cc/io_surface_draw_quad.h"
11 #include "cc/render_pass.h" 12 #include "cc/render_pass.h"
12 #include "cc/render_pass_draw_quad.h" 13 #include "cc/render_pass_draw_quad.h"
13 #include "cc/shared_quad_state.h" 14 #include "cc/shared_quad_state.h"
14 #include "cc/solid_color_draw_quad.h" 15 #include "cc/solid_color_draw_quad.h"
15 #include "cc/stream_video_draw_quad.h" 16 #include "cc/stream_video_draw_quad.h"
16 #include "cc/texture_draw_quad.h" 17 #include "cc/texture_draw_quad.h"
17 #include "cc/tile_draw_quad.h" 18 #include "cc/tile_draw_quad.h"
19 #include "cc/transferable_resource.h"
18 #include "cc/video_layer_impl.h" 20 #include "cc/video_layer_impl.h"
19 #include "cc/yuv_video_draw_quad.h" 21 #include "cc/yuv_video_draw_quad.h"
20 #include "content/common/content_export.h" 22 #include "content/common/content_export.h"
21 #include "ipc/ipc_message_macros.h" 23 #include "ipc/ipc_message_macros.h"
22 #include "third_party/WebKit/Source/Platform/chromium/public/WebFilterOperation. h" 24 #include "third_party/WebKit/Source/Platform/chromium/public/WebFilterOperation. h"
23 25
24 #ifndef CONTENT_COMMON_CC_MESSAGES_H_ 26 #ifndef CONTENT_COMMON_CC_MESSAGES_H_
25 #define CONTENT_COMMON_CC_MESSAGES_H_ 27 #define CONTENT_COMMON_CC_MESSAGES_H_
26 28
29 namespace cc {
30 class CompositorFrame;
31 }
32
27 namespace gfx { 33 namespace gfx {
28 class Transform; 34 class Transform;
29 } 35 }
30 36
31 namespace WebKit { 37 namespace WebKit {
32 class WebData; 38 class WebData;
33 class WebFilterOperations; 39 class WebFilterOperations;
34 } 40 }
35 41
36 namespace IPC { 42 namespace IPC {
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
68 }; 74 };
69 75
70 template <> 76 template <>
71 struct CONTENT_EXPORT ParamTraits<cc::RenderPass> { 77 struct CONTENT_EXPORT ParamTraits<cc::RenderPass> {
72 typedef cc::RenderPass param_type; 78 typedef cc::RenderPass param_type;
73 static void Write(Message* m, const param_type& p); 79 static void Write(Message* m, const param_type& p);
74 static bool Read(const Message* m, PickleIterator* iter, param_type* r); 80 static bool Read(const Message* m, PickleIterator* iter, param_type* r);
75 static void Log(const param_type& p, std::string* l); 81 static void Log(const param_type& p, std::string* l);
76 }; 82 };
77 83
84 template<>
85 struct CONTENT_EXPORT ParamTraits<cc::Mailbox> {
86 typedef cc::Mailbox param_type;
87 static void Write(Message* m, const param_type& p);
88 static bool Read(const Message* m, PickleIterator* iter, param_type* p);
89 static void Log(const param_type& p, std::string* l);
90 };
91
92 template<>
93 struct CONTENT_EXPORT ParamTraits<cc::CompositorFrame> {
94 typedef cc::CompositorFrame param_type;
95 static void Write(Message* m, const param_type& p);
96 static bool Read(const Message* m, PickleIterator* iter, param_type* p);
97 static void Log(const param_type& p, std::string* l);
98 };
99
78 } // namespace IPC 100 } // namespace IPC
79 101
80 #endif // CONTENT_COMMON_CC_MESSAGES_H_ 102 #endif // CONTENT_COMMON_CC_MESSAGES_H_
81 103
82 // Multiply-included message file, hence no include guard. 104 // Multiply-included message file, hence no include guard.
83 105
84 #define IPC_MESSAGE_START CCMsgStart 106 #define IPC_MESSAGE_START CCMsgStart
85 #undef IPC_MESSAGE_EXPORT 107 #undef IPC_MESSAGE_EXPORT
86 #define IPC_MESSAGE_EXPORT CONTENT_EXPORT 108 #define IPC_MESSAGE_EXPORT CONTENT_EXPORT
87 109
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after
177 IPC_STRUCT_TRAITS_END() 199 IPC_STRUCT_TRAITS_END()
178 200
179 IPC_STRUCT_TRAITS_BEGIN(cc::SharedQuadState) 201 IPC_STRUCT_TRAITS_BEGIN(cc::SharedQuadState)
180 IPC_STRUCT_TRAITS_MEMBER(content_to_target_transform) 202 IPC_STRUCT_TRAITS_MEMBER(content_to_target_transform)
181 IPC_STRUCT_TRAITS_MEMBER(visible_content_rect) 203 IPC_STRUCT_TRAITS_MEMBER(visible_content_rect)
182 IPC_STRUCT_TRAITS_MEMBER(clipped_rect_in_target) 204 IPC_STRUCT_TRAITS_MEMBER(clipped_rect_in_target)
183 IPC_STRUCT_TRAITS_MEMBER(clip_rect) 205 IPC_STRUCT_TRAITS_MEMBER(clip_rect)
184 IPC_STRUCT_TRAITS_MEMBER(is_clipped) 206 IPC_STRUCT_TRAITS_MEMBER(is_clipped)
185 IPC_STRUCT_TRAITS_MEMBER(opacity) 207 IPC_STRUCT_TRAITS_MEMBER(opacity)
186 IPC_STRUCT_TRAITS_END() 208 IPC_STRUCT_TRAITS_END()
209
210 IPC_STRUCT_TRAITS_BEGIN(cc::TransferableResource)
211 IPC_STRUCT_TRAITS_MEMBER(id)
212 IPC_STRUCT_TRAITS_MEMBER(format)
213 IPC_STRUCT_TRAITS_MEMBER(size)
214 IPC_STRUCT_TRAITS_MEMBER(mailbox)
215 IPC_STRUCT_TRAITS_END()
216
217 IPC_STRUCT_TRAITS_BEGIN(cc::TransferableResourceList)
218 IPC_STRUCT_TRAITS_MEMBER(sync_point)
219 IPC_STRUCT_TRAITS_MEMBER(resources)
220 IPC_STRUCT_TRAITS_END()
221
222 IPC_STRUCT_TRAITS_BEGIN(cc::CompositorFrameAck)
223 IPC_STRUCT_TRAITS_MEMBER(resources)
224 IPC_STRUCT_TRAITS_END()
OLDNEW
« no previous file with comments | « cc/transferable_resource.h ('k') | content/common/cc_messages.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698