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

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

Issue 2440093003: WIP GPU scheduler + delayed activation / tile draw
Patch Set: SignalSyncToken -> IsFenceSyncReleased Created 4 years 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 | « gpu/ipc/service/gpu_channel_unittest.cc ('k') | gpu/ipc/service/gpu_command_buffer_stub.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: gpu/ipc/service/gpu_command_buffer_stub.h
diff --git a/gpu/ipc/service/gpu_command_buffer_stub.h b/gpu/ipc/service/gpu_command_buffer_stub.h
index 91b8dfe1c36ff3978808b7af5933d2ee276e8c31..72f5c9839f3b0705544fd4bdb3bd2a591ff5ad1f 100644
--- a/gpu/ipc/service/gpu_command_buffer_stub.h
+++ b/gpu/ipc/service/gpu_command_buffer_stub.h
@@ -20,8 +20,8 @@
#include "gpu/command_buffer/common/command_buffer_id.h"
#include "gpu/command_buffer/common/constants.h"
#include "gpu/command_buffer/common/gpu_memory_allocation.h"
+#include "gpu/command_buffer/common/preemption_flag.h"
#include "gpu/command_buffer/service/command_buffer_service.h"
-#include "gpu/command_buffer/service/command_executor.h"
#include "gpu/command_buffer/service/context_group.h"
#include "gpu/gpu_export.h"
#include "gpu/ipc/common/surface_handle.h"
@@ -40,6 +40,8 @@
namespace gpu {
struct Mailbox;
struct SyncToken;
+class CommandExecutor;
+class GpuScheduler;
class SyncPointClient;
}
@@ -69,12 +71,17 @@ class GPU_EXPORT GpuCommandBufferStub
typedef base::Callback<void(const std::vector<ui::LatencyInfo>&)>
LatencyInfoCallback;
+ static gpu::CommandBufferId GetCommandBufferID(int32_t channel_id,
+ int32_t route_id);
+ static int32_t GetChannelID(gpu::CommandBufferId cmd_buffer_id);
+ static int32_t GetRouteID(gpu::CommandBufferId cmd_buffer_id);
+
static std::unique_ptr<GpuCommandBufferStub> Create(
- GpuChannel* channel,
- GpuCommandBufferStub* share_group,
- const GPUCreateCommandBufferConfig& init_params,
- int32_t route_id,
- std::unique_ptr<base::SharedMemory> shared_state_shm);
+ GpuChannel* channel,
+ GpuCommandBufferStub* share_group,
+ const GPUCreateCommandBufferConfig& init_params,
+ int32_t route_id,
+ std::unique_ptr<base::SharedMemory> shared_state_shm);
~GpuCommandBufferStub() override;
@@ -105,7 +112,6 @@ class GPU_EXPORT GpuCommandBufferStub
bool HasUnprocessedCommands();
gles2::GLES2Decoder* decoder() const { return decoder_.get(); }
- CommandExecutor* scheduler() const { return executor_.get(); }
GpuChannel* channel() const { return channel_; }
// Unique command buffer ID for this command buffer stub.
@@ -217,6 +223,7 @@ class GPU_EXPORT GpuCommandBufferStub
// are destroyed. So a raw pointer is safe.
GpuChannel* const channel_;
+ GpuScheduler* scheduler_;
// The group of contexts that share namespaces with this context.
scoped_refptr<gles2::ContextGroup> context_group_;
« no previous file with comments | « gpu/ipc/service/gpu_channel_unittest.cc ('k') | gpu/ipc/service/gpu_command_buffer_stub.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698