Index: gpu/command_buffer/client/gpu_control.h |
diff --git a/gpu/command_buffer/client/gpu_control.h b/gpu/command_buffer/client/gpu_control.h |
index a56bd516fc570a7015ee9c1c9d45c16c12779adf..2b303b3b4d58ced50269d00d2598e29c248dcf4d 100644 |
--- a/gpu/command_buffer/client/gpu_control.h |
+++ b/gpu/command_buffer/client/gpu_control.h |
@@ -17,6 +17,10 @@ |
extern "C" typedef struct _ClientBuffer* ClientBuffer; |
+namespace base { |
+class Lock; |
+} |
+ |
namespace gfx { |
class GpuMemoryBuffer; |
} |
@@ -75,6 +79,12 @@ class GPU_EXPORT GpuControl { |
// returns a stream identifier. |
virtual uint32_t CreateStreamTexture(uint32_t texture_id) = 0; |
+ // Sets a lock this will be held on every callback from the GPU |
+ // implementation. This lock must be set and must be held on every call into |
+ // the GPU implementation if it is to be used from multiple threads. This |
+ // may not be supported with all implementations. |
+ virtual void SetLock(base::Lock*) = 0; |
+ |
private: |
DISALLOW_COPY_AND_ASSIGN(GpuControl); |
}; |