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

Side by Side Diff: gpu/gles2_conform_support/egl/display.cc

Issue 7205012: RendererGLContext supports reparenting a GL context. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 9 years, 6 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 "gpu/gles2_conform_support/egl/display.h" 5 #include "gpu/gles2_conform_support/egl/display.h"
6 6
7 #include <vector> 7 #include <vector>
8 #include "gpu/command_buffer/client/gles2_lib.h" 8 #include "gpu/command_buffer/client/gles2_lib.h"
9 #include "gpu/command_buffer/service/command_buffer_service.h" 9 #include "gpu/command_buffer/service/command_buffer_service.h"
10 #include "gpu/command_buffer/service/gles2_cmd_decoder.h" 10 #include "gpu/command_buffer/service/gles2_cmd_decoder.h"
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after
105 // We do not support more than one window surface. 105 // We do not support more than one window surface.
106 return EGL_NO_SURFACE; 106 return EGL_NO_SURFACE;
107 } 107 }
108 108
109 using gpu::GpuScheduler; 109 using gpu::GpuScheduler;
110 std::vector<int32> attribs; 110 std::vector<int32> attribs;
111 scoped_ptr<GpuScheduler> gpu_scheduler( 111 scoped_ptr<GpuScheduler> gpu_scheduler(
112 new GpuScheduler(command_buffer_.get(), NULL, NULL)); 112 new GpuScheduler(command_buffer_.get(), NULL, NULL));
113 if (!gpu_scheduler->Initialize( 113 if (!gpu_scheduler->Initialize(
114 win, gfx::Size(), gpu::gles2::DisallowedExtensions(), NULL, 114 win, gfx::Size(), gpu::gles2::DisallowedExtensions(), NULL,
115 attribs, NULL, 0, NULL)) 115 attribs, NULL))
116 return EGL_NO_SURFACE; 116 return EGL_NO_SURFACE;
117 117
118 command_buffer_->SetPutOffsetChangeCallback( 118 command_buffer_->SetPutOffsetChangeCallback(
119 NewCallback(gpu_scheduler.get(), &GpuScheduler::PutChanged)); 119 NewCallback(gpu_scheduler.get(), &GpuScheduler::PutChanged));
120 gpu_scheduler_.reset(gpu_scheduler.release()); 120 gpu_scheduler_.reset(gpu_scheduler.release());
121 surface_.reset(new Surface(win)); 121 surface_.reset(new Surface(win));
122 122
123 return surface_.get(); 123 return surface_.get();
124 } 124 }
125 125
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
178 } else { 178 } else {
179 DCHECK(IsValidSurface(draw)); 179 DCHECK(IsValidSurface(draw));
180 DCHECK(IsValidSurface(read)); 180 DCHECK(IsValidSurface(read));
181 DCHECK(IsValidContext(ctx)); 181 DCHECK(IsValidContext(ctx));
182 gles2::SetGLContext(context_.get()); 182 gles2::SetGLContext(context_.get());
183 } 183 }
184 return true; 184 return true;
185 } 185 }
186 186
187 } // namespace egl 187 } // namespace egl
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698