summaryrefslogtreecommitdiffstats
path: root/chrome/browser/gpu_process_host.h
diff options
context:
space:
mode:
authorrlp@chromium.org <rlp@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-07-14 18:21:44 +0000
committerrlp@chromium.org <rlp@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-07-14 18:21:44 +0000
commita1009b357fbb819c1bb5f364826ae0786bbfed41 (patch)
tree23b96f427f7a0da4d6b2f6e9bb9a36dd348adf66 /chrome/browser/gpu_process_host.h
parent19fbc16c5c296ed9ef03719d01c7fd39aac1a833 (diff)
downloadchromium_src-a1009b357fbb819c1bb5f364826ae0786bbfed41.zip
chromium_src-a1009b357fbb819c1bb5f364826ae0786bbfed41.tar.gz
chromium_src-a1009b357fbb819c1bb5f364826ae0786bbfed41.tar.bz2
Collecting gpu information when the gpu process creates a channel. Adding the gpu_info into the messages sent between gpu process and browser and sending over the browser. Will do something with it in the browser in another CR.
BUG=38736 TEST=none Review URL: http://codereview.chromium.org/2857035 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52356 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/gpu_process_host.h')
-rw-r--r--chrome/browser/gpu_process_host.h10
1 files changed, 9 insertions, 1 deletions
diff --git a/chrome/browser/gpu_process_host.h b/chrome/browser/gpu_process_host.h
index 2085846..1b2beb5 100644
--- a/chrome/browser/gpu_process_host.h
+++ b/chrome/browser/gpu_process_host.h
@@ -11,6 +11,7 @@
#include "base/scoped_ptr.h"
#include "chrome/browser/browser_child_process_host.h"
#include "chrome/browser/renderer_host/resource_message_filter.h"
+#include "chrome/common/gpu_info.h"
#include "gfx/native_widget_types.h"
class ChildProcessLauncher;
@@ -46,6 +47,9 @@ class GpuProcessHost : public BrowserChildProcessHost {
void Synchronize(IPC::Message* reply,
ResourceMessageFilter* filter);
+ // Return the stored gpu_info as this class the
+ // browser's point of contact with the gpu
+ GPUInfo gpu_info() const;
private:
// Used to queue pending channel requests.
struct ChannelRequest {
@@ -78,7 +82,8 @@ class GpuProcessHost : public BrowserChildProcessHost {
void OnControlMessageReceived(const IPC::Message& message);
// Message handlers.
- void OnChannelEstablished(const IPC::ChannelHandle& channel_handle);
+ void OnChannelEstablished(const IPC::ChannelHandle& channel_handle,
+ const GPUInfo& gpu_info);
void OnSynchronizeReply();
#if defined(OS_LINUX)
void OnGetViewXID(gfx::NativeViewId id, unsigned long* xid);
@@ -103,6 +108,9 @@ class GpuProcessHost : public BrowserChildProcessHost {
bool initialized_;
bool initialized_successfully_;
+ // GPUInfo class used for collecting gpu stats
+ GPUInfo gpu_info_;
+
// These are the channel requests that we have already sent to
// the GPU process, but haven't heard back about yet.
std::queue<ChannelRequest> sent_requests_;