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

Unified Diff: components/mus/gles2/command_buffer_local.cc

Issue 1610783002: mustash: gpu: implement SignalQuery in CommandBufferLocal (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 11 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
« no previous file with comments | « components/mus/gles2/command_buffer_local.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: components/mus/gles2/command_buffer_local.cc
diff --git a/components/mus/gles2/command_buffer_local.cc b/components/mus/gles2/command_buffer_local.cc
index 834722ca5bc1b43181b5992ad96011df7181e4f9..a11ccc90bb5926cb140e41f998ab8f650ea12197 100644
--- a/components/mus/gles2/command_buffer_local.cc
+++ b/components/mus/gles2/command_buffer_local.cc
@@ -23,6 +23,7 @@
#include "gpu/command_buffer/service/image_factory.h"
#include "gpu/command_buffer/service/image_manager.h"
#include "gpu/command_buffer/service/memory_tracking.h"
+#include "gpu/command_buffer/service/query_manager.h"
#include "gpu/command_buffer/service/shader_translator_cache.h"
#include "gpu/command_buffer/service/transfer_buffer_manager.h"
#include "gpu/command_buffer/service/valuebuffer_manager.h"
@@ -326,11 +327,19 @@ void CommandBufferLocal::SignalSyncPoint(uint32_t sync_point,
base::Bind(&PostTask, client_thread_task_runner_, callback));
}
-void CommandBufferLocal::SignalQuery(uint32_t query,
+void CommandBufferLocal::SignalQuery(uint32_t query_id,
const base::Closure& callback) {
DCHECK(CalledOnValidThread());
- // TODO(piman)
- NOTIMPLEMENTED();
+
+ gpu::gles2::QueryManager* query_manager =
+ driver_->GetDecoder()->GetQueryManager();
+ DCHECK(query_manager);
+
+ gpu::gles2::QueryManager::Query* query = query_manager->GetQuery(query_id);
Peng 2016/01/20 19:57:13 CommandBufferLocal::SignalQuery() is called on the
Hadi 2016/01/20 21:33:29 Done. Used gpu_state_->command_buffer_task_runner(
+ if (query)
+ query->AddCallback(callback);
+ else
+ callback.Run();
}
void CommandBufferLocal::SetLock(base::Lock* lock) {
« no previous file with comments | « components/mus/gles2/command_buffer_local.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698