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

Unified Diff: content/common/gpu/gpu_command_buffer_stub.h

Issue 9289052: Adding GpuMemoryManager to track GpuCommandBufferStub visibility and last_used_time and dictate mem… (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Minor updates, working on tests Created 8 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
Index: content/common/gpu/gpu_command_buffer_stub.h
diff --git a/content/common/gpu/gpu_command_buffer_stub.h b/content/common/gpu/gpu_command_buffer_stub.h
index 8f4e84a0f092e32e70e6385c50471eb5f4bd7c9b..5e2867b266a214155e9c581ca58771d231820e6b 100644
--- a/content/common/gpu/gpu_command_buffer_stub.h
+++ b/content/common/gpu/gpu_command_buffer_stub.h
@@ -1,4 +1,3 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -13,6 +12,7 @@
#include "base/id_map.h"
#include "base/memory/weak_ptr.h"
+#include "content/common/gpu/gpu_memory_management.h"
#include "content/common/gpu/media/gpu_video_decode_accelerator.h"
#include "gpu/command_buffer/common/constants.h"
#include "gpu/command_buffer/service/command_buffer_service.h"
@@ -37,6 +37,7 @@ class GpuWatchdog;
class GpuCommandBufferStub
: public IPC::Channel::Listener,
public IPC::Message::Sender,
+ public GpuMemoryManageableCommandBufferStub,
public base::SupportsWeakPtr<GpuCommandBufferStub> {
public:
GpuCommandBufferStub(
@@ -61,6 +62,13 @@ class GpuCommandBufferStub
// IPC::Message::Sender implementation:
virtual bool Send(IPC::Message* msg) OVERRIDE;
+ // GpuMemoryManageableCommandBufferStub implementation:
+ virtual const GpuSurfaceState& surface_state() OVERRIDE;
+ virtual const std::vector<int32>& affected_surface_ids() OVERRIDE;
+ virtual void SendMemoryAllocation(
+ const GpuMemoryAllocation& allocation) OVERRIDE;
+
+
// Whether this command buffer can currently handle IPC messages.
bool IsScheduled();
@@ -141,6 +149,8 @@ class GpuCommandBufferStub
int32 route_id_;
bool software_;
uint32 last_flush_count_;
+ GpuSurfaceState surface_state_;
nduca 2012/01/31 06:53:47 Isn't there a surface_id_ on this class already? L
nduca 2012/01/31 06:53:47 The whole point of this structure is to have it be
mmocny 2012/01/31 18:54:57 Done.
mmocny 2012/01/31 18:54:57 GpuMemoryManager doesn't need to know about GLSurf
+ std::vector<int32> affected_surface_ids_;
// Identifies the window for the rendering results on the browser side.
int32 surface_id_;

Powered by Google App Engine
This is Rietveld 408576698