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

Issue 367002: Added Pepper 3D render context that instantiates the GPU plugin.... (Closed)

Created:
11 years, 1 month ago by apatrick
Modified:
9 years, 7 months ago
Reviewers:
gman1, greggman, brettw, jam
CC:
chromium-reviews_googlegroups.com, jam, darin (slow to review), pam+watch_chromium.org, brettw+cc_chromium.org, Vangelis Kokkevis, o3d-review_googlegroups.com
Visibility:
Public.

Description

Added Pepper 3D device that instantiates the GPU plugin and sends GLES2 commands to it via a command buffer. Added API for managing buffers to Pepper 3D device. Removed DCHECK from WebPluginImpl::SetWindow that checks against a windowless plugin being given a window handle. Please check this! Now an initially windowless plugin instance gets a handle when it requests a Pepper 3D context. Perhaps the window handle should be concealed from the underlying plugin isntance. Removed enable_gpu gyp variable and C macro. GPU code is always built on windows but not mac or linux. It is enabled at runtime with the --enable-gpu-plugin switch. Redesigned CommandBuffer interface so it exposes shared memory through a Buffer. This was necessary because Pepper has no notion of shared memory handles. The Buffer exposes the shared memory as both a handle (through base::SharedMemory) and the mapped address and size. Refactored CommandBufferEngine so mapped shared memory addresses and sizes are returned with a single call rather than two separate calls. Added 3D demo to pepper test plugin. TEST=try servers BUG=none Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=35185

Patch Set 1 #

Total comments: 5

Patch Set 2 : '' #

Patch Set 3 : '' #

Patch Set 4 : '' #

Patch Set 5 : '' #

Patch Set 6 : '' #

Patch Set 7 : '' #

Patch Set 8 : '' #

Patch Set 9 : '' #

Patch Set 10 : '' #

Patch Set 11 : '' #

Patch Set 12 : '' #

Patch Set 13 : '' #

Patch Set 14 : '' #

Total comments: 25

Patch Set 15 : '' #

Patch Set 16 : '' #

Total comments: 2

Patch Set 17 : '' #

Patch Set 18 : '' #

