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

Unified Diff: gpu/ipc/service/gpu_channel_manager.h

Issue 2814843002: gpu: GPU service scheduler. (Closed)
Patch Set: rebase Created 3 years, 8 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
Index: gpu/ipc/service/gpu_channel_manager.h
diff --git a/gpu/ipc/service/gpu_channel_manager.h b/gpu/ipc/service/gpu_channel_manager.h
index 3c11dee8e681c32fc49f728456701e34feecc589..ae304fbf8c5faac9cfbdadfadefcf274e91e031e 100644
--- a/gpu/ipc/service/gpu_channel_manager.h
+++ b/gpu/ipc/service/gpu_channel_manager.h
@@ -36,6 +36,7 @@ class GLShareGroup;
namespace gpu {
struct GpuPreferences;
class PreemptionFlag;
+class Scheduler;
class SyncPointManager;
struct SyncToken;
namespace gles2 {
@@ -62,6 +63,7 @@ class GPU_EXPORT GpuChannelManager {
GpuWatchdogThread* watchdog,
scoped_refptr<base::SingleThreadTaskRunner> task_runner,
scoped_refptr<base::SingleThreadTaskRunner> io_task_runner,
+ Scheduler* scheduler,
SyncPointManager* sync_point_manager,
GpuMemoryBufferFactory* gpu_memory_buffer_factory,
const GpuFeatureInfo& gpu_feature_info,
@@ -120,6 +122,8 @@ class GPU_EXPORT GpuChannelManager {
gl::GLShareGroup* share_group() const { return share_group_.get(); }
+ SyncPointManager* sync_point_manager() const { return sync_point_manager_; }
+
private:
void InternalDestroyGpuMemoryBuffer(gfx::GpuMemoryBufferId id, int client_id);
void InternalDestroyGpuMemoryBufferOnIO(gfx::GpuMemoryBufferId id,
@@ -145,9 +149,12 @@ class GPU_EXPORT GpuChannelManager {
GpuWatchdogThread* watchdog_;
scoped_refptr<gl::GLShareGroup> share_group_;
- scoped_refptr<gles2::MailboxManager> mailbox_manager_;
+
scoped_refptr<PreemptionFlag> preemption_flag_;
+
+ scoped_refptr<gles2::MailboxManager> mailbox_manager_;
GpuMemoryManager gpu_memory_manager_;
+ Scheduler* scheduler_;
// SyncPointManager guaranteed to outlive running MessageLoop.
SyncPointManager* sync_point_manager_;
std::unique_ptr<gles2::ProgramCache> program_cache_;

Powered by Google App Engine
This is Rietveld 408576698