Index: gpu/command_buffer/client/gpu_memory_buffer_manager.h |
diff --git a/gpu/command_buffer/client/gpu_memory_buffer_manager.h b/gpu/command_buffer/client/gpu_memory_buffer_manager.h |
index 921b42e8e34ff6fa2dde9e4593e80e6ff133e5bc..a598efe79bdcb261f31b175bd7f9f3dfeaecfd1f 100644 |
--- a/gpu/command_buffer/client/gpu_memory_buffer_manager.h |
+++ b/gpu/command_buffer/client/gpu_memory_buffer_manager.h |
@@ -10,6 +10,7 @@ |
#include "gpu/gpu_export.h" |
#include "gpu/ipc/common/surface_handle.h" |
#include "ui/gfx/geometry/size.h" |
+#include "ui/gfx/gpu_fence.h" |
#include "ui/gfx/gpu_memory_buffer.h" |
namespace gpu { |
@@ -37,6 +38,16 @@ class GPU_EXPORT GpuMemoryBufferManager { |
virtual void SetDestructionSyncToken(gfx::GpuMemoryBuffer* buffer, |
const gpu::SyncToken& sync_token) = 0; |
+ // Creates a GpuFence that can be shared with another process. |
+ virtual std::unique_ptr<gfx::GpuFence> CreateGpuFence() = 0; |
+ |
+ // Creates a GpuFence from existing handle. |
+ virtual std::unique_ptr<gfx::GpuFence> CreateGpuFenceFromHandle( |
+ const gfx::GpuFenceHandle& handle) = 0; |
+ |
+ // Returns a GpuFence instance given a ClientFence. Returns NULL on failure. |
+ virtual gfx::GpuFence* GpuFenceFromClientFence(ClientFence fence) = 0; |
+ |
protected: |
virtual ~GpuMemoryBufferManager(); |
}; |