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 "ui/gl/gl_context.h" | 5 #include "ui/gl/gl_context.h" |
6 | 6 |
7 #include "base/logging.h" | 7 #include "base/logging.h" |
8 #include "base/macros.h" | 8 #include "base/macros.h" |
9 #include "base/memory/ref_counted.h" | 9 #include "base/memory/ref_counted.h" |
10 #include "base/sys_info.h" | 10 #include "base/sys_info.h" |
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
71 } // anonymous namespace | 71 } // anonymous namespace |
72 | 72 |
73 // static | 73 // static |
74 scoped_refptr<GLContext> GLContext::CreateGLContext( | 74 scoped_refptr<GLContext> GLContext::CreateGLContext( |
75 GLShareGroup* share_group, | 75 GLShareGroup* share_group, |
76 GLSurface* compatible_surface, | 76 GLSurface* compatible_surface, |
77 GpuPreference gpu_preference) { | 77 GpuPreference gpu_preference) { |
78 scoped_refptr<GLContext> context; | 78 scoped_refptr<GLContext> context; |
79 switch (GetGLImplementation()) { | 79 switch (GetGLImplementation()) { |
80 case kGLImplementationMockGL: | 80 case kGLImplementationMockGL: |
81 return scoped_refptr<GLContext>(new GLContextStub()); | 81 return scoped_refptr<GLContext>(new GLContextStub(share_group)); |
82 case kGLImplementationOSMesaGL: | 82 case kGLImplementationOSMesaGL: |
83 context = new GLContextOSMesa(share_group); | 83 context = new GLContextOSMesa(share_group); |
84 break; | 84 break; |
85 default: | 85 default: |
86 if (compatible_surface->GetHandle()) | 86 if (compatible_surface->GetHandle()) |
87 context = new GLContextEGL(share_group); | 87 context = new GLContextEGL(share_group); |
88 else | 88 else |
89 context = new GLNonOwnedContext(share_group); | 89 context = new GLNonOwnedContext(share_group); |
90 break; | 90 break; |
91 } | 91 } |
92 | 92 |
93 if (!context->Initialize(compatible_surface, gpu_preference)) | 93 if (!context->Initialize(compatible_surface, gpu_preference)) |
94 return nullptr; | 94 return nullptr; |
95 | 95 |
96 return context; | 96 return context; |
97 } | 97 } |
98 | 98 |
99 } | 99 } |
OLD | NEW |