Index: gpu/config/gpu_info.h |
diff --git a/gpu/config/gpu_info.h b/gpu/config/gpu_info.h |
index d092c3a335c320af4b3430cb97d345fd5e75fb3a..481389355edc56d61b41c964f488ee1b0760a50f 100644 |
--- a/gpu/config/gpu_info.h |
+++ b/gpu/config/gpu_info.h |
@@ -21,6 +21,20 @@ |
namespace gpu { |
+// Result for the various Collect*Info* functions below. |
+// Fatal failures are for cases where we can't create a context at all or |
+// something, making the use of the GPU impossible. |
+// Non-fatal failures are for cases where we could gather most info, but maybe |
+// some is missing (e.g. unable to parse a version string or to detect the exact |
+// model). |
+enum CollectInfoResult { |
+ kCollectInfoNone = 0, |
+ kCollectInfoSuccess = 1, |
+ kCollectInfoNotSupported = 2, |
piman
2014/09/03 00:50:55
Do we really need to discriminate this from NonFat
Zhenyao Mo
2014/09/03 01:31:23
Done.
|
+ kCollectInfoNonFatalFailure = 3, |
+ kCollectInfoFatalFailure = 4 |
+}; |
+ |
struct GPU_EXPORT GPUInfo { |
struct GPU_EXPORT GPUDevice { |
GPUDevice(); |
@@ -52,9 +66,6 @@ struct GPU_EXPORT GPUInfo { |
return !can_lose_context && !software_rendering; |
} |
- // Whether more GPUInfo fields might be collected in the future. |
- bool finalized; |
- |
// The amount of time taken to get from the process starting to the message |
// loop being pumped. |
base::TimeDelta initialization_time; |
@@ -156,7 +167,13 @@ struct GPU_EXPORT GPUInfo { |
// Number of GPU process crashes recorded. |
int process_crash_count; |
+ // The state of whether the basic/context/DxDiagnostics info is collected and |
+ // if the collection fails or not. |
+ CollectInfoResult basic_info_state; |
+ CollectInfoResult context_info_state; |
#if defined(OS_WIN) |
+ CollectInfoResult dx_diagnostics_info_state; |
+ |
// The information returned by the DirectX Diagnostics Tool. |
DxDiagNode dx_diagnostics; |
#endif |