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

Unified Diff: gpu/ipc/command_buffer_proxy.h

Issue 10510013: GPU: Adding sync points for cross-channel synchronization (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: protected destructor Created 8 years, 6 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
Index: gpu/ipc/command_buffer_proxy.h
diff --git a/gpu/ipc/command_buffer_proxy.h b/gpu/ipc/command_buffer_proxy.h
index 4f53fb0fbff1d422efd9da78eca42e1f39123843..3907a0ec83bdb327c13252d8893975a91caa601c 100644
--- a/gpu/ipc/command_buffer_proxy.h
+++ b/gpu/ipc/command_buffer_proxy.h
@@ -37,6 +37,17 @@ class GPU_EXPORT CommandBufferProxy : public gpu::CommandBuffer {
virtual bool DiscardBackbuffer() = 0;
virtual bool EnsureBackbuffer() = 0;
+ // Inserts a sync point, returning its ID. This is handled on the IO thread,
apatrick_chromium 2012/06/05 18:44:15 nit: IO thread of the GPU process
piman 2012/06/05 20:09:50 Done.
+ // and so should be relatively fast, but its effect is ordered wrt other
+ // messages (in particular, Flush). Sync point IDs are global and can be used
+ // for cross-channel synchronization.
+ virtual uint32 InsertSyncPoint() = 0;
+
+ // Makes this command buffer wait on a sync point. This command buffer will be
+ // unscheduled until the command buffer that inserted that sync point reaches
+ // it, or gets destroyed.
+ virtual void WaitSyncPoint(uint32) = 0;
+
// Register a callback to invoke whenever we recieve a new memory allocation.
virtual void SetMemoryAllocationChangedCallback(
const base::Callback<void(const GpuMemoryAllocationForRenderer&)>&

Powered by Google App Engine
This is Rietveld 408576698