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

Unified Diff: gpu/command_buffer/client/buffer_tracker.h

Issue 706173005: Enable asynchronous glReadPixels on Windows. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Add mechanism to propagate service-side glMapBuffer errors + tests. Created 6 years, 1 month 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/command_buffer/client/buffer_tracker.h
diff --git a/gpu/command_buffer/client/buffer_tracker.h b/gpu/command_buffer/client/buffer_tracker.h
index 33bd94b04561b74640f81579987f741c45a9b254..371395625e41caacc4c22528ef880de6e185287c 100644
--- a/gpu/command_buffer/client/buffer_tracker.h
+++ b/gpu/command_buffer/client/buffer_tracker.h
@@ -28,12 +28,14 @@ class GLES2_IMPL_EXPORT BufferTracker {
unsigned int size,
int32 shm_id,
uint32 shm_offset,
- void* address)
+ void* address,
+ unsigned int metadata_size)
: id_(id),
size_(size),
shm_id_(shm_id),
shm_offset_(shm_offset),
address_(address),
+ metadata_size_(metadata_size),
mapped_(false),
last_usage_token_(0),
last_async_upload_token_(0) {
@@ -59,6 +61,22 @@ class GLES2_IMPL_EXPORT BufferTracker {
return address_;
}
+ unsigned int metadata_size() const {
+ return metadata_size_;
+ }
+
+ int32 metadata_shm_id() const {
+ return shm_id_;
+ }
+
+ uint32 metadata_shm_offset() const {
+ return shm_offset_ + size_;
+ }
+
+ void* metadata_address() const {
+ return static_cast<uint8*>(address_) + size_;
+ }
+
void set_mapped(bool mapped) {
mapped_ = mapped;
}
@@ -92,6 +110,7 @@ class GLES2_IMPL_EXPORT BufferTracker {
int32 shm_id_;
uint32 shm_offset_;
void* address_;
+ unsigned int metadata_size_;
bool mapped_;
int32 last_usage_token_;
GLuint last_async_upload_token_;
@@ -100,7 +119,7 @@ class GLES2_IMPL_EXPORT BufferTracker {
BufferTracker(MappedMemoryManager* manager);
~BufferTracker();
- Buffer* CreateBuffer(GLuint id, GLsizeiptr size);
+ Buffer* CreateBuffer(GLuint id, GLsizeiptr size, GLsizeiptr metadata_size);
Buffer* GetBuffer(GLuint id);
void RemoveBuffer(GLuint id);
« no previous file with comments | « no previous file | gpu/command_buffer/client/buffer_tracker.cc » ('j') | gpu/command_buffer/client/mapped_memory.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698