OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "content/gpu/gpu_info_collector.h" | 5 #include "gpu/config/gpu_info_collector.h" |
6 | 6 |
7 #include <string> | 7 #include <string> |
8 #include <vector> | 8 #include <vector> |
9 | 9 |
10 #include "base/debug/trace_event.h" | 10 #include "base/debug/trace_event.h" |
11 #include "base/logging.h" | 11 #include "base/logging.h" |
12 #include "base/memory/scoped_ptr.h" | 12 #include "base/memory/scoped_ptr.h" |
13 #include "base/string_number_conversions.h" | 13 #include "base/string_number_conversions.h" |
14 #include "base/strings/string_piece.h" | 14 #include "base/strings/string_piece.h" |
15 #include "base/strings/string_split.h" | 15 #include "base/strings/string_split.h" |
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
70 std::vector<std::string> pieces; | 70 std::vector<std::string> pieces; |
71 base::SplitString(sub_string, '.', &pieces); | 71 base::SplitString(sub_string, '.', &pieces); |
72 if (pieces.size() >= 2) | 72 if (pieces.size() >= 2) |
73 return pieces[0] + "." + pieces[1]; | 73 return pieces[0] + "." + pieces[1]; |
74 } | 74 } |
75 return std::string(); | 75 return std::string(); |
76 } | 76 } |
77 | 77 |
78 } // namespace anonymous | 78 } // namespace anonymous |
79 | 79 |
80 namespace gpu_info_collector { | 80 namespace gpu { |
81 | 81 |
82 bool CollectGraphicsInfoGL(content::GPUInfo* gpu_info) { | 82 bool CollectGraphicsInfoGL(GPUInfo* gpu_info) { |
83 TRACE_EVENT0("startup", "gpu_info_collector::CollectGraphicsInfoGL"); | 83 TRACE_EVENT0("startup", "gpu_info_collector::CollectGraphicsInfoGL"); |
84 if (!gfx::GLSurface::InitializeOneOff()) { | 84 if (!gfx::GLSurface::InitializeOneOff()) { |
85 LOG(ERROR) << "gfx::GLSurface::InitializeOneOff() failed"; | 85 LOG(ERROR) << "gfx::GLSurface::InitializeOneOff() failed"; |
86 return false; | 86 return false; |
87 } | 87 } |
88 | 88 |
89 scoped_refptr<gfx::GLSurface> surface(InitializeGLSurface()); | 89 scoped_refptr<gfx::GLSurface> surface(InitializeGLSurface()); |
90 if (!surface) | 90 if (!surface) |
91 return false; | 91 return false; |
92 | 92 |
(...skipping 11 matching lines...) Expand all Loading... |
104 context->ReleaseCurrent(surface.get()); | 104 context->ReleaseCurrent(surface.get()); |
105 | 105 |
106 gpu_info->gl_version = GetVersionFromString(gpu_info->gl_version_string); | 106 gpu_info->gl_version = GetVersionFromString(gpu_info->gl_version_string); |
107 std::string glsl_version = GetVersionFromString(glsl_version_string); | 107 std::string glsl_version = GetVersionFromString(glsl_version_string); |
108 gpu_info->pixel_shader_version = glsl_version; | 108 gpu_info->pixel_shader_version = glsl_version; |
109 gpu_info->vertex_shader_version = glsl_version; | 109 gpu_info->vertex_shader_version = glsl_version; |
110 | 110 |
111 return CollectDriverInfoGL(gpu_info); | 111 return CollectDriverInfoGL(gpu_info); |
112 } | 112 } |
113 | 113 |
114 void MergeGPUInfoGL(content::GPUInfo* basic_gpu_info, | 114 void MergeGPUInfoGL(GPUInfo* basic_gpu_info, |
115 const content::GPUInfo& context_gpu_info) { | 115 const GPUInfo& context_gpu_info) { |
116 DCHECK(basic_gpu_info); | 116 DCHECK(basic_gpu_info); |
117 basic_gpu_info->gl_renderer = context_gpu_info.gl_renderer; | 117 basic_gpu_info->gl_renderer = context_gpu_info.gl_renderer; |
118 basic_gpu_info->gl_vendor = context_gpu_info.gl_vendor; | 118 basic_gpu_info->gl_vendor = context_gpu_info.gl_vendor; |
119 basic_gpu_info->gl_version_string = context_gpu_info.gl_version_string; | 119 basic_gpu_info->gl_version_string = context_gpu_info.gl_version_string; |
120 basic_gpu_info->gl_extensions = context_gpu_info.gl_extensions; | 120 basic_gpu_info->gl_extensions = context_gpu_info.gl_extensions; |
121 basic_gpu_info->gl_version = context_gpu_info.gl_version; | 121 basic_gpu_info->gl_version = context_gpu_info.gl_version; |
122 basic_gpu_info->pixel_shader_version = | 122 basic_gpu_info->pixel_shader_version = |
123 context_gpu_info.pixel_shader_version; | 123 context_gpu_info.pixel_shader_version; |
124 basic_gpu_info->vertex_shader_version = | 124 basic_gpu_info->vertex_shader_version = |
125 context_gpu_info.vertex_shader_version; | 125 context_gpu_info.vertex_shader_version; |
126 | 126 |
127 if (!context_gpu_info.driver_vendor.empty()) | 127 if (!context_gpu_info.driver_vendor.empty()) |
128 basic_gpu_info->driver_vendor = context_gpu_info.driver_vendor; | 128 basic_gpu_info->driver_vendor = context_gpu_info.driver_vendor; |
129 if (!context_gpu_info.driver_version.empty()) | 129 if (!context_gpu_info.driver_version.empty()) |
130 basic_gpu_info->driver_version = context_gpu_info.driver_version; | 130 basic_gpu_info->driver_version = context_gpu_info.driver_version; |
131 | 131 |
132 basic_gpu_info->can_lose_context = context_gpu_info.can_lose_context; | 132 basic_gpu_info->can_lose_context = context_gpu_info.can_lose_context; |
133 basic_gpu_info->sandboxed = context_gpu_info.sandboxed; | 133 basic_gpu_info->sandboxed = context_gpu_info.sandboxed; |
134 basic_gpu_info->gpu_accessible = context_gpu_info.gpu_accessible; | 134 basic_gpu_info->gpu_accessible = context_gpu_info.gpu_accessible; |
135 basic_gpu_info->finalized = context_gpu_info.finalized; | 135 basic_gpu_info->finalized = context_gpu_info.finalized; |
136 basic_gpu_info->initialization_time = context_gpu_info.initialization_time; | 136 basic_gpu_info->initialization_time = context_gpu_info.initialization_time; |
137 } | 137 } |
138 | 138 |
139 } // namespace gpu_info_collector | 139 } // namespace gpu |
140 | 140 |
OLD | NEW |