Unified diffs Side-by-side diffs Delta from patch set Stats (+1108 lines, -392 lines) Patch
M build/all.gyp View 11 12 13 14 15 16 2 chunks +1 line, -5 lines 0 comments Download
M build/common.gypi View 15 16 4 chunks +8 lines, -6 lines 0 comments Download
M chrome/DEPS View 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/plugin_process_host.cc View 1 chunk +1 line, -0 lines 0 comments Download
M chrome/browser/plugin_service.cc View 15 16 2 chunks +3 lines, -0 lines 0 comments Download
M chrome/chrome.gyp View 11 12 13 14 15 16 3 chunks +5 lines, -2 lines 0 comments Download
M chrome/chrome_renderer.gypi View 13 14 15 16 2 chunks +4 lines, -9 lines 0 comments Download
M chrome/common/chrome_switches.h View 15 16 1 chunk +1 line, -0 lines 0 comments Download
M chrome/common/chrome_switches.cc View 15 16 1 chunk +3 lines, -0 lines 0 comments Download
M chrome/common/command_buffer_messages_internal.h View 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +3 lines, -2 lines 0 comments Download
A chrome/common/gpu_plugin.h View 15 16 1 chunk +15 lines, -0 lines 0 comments Download
A chrome/common/gpu_plugin.cc View 15 16 1 chunk +43 lines, -0 lines 0 comments Download
M chrome/plugin/command_buffer_stub.h View 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +2 lines, -1 line 0 comments Download
M chrome/plugin/command_buffer_stub.cc View 5 6 7 8 9 10 11 12 13 14 15 16 3 chunks +26 lines, -18 lines 0 comments Download
M chrome/plugin/plugin_main.cc View 15 16 2 chunks +3 lines, -0 lines 0 comments Download
M chrome/plugin/webplugin_delegate_stub.h View 11 12 13 14 15 16 1 chunk +2 lines, -0 lines 0 comments Download
M chrome/plugin/webplugin_delegate_stub.cc View 11 12 13 14 15 16 1 chunk +1 line, -1 line 0 comments Download
M chrome/renderer/command_buffer_proxy.h View 5 6 7 8 9 10 11 12 13 14 15 16 3 chunks +4 lines, -4 lines 0 comments Download
M chrome/renderer/command_buffer_proxy.cc View 5 6 7 8 9 10 11 12 13 14 15 16 5 chunks +55 lines, -15 lines 0 comments Download
M chrome/renderer/render_view.cc View 1 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +4 lines, -1 line 0 comments Download
M chrome/renderer/webplugin_delegate_pepper.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 6 chunks +28 lines, -13 lines 0 comments Download
M chrome/renderer/webplugin_delegate_pepper.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 11 chunks +154 lines, -24 lines 0 comments Download
M chrome/renderer/webplugin_delegate_proxy.cc View 11 12 13 14 15 16 1 chunk +1 line, -1 line 0 comments Download
M gpu/command_buffer/client/cmd_buffer_helper.h View 5 6 7 8 9 10 11 12 13 14 15 16 2 chunks +3 lines, -3 lines 0 comments Download
M gpu/command_buffer/client/cmd_buffer_helper.cc View 5 6 7 8 9 10 11 12 13 14 15 16 2 chunks +2 lines, -8 lines 0 comments Download
M gpu/command_buffer/client/cmd_buffer_helper_test.cc View 5 6 7 8 9 10 11 12 13 14 15 16 3 chunks +9 lines, -12 lines 0 comments Download
M gpu/command_buffer/client/fenced_allocator.h View 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +1 line, -1 line 0 comments Download
M gpu/command_buffer/client/fenced_allocator_test.cc View 5 6 7 8 9 10 11 12 13 14 15 16 3 chunks +9 lines, -11 lines 0 comments Download
M gpu/command_buffer/client/gles2_cmd_helper.h View 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +1 line, -1 line 0 comments Download
M gpu/command_buffer/client/gles2_demo.cc View 5 6 7 8 9 10 11 12 13 14 15 16 3 chunks +7 lines, -11 lines 0 comments Download
M gpu/command_buffer/client/gles2_implementation.h View 15 16 1 chunk +0 lines, -1 line 0 comments Download
M gpu/command_buffer/client/id_allocator.h View 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +3 lines, -3 lines 0 comments Download
M gpu/command_buffer/client/id_allocator_test.cc View 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +0 lines, -2 lines 0 comments Download
A gpu/command_buffer/common/buffer.h View 5 6 7 8 9 10 11 12 13 14 1 chunk +29 lines, -0 lines 0 comments Download
M gpu/command_buffer/common/command_buffer.h View 5 6 7 8 9 10 11 12 13 14 15 16 3 chunks +8 lines, -8 lines 0 comments Download
M gpu/command_buffer/common/command_buffer_mock.h View 5 6 7 8 9 10 11 12 13 14 15 16 2 chunks +5 lines, -5 lines 0 comments Download
M gpu/command_buffer/common/gles2_cmd_format.h View 5 6 7 8 9 10 11 12 13 14 15 16 4 chunks +4 lines, -4 lines 0 comments Download
M gpu/command_buffer/common/resource.h View 15 16 1 chunk +0 lines, -1 line 0 comments Download
M gpu/command_buffer/service/cmd_buffer_engine.h View 5 6 7 8 9 10 11 12 13 14 15 16 2 chunks +3 lines, -7 lines 0 comments Download
M gpu/command_buffer/service/command_buffer_service.h View 5 6 7 8 9 10 11 12 13 14 15 16 2 chunks +3 lines, -3 lines 0 comments Download
M gpu/command_buffer/service/command_buffer_service.cc View 5 6 7 8 9 10 11 12 13 14 15 16 4 chunks +33 lines, -11 lines 0 comments Download
M gpu/command_buffer/service/command_buffer_service_unittest.cc View 5 6 7 8 9 10 11 12 13 14 15 16 4 chunks +23 lines, -14 lines 0 comments Download
M gpu/command_buffer/service/common_decoder.cc View 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +5 lines, -5 lines 0 comments Download
M gpu/command_buffer/service/common_decoder_unittest.cc View 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +7 lines, -7 lines 0 comments Download
M gpu/command_buffer/service/gpu_processor.h View 5 6 7 8 9 10 11 12 13 14 15 16 2 chunks +3 lines, -16 lines 0 comments Download
M gpu/command_buffer/service/gpu_processor.cc View 5 6 7 8 9 10 11 12 13 14 15 16 2 chunks +7 lines, -29 lines 0 comments Download
M gpu/command_buffer/service/gpu_processor_mock.h View 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +1 line, -5 lines 0 comments Download
M gpu/command_buffer/service/gpu_processor_unittest.cc View 5 6 7 8 9 10 11 12 13 14 15 16 12 chunks +40 lines, -50 lines 0 comments Download
M gpu/command_buffer/service/gpu_processor_win.cc View 5 6 7 8 9 10 11 12 13 14 15 16 2 chunks +10 lines, -25 lines 0 comments Download
M gpu/gpu.gyp View 5 6 7 8 9 10 11 12 13 14 15 16 3 chunks +24 lines, -7 lines 0 comments Download
M gpu/gpu_plugin/gpu_plugin.h View 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +4 lines, -4 lines 0 comments Download
M gpu/gpu_plugin/gpu_plugin.cc View 5 6 7 8 9 10 11 12 13 14 15 16 3 chunks +3 lines, -3 lines 0 comments Download
M third_party/npapi/bindings/npapi_extensions.h View 3 4 5 6 7 8 9 10 11 12 13 14 15 16 4 chunks +53 lines, -2 lines 0 comments Download
M webkit/glue/plugins/npapi_extension_thunk.cc View 5 6 7 8 9 10 11 12 13 14 15 16 4 chunks +61 lines, -0 lines 0 comments Download
M webkit/glue/plugins/plugin_constants_win.h View 1 chunk +2 lines, -0 lines 0 comments Download
M webkit/glue/plugins/plugin_list.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +1 line, -1 line 0 comments Download
M webkit/glue/plugins/plugin_list.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +1 line, -1 line 0 comments Download
M webkit/glue/plugins/plugin_list_win.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +1 line, -1 line 0 comments Download
M webkit/glue/plugins/webplugin_3d_device_delegate.h View 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +14 lines, -0 lines 0 comments Download
M webkit/glue/webplugin_impl.cc View 11 12 13 14 15 16 2 chunks +2 lines, -2 lines 0 comments Download
A webkit/tools/pepper_test_plugin/DEPS View 1 chunk +3 lines, -0 lines 0 comments Download
A webkit/tools/pepper_test_plugin/command_buffer_pepper.h View 4 5 6 7 8 9 10 1 chunk +52 lines, -0 lines 0 comments Download
A webkit/tools/pepper_test_plugin/command_buffer_pepper.cc View 4 5 6 7 8 9 10 11 12 13 14 1 chunk +180 lines, -0 lines 0 comments Download
M webkit/tools/pepper_test_plugin/main.cc View 11 12 13 14 15 16 1 chunk +2 lines, -0 lines 0 comments Download
M webkit/tools/pepper_test_plugin/pepper_test_plugin.gyp View 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 3 chunks +6 lines, -1 line 0 comments Download
M webkit/tools/pepper_test_plugin/plugin_object.h View 5 6 7 8 9 10 11 12 13 14 15 16 2 chunks +15 lines, -1 line 0 comments Download
M webkit/tools/pepper_test_plugin/plugin_object.cc View 1 2 5 6 7 8 9 10 11 12 13 14 15 16 3 chunks +98 lines, -22 lines 0 comments Download
M webkit/tools/pepper_test_plugin/test_page.html View 11 12 13 14 15 16 1 chunk +1 line, -1 line 0 comments Download
M webkit/webkit.gyp View 1 13 14 15 16 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 13 (0 generated)
brettw
The meat of this looks OK so far. A few nits: http://codereview.chromium.org/367002/diff/1/17 File base/string_util.h (right): ...
11 years, 1 month ago (2009-11-10 00:20:22 UTC) #1
apatrick
http://codereview.chromium.org/367002/diff/1/17 File base/string_util.h (right): http://codereview.chromium.org/367002/diff/1/17#newcode24 Line 24: #define AS_WIDE_STRING_LITERAL2(x) L ## x It's because I ...
11 years, 1 month ago (2009-11-10 00:24:41 UTC) #2
brettw
On 2009/11/10 00:24:41, apatrick wrote: > http://codereview.chromium.org/367002/diff/1/17 > File base/string_util.h (right): > > http://codereview.chromium.org/367002/diff/1/17#newcode24 > ...
11 years, 1 month ago (2009-11-10 01:16:37 UTC) #3
apatrick
http://codereview.chromium.org/367002/diff/1/17 File base/string_util.h (right): http://codereview.chromium.org/367002/diff/1/17#newcode24 Line 24: #define AS_WIDE_STRING_LITERAL2(x) L ## x Oh that's just ...
11 years, 1 month ago (2009-11-10 01:20:41 UTC) #4
apatrick
11 years ago (2009-12-17 19:34:21 UTC) #5
greggman
LGTM from my part. I had one comment but it's not really related to this ...
11 years ago (2009-12-17 20:38:08 UTC) #6
brettw
Random string suggestion first, looking at the rest now http://codereview.chromium.org/367002/diff/18209/18210 File webkit/glue/plugins/plugin_list.h (right): http://codereview.chromium.org/367002/diff/18209/18210#newcode31 webkit/glue/plugins/plugin_list.h:31: ...
11 years ago (2009-12-17 20:49:25 UTC) #7
jam
http://codereview.chromium.org/367002/diff/18209/18213 File base/string_util.h (right): http://codereview.chromium.org/367002/diff/18209/18213#newcode25 base/string_util.h:25: #define AS_WIDE_STRING_LITERAL2(x) L ## x I'm not sure this ...
11 years ago (2009-12-18 21:29:21 UTC) #8
apatrick
http://codereview.chromium.org/367002/diff/18209/18213 File base/string_util.h (right): http://codereview.chromium.org/367002/diff/18209/18213#newcode25 base/string_util.h:25: #define AS_WIDE_STRING_LITERAL2(x) L ## x The string was only ...
11 years ago (2009-12-18 23:38:56 UTC) #9
jam
http://codereview.chromium.org/367002/diff/18209/18213 File base/string_util.h (right): http://codereview.chromium.org/367002/diff/18209/18213#newcode25 base/string_util.h:25: #define AS_WIDE_STRING_LITERAL2(x) L ## x On 2009/12/18 23:38:56, apatrick ...
11 years ago (2009-12-21 18:55:11 UTC) #10
brettw
LGTM from me with these minor changes. http://codereview.chromium.org/367002/diff/18209/18231 File gpu/command_buffer/service/command_buffer_service.cc (right): http://codereview.chromium.org/367002/diff/18209/18231#newcode8 gpu/command_buffer/service/command_buffer_service.cc:8: #include "gpu/command_buffer/service/command_buffer_service.h" ...
11 years ago (2009-12-22 18:49:49 UTC) #11
apatrick
http://codereview.chromium.org/367002/diff/18209/18213 File base/string_util.h (right): http://codereview.chromium.org/367002/diff/18209/18213#newcode25 base/string_util.h:25: #define AS_WIDE_STRING_LITERAL2(x) L ## x On 2009/12/21 18:55:11, John ...
11 years ago (2009-12-22 21:50:47 UTC) #12
jam
11 years ago (2009-12-22 23:21:34 UTC) #13
lgtm

Powered by Google App Engine
This is Rietveld 408576698