summaryrefslogtreecommitdiffstats
path: root/gpu/gles2_conform_support
diff options
context:
space:
mode:
authorgman@chromium.org <gman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-06-01 06:13:40 +0000
committergman@chromium.org <gman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-06-01 06:13:40 +0000
commit1d471e85257d65758aa9bf6b8b0ba8ed38de9e1b (patch)
tree969a3ae1c9531d6f0c3ec561b6ac0459b175f6df /gpu/gles2_conform_support
parentd4554ceb907a41b5e8134e3b66d446c0567870bc (diff)
downloadchromium_src-1d471e85257d65758aa9bf6b8b0ba8ed38de9e1b.zip
chromium_src-1d471e85257d65758aa9bf6b8b0ba8ed38de9e1b.tar.gz
chromium_src-1d471e85257d65758aa9bf6b8b0ba8ed38de9e1b.tar.bz2
Make context groups share a TextureBufferManager
TEST=unit tests, and ran WebGL Conformance tests BUG=129803 Review URL: https://chromiumcodereview.appspot.com/10441140 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@139981 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'gpu/gles2_conform_support')
-rw-r--r--gpu/gles2_conform_support/egl/display.cc8
-rw-r--r--gpu/gles2_conform_support/egl/display.h2
2 files changed, 9 insertions, 1 deletions
diff --git a/gpu/gles2_conform_support/egl/display.cc b/gpu/gles2_conform_support/egl/display.cc
index a81b2b1..4c1c59d 100644
--- a/gpu/gles2_conform_support/egl/display.cc
+++ b/gpu/gles2_conform_support/egl/display.cc
@@ -10,6 +10,7 @@
#include "gpu/command_buffer/client/gles2_lib.h"
#include "gpu/command_buffer/client/transfer_buffer.h"
#include "gpu/command_buffer/service/context_group.h"
+#include "gpu/command_buffer/service/transfer_buffer_manager.h"
#include "gpu/gles2_conform_support/egl/config.h"
#include "gpu/gles2_conform_support/egl/surface.h"
@@ -82,8 +83,13 @@ EGLSurface Display::CreateWindowSurface(EGLConfig config,
return EGL_NO_SURFACE;
}
+ {
+ gpu::TransferBufferManager* manager = new gpu::TransferBufferManager();
+ transfer_buffer_manager_.reset(manager);
+ manager->Initialize();
+ }
scoped_ptr<gpu::CommandBufferService> command_buffer(
- new gpu::CommandBufferService);
+ new gpu::CommandBufferService(transfer_buffer_manager_.get()));
if (!command_buffer->Initialize())
return NULL;
diff --git a/gpu/gles2_conform_support/egl/display.h b/gpu/gles2_conform_support/egl/display.h
index 1138fdf..1cec2f9 100644
--- a/gpu/gles2_conform_support/egl/display.h
+++ b/gpu/gles2_conform_support/egl/display.h
@@ -20,6 +20,7 @@ namespace gpu {
class CommandBufferService;
class GpuScheduler;
class TransferBuffer;
+class TransferBufferManagerInterface;
namespace gles2 {
class GLES2CmdHelper;
@@ -66,6 +67,7 @@ class Display {
EGLNativeDisplayType display_id_;
bool is_initialized_;
+ scoped_ptr<gpu::TransferBufferManagerInterface> transfer_buffer_manager_;
scoped_ptr<gpu::CommandBufferService> command_buffer_;
scoped_ptr<gpu::GpuScheduler> gpu_scheduler_;
scoped_ptr<gpu::gles2::GLES2Decoder> decoder_;