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

Side by Side Diff: content/common/gpu/gpu_messages.h

Issue 9194005: gpu: reference target surfaces through a globally unique surface id. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix more tests Created 8 years, 11 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 | Annotate | Revision Log
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 // Multiply-included message file, hence no include guard here, but see below 5 // Multiply-included message file, hence no include guard here, but see below
6 // for a much smaller-than-usual include guard section. 6 // for a much smaller-than-usual include guard section.
7 7
8 #include <vector> 8 #include <vector>
9 #include <string> 9 #include <string>
10 10
(...skipping 16 matching lines...) Expand all
27 27
28 IPC_STRUCT_BEGIN(GPUCreateCommandBufferConfig) 28 IPC_STRUCT_BEGIN(GPUCreateCommandBufferConfig)
29 IPC_STRUCT_MEMBER(int32, share_group_id) 29 IPC_STRUCT_MEMBER(int32, share_group_id)
30 IPC_STRUCT_MEMBER(std::string, allowed_extensions) 30 IPC_STRUCT_MEMBER(std::string, allowed_extensions)
31 IPC_STRUCT_MEMBER(std::vector<int>, attribs) 31 IPC_STRUCT_MEMBER(std::vector<int>, attribs)
32 IPC_STRUCT_MEMBER(GURL, active_url) 32 IPC_STRUCT_MEMBER(GURL, active_url)
33 IPC_STRUCT_MEMBER(gfx::GpuPreference, gpu_preference) 33 IPC_STRUCT_MEMBER(gfx::GpuPreference, gpu_preference)
34 IPC_STRUCT_END() 34 IPC_STRUCT_END()
35 35
36 IPC_STRUCT_BEGIN(GpuHostMsg_AcceleratedSurfaceNew_Params) 36 IPC_STRUCT_BEGIN(GpuHostMsg_AcceleratedSurfaceNew_Params)
37 IPC_STRUCT_MEMBER(int32, client_id) 37 IPC_STRUCT_MEMBER(int32, surface_id)
38 IPC_STRUCT_MEMBER(int32, render_view_id)
39 IPC_STRUCT_MEMBER(int32, width) 38 IPC_STRUCT_MEMBER(int32, width)
40 IPC_STRUCT_MEMBER(int32, height) 39 IPC_STRUCT_MEMBER(int32, height)
41 IPC_STRUCT_MEMBER(uint64, surface_id) 40 IPC_STRUCT_MEMBER(uint64, surface_handle)
42 IPC_STRUCT_MEMBER(int32, route_id) 41 IPC_STRUCT_MEMBER(int32, route_id)
43 #if defined(OS_MACOSX) 42 #if defined(OS_MACOSX)
44 IPC_STRUCT_MEMBER(gfx::PluginWindowHandle, window) 43 IPC_STRUCT_MEMBER(gfx::PluginWindowHandle, window)
45 IPC_STRUCT_MEMBER(bool, create_transport_dib) 44 IPC_STRUCT_MEMBER(bool, create_transport_dib)
46 #endif 45 #endif
47 IPC_STRUCT_END() 46 IPC_STRUCT_END()
48 47
49 IPC_STRUCT_BEGIN(GpuHostMsg_AcceleratedSurfaceBuffersSwapped_Params) 48 IPC_STRUCT_BEGIN(GpuHostMsg_AcceleratedSurfaceBuffersSwapped_Params)
50 IPC_STRUCT_MEMBER(int32, client_id) 49 IPC_STRUCT_MEMBER(int32, surface_id)
51 IPC_STRUCT_MEMBER(int32, render_view_id) 50 IPC_STRUCT_MEMBER(uint64, surface_handle)
52 IPC_STRUCT_MEMBER(uint64, surface_id)
53 IPC_STRUCT_MEMBER(int32, route_id) 51 IPC_STRUCT_MEMBER(int32, route_id)
54 #if defined(OS_WIN) 52 #if defined(OS_WIN)
55 IPC_STRUCT_MEMBER(gfx::Size, size) 53 IPC_STRUCT_MEMBER(gfx::Size, size)
56 #elif defined(OS_MACOSX) 54 #elif defined(OS_MACOSX)
57 IPC_STRUCT_MEMBER(gfx::PluginWindowHandle, window) 55 IPC_STRUCT_MEMBER(gfx::PluginWindowHandle, window)
58 #endif 56 #endif
59 IPC_STRUCT_END() 57 IPC_STRUCT_END()
60 58
61 IPC_STRUCT_BEGIN(GpuHostMsg_AcceleratedSurfacePostSubBuffer_Params) 59 IPC_STRUCT_BEGIN(GpuHostMsg_AcceleratedSurfacePostSubBuffer_Params)
62 IPC_STRUCT_MEMBER(int32, client_id) 60 IPC_STRUCT_MEMBER(int32, surface_id)
63 IPC_STRUCT_MEMBER(int32, render_view_id) 61 IPC_STRUCT_MEMBER(uint64, surface_handle)
64 IPC_STRUCT_MEMBER(uint64, surface_id)
65 IPC_STRUCT_MEMBER(int32, route_id) 62 IPC_STRUCT_MEMBER(int32, route_id)
66 IPC_STRUCT_MEMBER(int, x) 63 IPC_STRUCT_MEMBER(int, x)
67 IPC_STRUCT_MEMBER(int, y) 64 IPC_STRUCT_MEMBER(int, y)
68 IPC_STRUCT_MEMBER(int, width) 65 IPC_STRUCT_MEMBER(int, width)
69 IPC_STRUCT_MEMBER(int, height) 66 IPC_STRUCT_MEMBER(int, height)
70 #if defined(OS_MACOSX) 67 #if defined(OS_MACOSX)
71 IPC_STRUCT_MEMBER(gfx::PluginWindowHandle, window) 68 IPC_STRUCT_MEMBER(gfx::PluginWindowHandle, window)
72 #endif 69 #endif
73 IPC_STRUCT_END() 70 IPC_STRUCT_END()
74 71
75 IPC_STRUCT_BEGIN(GpuHostMsg_AcceleratedSurfaceRelease_Params) 72 IPC_STRUCT_BEGIN(GpuHostMsg_AcceleratedSurfaceRelease_Params)
76 IPC_STRUCT_MEMBER(int32, client_id) 73 IPC_STRUCT_MEMBER(int32, surface_id)
77 IPC_STRUCT_MEMBER(int32, render_view_id)
78 IPC_STRUCT_MEMBER(uint64, identifier) 74 IPC_STRUCT_MEMBER(uint64, identifier)
79 IPC_STRUCT_MEMBER(int32, route_id) 75 IPC_STRUCT_MEMBER(int32, route_id)
80 #if defined(OS_MACOSX) 76 #if defined(OS_MACOSX)
81 IPC_STRUCT_MEMBER(gfx::PluginWindowHandle, window) 77 IPC_STRUCT_MEMBER(gfx::PluginWindowHandle, window)
82 #endif 78 #endif
83 IPC_STRUCT_END() 79 IPC_STRUCT_END()
84 80
85 IPC_STRUCT_BEGIN(GPUCommandBufferConsoleMessage) 81 IPC_STRUCT_BEGIN(GPUCommandBufferConsoleMessage)
86 IPC_STRUCT_MEMBER(int32, id) 82 IPC_STRUCT_MEMBER(int32, id)
87 IPC_STRUCT_MEMBER(std::string, message) 83 IPC_STRUCT_MEMBER(std::string, message)
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
141 137
142 // Tells the GPU process to close the channel identified by IPC channel 138 // Tells the GPU process to close the channel identified by IPC channel
143 // handle. If no channel can be identified, do nothing. 139 // handle. If no channel can be identified, do nothing.
144 IPC_MESSAGE_CONTROL1(GpuMsg_CloseChannel, 140 IPC_MESSAGE_CONTROL1(GpuMsg_CloseChannel,
145 IPC::ChannelHandle /* channel_handle */) 141 IPC::ChannelHandle /* channel_handle */)
146 142
147 // Tells the GPU process to create a new command buffer that renders directly 143 // Tells the GPU process to create a new command buffer that renders directly
148 // to a native view. A corresponding GpuCommandBufferStub is created. 144 // to a native view. A corresponding GpuCommandBufferStub is created.
149 IPC_MESSAGE_CONTROL4(GpuMsg_CreateViewCommandBuffer, 145 IPC_MESSAGE_CONTROL4(GpuMsg_CreateViewCommandBuffer,
150 gfx::PluginWindowHandle, /* compositing_surface */ 146 gfx::PluginWindowHandle, /* compositing_surface */
151 int32, /* render_view_id */ 147 int32, /* surface_id */
152 int32, /* client_id */ 148 int32, /* client_id */
153 GPUCreateCommandBufferConfig /* init_params */) 149 GPUCreateCommandBufferConfig /* init_params */)
154 150
155 // Tells the GPU process to create a context for collecting graphics card 151 // Tells the GPU process to create a context for collecting graphics card
156 // information. 152 // information.
157 IPC_MESSAGE_CONTROL0(GpuMsg_CollectGraphicsInfo) 153 IPC_MESSAGE_CONTROL0(GpuMsg_CollectGraphicsInfo)
158 154
159 // Tells the GPU process that the browser process has finished resizing the 155 // Tells the GPU process that the browser process has finished resizing the
160 // view. 156 // view.
161 IPC_MESSAGE_ROUTED0(AcceleratedSurfaceMsg_ResizeViewACK) 157 IPC_MESSAGE_ROUTED0(AcceleratedSurfaceMsg_ResizeViewACK)
162 158
163 // Tells the GPU process that it's safe to start rendering to the surface. 159 // Tells the GPU process that it's safe to start rendering to the surface.
164 IPC_MESSAGE_ROUTED2(AcceleratedSurfaceMsg_NewACK, 160 IPC_MESSAGE_ROUTED2(AcceleratedSurfaceMsg_NewACK,
165 uint64 /* surface_id */, 161 uint64 /* surface_handle */,
166 TransportDIB::Handle /* shared memory buffer */) 162 TransportDIB::Handle /* shared memory buffer */)
167 163
168 // Tells the GPU process that the browser process handled the swap 164 // Tells the GPU process that the browser process handled the swap
169 // buffers request. 165 // buffers request.
170 IPC_MESSAGE_ROUTED0(AcceleratedSurfaceMsg_BuffersSwappedACK) 166 IPC_MESSAGE_ROUTED0(AcceleratedSurfaceMsg_BuffersSwappedACK)
171 167
172 // Tells the GPU process that the browser process handled the 168 // Tells the GPU process that the browser process handled the
173 // PostSubBuffer command. 169 // PostSubBuffer command.
174 IPC_MESSAGE_ROUTED0(AcceleratedSurfaceMsg_PostSubBufferACK) 170 IPC_MESSAGE_ROUTED0(AcceleratedSurfaceMsg_PostSubBufferACK)
175 171
(...skipping 15 matching lines...) Expand all
191 // return a handle to the channel via a GpuChannelEstablished message. 187 // return a handle to the channel via a GpuChannelEstablished message.
192 IPC_SYNC_MESSAGE_CONTROL1_3(GpuHostMsg_EstablishGpuChannel, 188 IPC_SYNC_MESSAGE_CONTROL1_3(GpuHostMsg_EstablishGpuChannel,
193 content::CauseForGpuLaunch, 189 content::CauseForGpuLaunch,
194 IPC::ChannelHandle /* handle to channel */, 190 IPC::ChannelHandle /* handle to channel */,
195 base::ProcessHandle /* renderer_process_for_gpu */, 191 base::ProcessHandle /* renderer_process_for_gpu */,
196 content::GPUInfo /* stats about GPU process*/) 192 content::GPUInfo /* stats about GPU process*/)
197 193
198 // A renderer sends this to the browser process when it wants to 194 // A renderer sends this to the browser process when it wants to
199 // create a GL context associated with the given view_id. 195 // create a GL context associated with the given view_id.
200 IPC_SYNC_MESSAGE_CONTROL2_1(GpuHostMsg_CreateViewCommandBuffer, 196 IPC_SYNC_MESSAGE_CONTROL2_1(GpuHostMsg_CreateViewCommandBuffer,
201 int32, /* render_view_id */ 197 int32, /* surface_id */
202 GPUCreateCommandBufferConfig, /* init_params */ 198 GPUCreateCommandBufferConfig, /* init_params */
203 int32 /* route_id */) 199 int32 /* route_id */)
204 200
205 // Response from GPU to a GpuHostMsg_EstablishChannel message. 201 // Response from GPU to a GpuHostMsg_EstablishChannel message.
206 IPC_MESSAGE_CONTROL1(GpuHostMsg_ChannelEstablished, 202 IPC_MESSAGE_CONTROL1(GpuHostMsg_ChannelEstablished,
207 IPC::ChannelHandle /* channel_handle */) 203 IPC::ChannelHandle /* channel_handle */)
208 204
209 // Respond from GPU to a GpuMsg_CreateViewCommandBuffer message. 205 // Respond from GPU to a GpuMsg_CreateViewCommandBuffer message.
210 IPC_MESSAGE_CONTROL1(GpuHostMsg_CommandBufferCreated, 206 IPC_MESSAGE_CONTROL1(GpuHostMsg_CommandBufferCreated,
211 int32 /* route_id */) 207 int32 /* route_id */)
212 208
213 // Request from GPU to free the browser resources associated with the 209 // Request from GPU to free the browser resources associated with the
214 // command buffer. 210 // command buffer.
215 IPC_MESSAGE_CONTROL3(GpuHostMsg_DestroyCommandBuffer, 211 IPC_MESSAGE_CONTROL1(GpuHostMsg_DestroyCommandBuffer,
216 gfx::PluginWindowHandle, /* view */ 212 int32 /* surface_id */)
217 int32, /* render_view_id */
218 int32 /* client_id */)
219 213
220 // Response from GPU to a GpuMsg_CollectGraphicsInfo. 214 // Response from GPU to a GpuMsg_CollectGraphicsInfo.
221 IPC_MESSAGE_CONTROL1(GpuHostMsg_GraphicsInfoCollected, 215 IPC_MESSAGE_CONTROL1(GpuHostMsg_GraphicsInfoCollected,
222 content::GPUInfo /* GPU logging stats */) 216 content::GPUInfo /* GPU logging stats */)
223 217
224 // Message from GPU to add a GPU log message to the about:gpu page. 218 // Message from GPU to add a GPU log message to the about:gpu page.
225 IPC_MESSAGE_CONTROL3(GpuHostMsg_OnLogMessage, 219 IPC_MESSAGE_CONTROL3(GpuHostMsg_OnLogMessage,
226 int /*severity*/, 220 int /*severity*/,
227 std::string /* header */, 221 std::string /* header */,
228 std::string /* message */) 222 std::string /* message */)
229 223
230 // Resize the window that is being drawn into. It's important that this 224 // Resize the window that is being drawn into. It's important that this
231 // resize be synchronized with the swapping of the front and back buffers. 225 // resize be synchronized with the swapping of the front and back buffers.
232 IPC_MESSAGE_CONTROL4(GpuHostMsg_ResizeView, 226 IPC_MESSAGE_CONTROL3(GpuHostMsg_ResizeView,
233 int32 /* client_id */, 227 int32 /* surface_id */,
234 int32 /* render_view_id */,
235 int32 /* route_id */, 228 int32 /* route_id */,
236 gfx::Size /* size */) 229 gfx::Size /* size */)
237 230
238 // This message is sent from the GPU process to the browser to notify about a 231 // This message is sent from the GPU process to the browser to notify about a
239 // new or resized surface in the GPU. The browser allocates any resources 232 // new or resized surface in the GPU. The browser allocates any resources
240 // needed for it on its end and replies with an ACK containing any shared 233 // needed for it on its end and replies with an ACK containing any shared
241 // resources/identifiers to be used in the GPU. 234 // resources/identifiers to be used in the GPU.
242 IPC_MESSAGE_CONTROL1(GpuHostMsg_AcceleratedSurfaceNew, 235 IPC_MESSAGE_CONTROL1(GpuHostMsg_AcceleratedSurfaceNew,
243 GpuHostMsg_AcceleratedSurfaceNew_Params) 236 GpuHostMsg_AcceleratedSurfaceNew_Params)
244 237
(...skipping 228 matching lines...) Expand 10 before | Expand all | Expand 10 after
473 466
474 // Confirm decoder has been flushed. 467 // Confirm decoder has been flushed.
475 IPC_MESSAGE_ROUTED0(AcceleratedVideoDecoderHostMsg_FlushDone) 468 IPC_MESSAGE_ROUTED0(AcceleratedVideoDecoderHostMsg_FlushDone)
476 469
477 // Confirm decoder has been reset. 470 // Confirm decoder has been reset.
478 IPC_MESSAGE_ROUTED0(AcceleratedVideoDecoderHostMsg_ResetDone) 471 IPC_MESSAGE_ROUTED0(AcceleratedVideoDecoderHostMsg_ResetDone)
479 472
480 // Video decoder has encountered an error. 473 // Video decoder has encountered an error.
481 IPC_MESSAGE_ROUTED1(AcceleratedVideoDecoderHostMsg_ErrorNotification, 474 IPC_MESSAGE_ROUTED1(AcceleratedVideoDecoderHostMsg_ErrorNotification,
482 uint32) /* Error ID */ 475 uint32) /* Error ID */
OLDNEW
« no previous file with comments | « content/common/gpu/gpu_command_buffer_stub.cc ('k') | content/common/gpu/image_transport_surface.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698