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

Side by Side Diff: ui/gl/gl_context.cc

Issue 139013008: Implement support for rendering to 32-bit float textures on ES3 (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Make TexSubImage validation agree with TexImage validation Created 6 years, 10 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 unified diff | Download patch
OLDNEW
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 <string> 5 #include <string>
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/lazy_instance.h" 8 #include "base/lazy_instance.h"
9 #include "base/logging.h" 9 #include "base/logging.h"
10 #include "base/threading/thread_local.h" 10 #include "base/threading/thread_local.h"
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
59 return std::string(ext ? ext : ""); 59 return std::string(ext ? ext : "");
60 } 60 }
61 61
62 std::string GLContext::GetGLVersion() { 62 std::string GLContext::GetGLVersion() {
63 DCHECK(IsCurrent(NULL)); 63 DCHECK(IsCurrent(NULL));
64 const char *version = 64 const char *version =
65 reinterpret_cast<const char*>(glGetString(GL_VERSION)); 65 reinterpret_cast<const char*>(glGetString(GL_VERSION));
66 return std::string(version ? version : ""); 66 return std::string(version ? version : "");
67 } 67 }
68 68
69 std::string GLContext::GetGLRenderer() {
70 DCHECK(IsCurrent(NULL));
71 const char *renderer =
72 reinterpret_cast<const char*>(glGetString(GL_RENDERER));
73 return std::string(renderer ? renderer : "");
74 }
75
69 bool GLContext::HasExtension(const char* name) { 76 bool GLContext::HasExtension(const char* name) {
70 std::string extensions = GetExtensions(); 77 std::string extensions = GetExtensions();
71 extensions += " "; 78 extensions += " ";
72 79
73 std::string delimited_name(name); 80 std::string delimited_name(name);
74 delimited_name += " "; 81 delimited_name += " ";
75 82
76 return extensions.find(delimited_name) != std::string::npos; 83 return extensions.find(delimited_name) != std::string::npos;
77 } 84 }
78 85
79 const GLVersionInfo* GLContext::GetVersionInfo() { 86 const GLVersionInfo* GLContext::GetVersionInfo() {
80 if(!version_info_) { 87 if(!version_info_) {
81 std::string version = GetGLVersion(); 88 std::string version = GetGLVersion();
89 std::string renderer = GetGLRenderer();
82 version_info_ = scoped_ptr<GLVersionInfo>( 90 version_info_ = scoped_ptr<GLVersionInfo>(
83 new GLVersionInfo(version.c_str())); 91 new GLVersionInfo(version.c_str(), renderer.c_str()));
84 } 92 }
85 return version_info_.get(); 93 return version_info_.get();
86 } 94 }
87 95
88 GLShareGroup* GLContext::share_group() { 96 GLShareGroup* GLContext::share_group() {
89 return share_group_.get(); 97 return share_group_.get();
90 } 98 }
91 99
92 bool GLContext::LosesAllContextsOnContextLost() { 100 bool GLContext::LosesAllContextsOnContextLost() {
93 switch (GetGLImplementation()) { 101 switch (GetGLImplementation()) {
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after
168 : GLContext(share_group) {} 176 : GLContext(share_group) {}
169 177
170 GLContextReal::~GLContextReal() {} 178 GLContextReal::~GLContextReal() {}
171 179
172 void GLContextReal::SetCurrent(GLSurface* surface) { 180 void GLContextReal::SetCurrent(GLSurface* surface) {
173 GLContext::SetCurrent(surface); 181 GLContext::SetCurrent(surface);
174 current_real_context_.Pointer()->Set(surface ? this : NULL); 182 current_real_context_.Pointer()->Set(surface ? this : NULL);
175 } 183 }
176 184
177 } // namespace gfx 185 } // namespace gfx
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698