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

Unified Diff: webkit/gpu/webgraphicscontext3d_in_process_command_buffer_impl.cc

Issue 8586048: base::Bind() conversion for remaining GPU files. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase Created 9 years, 1 month 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « gpu/gles2_conform_support/egl/display.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: webkit/gpu/webgraphicscontext3d_in_process_command_buffer_impl.cc
diff --git a/webkit/gpu/webgraphicscontext3d_in_process_command_buffer_impl.cc b/webkit/gpu/webgraphicscontext3d_in_process_command_buffer_impl.cc
index 42fa3ef45aac3bab6592410970ae6ba0e1f3a970..dd5b5b4096b166abbd868f912afc2768796ab097 100644
--- a/webkit/gpu/webgraphicscontext3d_in_process_command_buffer_impl.cc
+++ b/webkit/gpu/webgraphicscontext3d_in_process_command_buffer_impl.cc
@@ -15,13 +15,16 @@
#include <algorithm>
#include <set>
-#include "base/string_tokenizer.h"
+#include "base/bind.h"
+#include "base/bind_helpers.h"
+#include "base/callback.h"
#include "base/command_line.h"
#include "base/lazy_instance.h"
#include "base/logging.h"
-#include "base/message_loop.h"
#include "base/memory/singleton.h"
+#include "base/message_loop.h"
#include "base/metrics/histogram.h"
+#include "base/string_tokenizer.h"
#include "base/synchronization/lock.h"
#include "gpu/command_buffer/client/gles2_lib.h"
#include "gpu/command_buffer/client/gles2_implementation.h"
@@ -137,9 +140,9 @@ class GLInProcessContext : public base::SupportsWeakPtr<GLInProcessContext> {
// Provides a callback that will be invoked when SwapBuffers has completed
// service side.
- void SetSwapBuffersCallback(Callback0::Type* callback);
+ void SetSwapBuffersCallback(const base::Closure& callback);
- void SetContextLostCallback(Callback0::Type* callback);
+ void SetContextLostCallback(const base::Closure& callback);
// Set the current GLInProcessContext for the calling thread.
static bool MakeCurrent(GLInProcessContext* context);
@@ -183,8 +186,8 @@ class GLInProcessContext : public base::SupportsWeakPtr<GLInProcessContext> {
void OnContextLost();
base::WeakPtr<GLInProcessContext> parent_;
- scoped_ptr<Callback0::Type> swap_buffers_callback_;
- scoped_ptr<Callback0::Type> context_lost_callback_;
+ base::Closure swap_buffers_callback_;
+ base::Closure context_lost_callback_;
uint32 parent_texture_id_;
scoped_ptr<CommandBufferService> command_buffer_;
scoped_ptr< ::gpu::GpuScheduler> gpu_scheduler_;
@@ -323,12 +326,12 @@ void GLInProcessContext::DeleteParentTexture(uint32 texture) {
gles2_implementation_->DeleteTextures(1, &texture);
}
-void GLInProcessContext::SetSwapBuffersCallback(Callback0::Type* callback) {
- swap_buffers_callback_.reset(callback);
+void GLInProcessContext::SetSwapBuffersCallback(const base::Closure& callback) {
+ swap_buffers_callback_ = callback;
}
-void GLInProcessContext::SetContextLostCallback(Callback0::Type* callback) {
- context_lost_callback_.reset(callback);
+void GLInProcessContext::SetContextLostCallback(const base::Closure& callback) {
+ context_lost_callback_ = callback;
}
bool GLInProcessContext::MakeCurrent(GLInProcessContext* context) {
@@ -519,7 +522,7 @@ bool GLInProcessContext::Initialize(bool onscreen,
}
command_buffer_->SetPutOffsetChangeCallback(
- NewCallback(this, &GLInProcessContext::PumpCommands));
+ base::Bind(&GLInProcessContext::PumpCommands, base::Unretained(this)));
// Create the GLES2 helper, which writes the command buffer protocol.
gles2_helper_.reset(new GLES2CmdHelper(command_buffer_.get()));
@@ -585,13 +588,13 @@ void GLInProcessContext::Destroy() {
}
void GLInProcessContext::OnSwapBuffers() {
- if (swap_buffers_callback_.get())
- swap_buffers_callback_->Run();
+ if (!swap_buffers_callback_.is_null())
+ swap_buffers_callback_.Run();
}
void GLInProcessContext::OnContextLost() {
- if (context_lost_callback_.get())
- context_lost_callback_->Run();
+ if (!context_lost_callback_.is_null())
+ context_lost_callback_.Run();
}
WebGraphicsContext3DInProcessCommandBufferImpl::
@@ -602,7 +605,7 @@ WebGraphicsContext3DInProcessCommandBufferImpl::
#if defined(OS_MACOSX)
plugin_handle_(NULL),
#endif // defined(OS_MACOSX)
- context_lost_callback_(0),
+ context_lost_callback_(NULL),
context_lost_reason_(GL_NO_ERROR),
cached_width_(0),
cached_height_(0),
@@ -685,9 +688,9 @@ bool WebGraphicsContext3DInProcessCommandBufferImpl::initialize(
gl_->EnableFeatureCHROMIUM("webgl_enable_glsl_webgl_validation");
context_->SetContextLostCallback(
- NewCallback(
- this,
- &WebGraphicsContext3DInProcessCommandBufferImpl::OnContextLost));
+ base::Bind(
+ &WebGraphicsContext3DInProcessCommandBufferImpl::OnContextLost,
+ base::Unretained(this)));
// Set attributes_ from created offscreen context.
{
« no previous file with comments | « gpu/gles2_conform_support/egl/display.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698