Index: content/public/common/gpu_memory_stats.h |
diff --git a/content/public/common/gpu_memory_stats.h b/content/public/common/gpu_memory_stats.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..5ae6e97d37884c00f846ba21c9656fb67bd8029e |
--- /dev/null |
+++ b/content/public/common/gpu_memory_stats.h |
@@ -0,0 +1,43 @@ |
+// 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. |
+ |
+#ifndef CONTENT_PUBLIC_COMMON_GPU_MEMORY_STATS_H_ |
+#define CONTENT_PUBLIC_COMMON_GPU_MEMORY_STATS_H_ |
+ |
+// Provides access to the GPU information for the system |
+// on which chrome is currently running. |
+ |
+#include <map> |
+ |
+#include "base/basictypes.h" |
+#include "base/process.h" |
+#include "content/common/content_export.h" |
+ |
+namespace content { |
+ |
+struct CONTENT_EXPORT GPUVideoMemoryUsageStats { |
+ GPUVideoMemoryUsageStats(); |
+ ~GPUVideoMemoryUsageStats(); |
+ |
+ struct CONTENT_EXPORT ProcessStats { |
+ ProcessStats(); |
+ ~ProcessStats(); |
+ |
+ // The bytes of GPU resources accessible by this process |
+ size_t video_memory; |
+ |
+ // Set to true if this process' GPU resource count is inflated because |
+ // it is counting other processes' resources (e.g, the GPU process has |
+ // duplicate set to true because it is the aggregate of all processes) |
+ bool has_duplicates; |
+ }; |
+ typedef std::map<base::ProcessId, ProcessStats> ProcessMap; |
+ |
+ // A map of processes to their GPU resource consumption |
+ ProcessMap process_map; |
+}; |
+ |
+} // namespace content |
+ |
+#endif // CONTENT_PUBLIC_COMMON_GPU_MEMORY_STATS_H_ |