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

Side by Side Diff: gpu/command_buffer/client/gl_in_process_context.cc

Issue 271763002: Clean up SyncCompositorFactory context creation (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 7 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) 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 "gpu/command_buffer/client/gl_in_process_context.h" 5 #include "gpu/command_buffer/client/gl_in_process_context.h"
6 6
7 #include <set> 7 #include <set>
8 #include <utility> 8 #include <utility>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
45 const size_t kMaxTransferBufferSize = 16 * 1024 * 1024; 45 const size_t kMaxTransferBufferSize = 16 * 1024 * 1024;
46 46
47 class GLInProcessContextImpl 47 class GLInProcessContextImpl
48 : public GLInProcessContext, 48 : public GLInProcessContext,
49 public base::SupportsWeakPtr<GLInProcessContextImpl> { 49 public base::SupportsWeakPtr<GLInProcessContextImpl> {
50 public: 50 public:
51 explicit GLInProcessContextImpl(); 51 explicit GLInProcessContextImpl();
52 virtual ~GLInProcessContextImpl(); 52 virtual ~GLInProcessContextImpl();
53 53
54 bool Initialize( 54 bool Initialize(
55 scoped_refptr<gfx::GLSurface> surface, 55 gfx::GLSurface* surface,
56 bool is_offscreen, 56 bool is_offscreen,
57 bool use_global_share_group, 57 bool use_global_share_group,
58 GLInProcessContext* share_context, 58 GLInProcessContext* share_context,
59 gfx::AcceleratedWidget window, 59 gfx::AcceleratedWidget window,
60 const gfx::Size& size, 60 const gfx::Size& size,
61 const GLInProcessContextAttribs& attribs, 61 const GLInProcessContextAttribs& attribs,
62 gfx::GpuPreference gpu_preference, 62 gfx::GpuPreference gpu_preference,
63 const scoped_refptr<InProcessCommandBuffer::Service>& service); 63 const scoped_refptr<InProcessCommandBuffer::Service>& service);
64 64
65 // GLInProcessContext implementation: 65 // GLInProcessContext implementation:
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
113 } 113 }
114 114
115 void GLInProcessContextImpl::OnContextLost() { 115 void GLInProcessContextImpl::OnContextLost() {
116 context_lost_ = true; 116 context_lost_ = true;
117 if (!context_lost_callback_.is_null()) { 117 if (!context_lost_callback_.is_null()) {
118 context_lost_callback_.Run(); 118 context_lost_callback_.Run();
119 } 119 }
120 } 120 }
121 121
122 bool GLInProcessContextImpl::Initialize( 122 bool GLInProcessContextImpl::Initialize(
123 scoped_refptr<gfx::GLSurface> surface, 123 gfx::GLSurface* surface,
124 bool is_offscreen, 124 bool is_offscreen,
125 bool use_global_share_group, 125 bool use_global_share_group,
126 GLInProcessContext* share_context, 126 GLInProcessContext* share_context,
127 gfx::AcceleratedWidget window, 127 gfx::AcceleratedWidget window,
128 const gfx::Size& size, 128 const gfx::Size& size,
129 const GLInProcessContextAttribs& attribs, 129 const GLInProcessContextAttribs& attribs,
130 gfx::GpuPreference gpu_preference, 130 gfx::GpuPreference gpu_preference,
131 const scoped_refptr<InProcessCommandBuffer::Service>& service) { 131 const scoped_refptr<InProcessCommandBuffer::Service>& service) {
132 DCHECK(!use_global_share_group || !share_context); 132 DCHECK(!use_global_share_group || !share_context);
133 DCHECK(size.width() >= 0 && size.height() >= 0); 133 DCHECK(size.width() >= 0 && size.height() >= 0);
(...skipping 198 matching lines...) Expand 10 before | Expand all | Expand 10 after
332 attribs, 332 attribs,
333 gpu_preference, 333 gpu_preference,
334 scoped_refptr<InProcessCommandBuffer::Service>())) 334 scoped_refptr<InProcessCommandBuffer::Service>()))
335 return NULL; 335 return NULL;
336 336
337 return context.release(); 337 return context.release();
338 } 338 }
339 339
340 // static 340 // static
341 GLInProcessContext* GLInProcessContext::CreateWithSurface( 341 GLInProcessContext* GLInProcessContext::CreateWithSurface(
342 scoped_refptr<gfx::GLSurface> surface, 342 gfx::GLSurface* surface,
343 scoped_refptr<gpu::InProcessCommandBuffer::Service> service, 343 scoped_refptr<gpu::InProcessCommandBuffer::Service> service,
344 GLInProcessContext* share_context, 344 GLInProcessContext* share_context,
345 const GLInProcessContextAttribs& attribs, 345 const GLInProcessContextAttribs& attribs,
346 gfx::GpuPreference gpu_preference) { 346 gfx::GpuPreference gpu_preference) {
347 scoped_ptr<GLInProcessContextImpl> context( 347 scoped_ptr<GLInProcessContextImpl> context(
348 new GLInProcessContextImpl()); 348 new GLInProcessContextImpl());
349 if (!context->Initialize( 349 if (!context->Initialize(
350 surface, 350 surface,
351 surface->IsOffscreen(), 351 surface->IsOffscreen(),
352 false, 352 false,
353 share_context, 353 share_context,
354 gfx::kNullAcceleratedWidget, 354 gfx::kNullAcceleratedWidget,
355 surface->GetSize(), 355 surface->GetSize(),
356 attribs, 356 attribs,
357 gpu_preference, 357 gpu_preference,
358 service)) 358 service))
359 return NULL; 359 return NULL;
360 360
361 return context.release(); 361 return context.release();
362 } 362 }
363 363
364 } // namespace gpu 364 } // namespace gpu
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698