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

Side by Side Diff: mojo/services/gles2/gpu_impl.cc

Issue 769173002: Move native_viewport and gles2 service impls to //services (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 6 years 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
« no previous file with comments | « mojo/services/gles2/gpu_impl.h ('k') | mojo/services/gles2/mojo_buffer_backing.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "mojo/services/gles2/gpu_impl.h"
6
7 #include "gpu/command_buffer/service/mailbox_manager.h"
8 #include "gpu/command_buffer/service/mailbox_manager_impl.h"
9 #include "gpu/command_buffer/service/sync_point_manager.h"
10 #include "mojo/converters/geometry/geometry_type_converters.h"
11 #include "mojo/services/gles2/command_buffer_driver.h"
12 #include "mojo/services/gles2/command_buffer_impl.h"
13 #include "ui/gl/gl_share_group.h"
14 #include "ui/gl/gl_surface.h"
15
16 namespace mojo {
17
18 GpuImpl::State::State()
19 : control_thread_("gpu_command_buffer_control"),
20 sync_point_manager_(new gpu::SyncPointManager),
21 share_group_(new gfx::GLShareGroup),
22 mailbox_manager_(new gpu::gles2::MailboxManagerImpl) {
23 control_thread_.Start();
24 }
25
26 GpuImpl::State::~State() {
27 }
28
29 GpuImpl::GpuImpl(InterfaceRequest<Gpu> request,
30 const scoped_refptr<State>& state)
31 : binding_(this, request.Pass()), state_(state) {
32 }
33
34 GpuImpl::~GpuImpl() {
35 }
36
37 void GpuImpl::CreateOnscreenGLES2Context(
38 uint64_t native_viewport_id,
39 SizePtr size,
40 InterfaceRequest<CommandBuffer> request,
41 ViewportParameterListenerPtr listener) {
42 gfx::AcceleratedWidget widget = bit_cast<gfx::AcceleratedWidget>(
43 static_cast<uintptr_t>(native_viewport_id));
44 new CommandBufferImpl(
45 request.Pass(), listener.Pass(), state_->control_task_runner(),
46 state_->sync_point_manager(),
47 make_scoped_ptr(new CommandBufferDriver(
48 widget, size.To<gfx::Size>(), state_->share_group(),
49 state_->mailbox_manager(), state_->sync_point_manager())));
50 }
51
52 void GpuImpl::CreateOffscreenGLES2Context(
53 InterfaceRequest<CommandBuffer> request) {
54 new CommandBufferImpl(request.Pass(), ViewportParameterListenerPtr(),
55 state_->control_task_runner(),
56 state_->sync_point_manager(),
57 make_scoped_ptr(new CommandBufferDriver(
58 state_->share_group(), state_->mailbox_manager(),
59 state_->sync_point_manager())));
60 }
61
62 } // namespace mojo
OLDNEW
« no previous file with comments | « mojo/services/gles2/gpu_impl.h ('k') | mojo/services/gles2/mojo_buffer_backing.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698