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

Unified Diff: content/common/gpu/gpu_command_buffer_stub.h

Issue 7458010: Revert 93066 - Execute all GL commands up to the put offset reported by a each flush.This means g... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 9 years, 5 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « content/common/gpu/gpu_channel.cc ('k') | content/common/gpu/gpu_command_buffer_stub.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/common/gpu/gpu_command_buffer_stub.h
===================================================================
--- content/common/gpu/gpu_command_buffer_stub.h (revision 93137)
+++ content/common/gpu/gpu_command_buffer_stub.h (working copy)
@@ -51,9 +51,6 @@
// IPC::Message::Sender implementation:
virtual bool Send(IPC::Message* msg);
- // Whether this command buffer can currently handle IPC messages.
- bool IsScheduled();
-
// Get the GLContext associated with this object.
gpu::GpuScheduler* scheduler() const { return scheduler_.get(); }
@@ -90,6 +87,10 @@
void AcceleratedSurfaceBuffersSwapped(uint64 swap_buffers_count);
#endif // defined(OS_MACOSX) || defined(TOUCH_UI)
+ // Called when the command buffer was destroyed, and the stub should now
+ // unblock itself and handle pending messages.
+ void CommandBufferWasDestroyed();
+
// Register a callback to be Run() whenever the underlying scheduler receives
// a set_token() call. The callback will be Run() with the just-set token as
// its only parameter. Multiple callbacks may be registered.
@@ -109,7 +110,6 @@
uint32 flush_count,
IPC::Message* reply_message);
void OnAsyncFlush(int32 put_offset, uint32 flush_count);
- void OnRescheduled();
void OnCreateTransferBuffer(int32 size,
int32 id_request,
IPC::Message* reply_message);
@@ -126,6 +126,8 @@
void OnSwapBuffers();
void OnCommandProcessed();
+ void HandleDeferredMessages();
+ void OnScheduled();
void OnParseError();
#if defined(OS_MACOSX)
@@ -162,6 +164,7 @@
scoped_ptr<gpu::CommandBufferService> command_buffer_;
scoped_ptr<gpu::GpuScheduler> scheduler_;
+ std::queue<IPC::Message*> deferred_messages_;
std::vector<base::Callback<void(int32)> > set_token_callbacks_;
// SetParent may be called before Initialize, in which case we need to keep
« no previous file with comments | « content/common/gpu/gpu_channel.cc ('k') | content/common/gpu/gpu_command_buffer_stub.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698