Index: gpu/command_buffer/service/buffer_manager.h |
diff --git a/gpu/command_buffer/service/buffer_manager.h b/gpu/command_buffer/service/buffer_manager.h |
index f2456a4166ac76dee192a45a10078994205c8a0c..bb69e7dfe0c2f2603a82f662b039868c4f0a0de4 100644 |
--- a/gpu/command_buffer/service/buffer_manager.h |
+++ b/gpu/command_buffer/service/buffer_manager.h |
@@ -38,10 +38,11 @@ class GPU_EXPORT Buffer : public base::RefCounted<Buffer> { |
GLsizeiptr size; |
GLenum access; |
void* pointer; // Pointer returned by driver. |
- scoped_refptr<gpu::Buffer> shm; // Client side mem. |
+ scoped_refptr<gpu::Buffer> shm; // Client side mem buffer. |
+ unsigned int shm_offset; // Client side mem buffer offset. |
- MappedRange(GLintptr offset, GLsizeiptr size, GLenum access, |
- void* pointer, scoped_refptr<gpu::Buffer> shm); |
+ MappedRange(GLintptr offset, GLsizeiptr size, GLenum access, void* pointer, |
+ scoped_refptr<gpu::Buffer> shm, unsigned int shm_offset); |
~MappedRange(); |
void* GetShmPointer() const; |
}; |
@@ -60,6 +61,10 @@ class GPU_EXPORT Buffer : public base::RefCounted<Buffer> { |
return usage_; |
} |
+ bool shadowed() const { |
+ return !shadow_.empty(); |
+ } |
+ |
// Gets the maximum value in the buffer for the given range interpreted as |
// the given type. Returns false if offset and count are out of range. |
// offset is in bytes. |
@@ -73,6 +78,10 @@ class GPU_EXPORT Buffer : public base::RefCounted<Buffer> { |
// Check if an offset, size range is valid for the current buffer. |
bool CheckRange(GLintptr offset, GLsizeiptr size) const; |
+ // Sets a range of this buffer's shadowed data. Returns false if offset/size |
+ // is out of range. |
+ bool SetRange(GLintptr offset, GLsizeiptr size, const GLvoid * data); |
+ |
bool IsDeleted() const { |
return deleted_; |
} |
@@ -86,8 +95,10 @@ class GPU_EXPORT Buffer : public base::RefCounted<Buffer> { |
} |
void SetMappedRange(GLintptr offset, GLsizeiptr size, GLenum access, |
- void* pointer, scoped_refptr<gpu::Buffer> shm) { |
- mapped_range_.reset(new MappedRange(offset, size, access, pointer, shm)); |
+ void* pointer, scoped_refptr<gpu::Buffer> shm, |
+ unsigned int shm_offset) { |
+ mapped_range_.reset( |
+ new MappedRange(offset, size, access, pointer, shm, shm_offset)); |
} |
void RemoveMappedRange() { |
@@ -148,8 +159,6 @@ class GPU_EXPORT Buffer : public base::RefCounted<Buffer> { |
initial_target_ = target; |
} |
- bool shadowed() const { return !shadow_.empty(); } |
- |
void MarkAsDeleted() { |
deleted_ = true; |
} |
@@ -169,11 +178,6 @@ class GPU_EXPORT Buffer : public base::RefCounted<Buffer> { |
bool use_shadow, |
bool is_client_side_array); |
- // Sets a range of data for this buffer. Returns false if the offset or size |
- // is out of range. |
- bool SetRange( |
- GLintptr offset, GLsizeiptr size, const GLvoid * data); |
- |
// Clears any cache of index ranges. |
void ClearCache(); |